From 72ad78304779d1b6283f30e378071393621f3ea3 Mon Sep 17 00:00:00 2001 From: Dima Livshits Date: Thu, 26 Oct 2023 10:56:05 +0300 Subject: [PATCH] feat: no zalando --- .depcheckrc | 7 - .eleventyignore | 1 - .eslintrc.json | 10 +- .github/workflows/ci.yaml | 67 +- .gitignore | 99 +- .prettierrc.json | 1 + .releaserc.json | 17 - .yarn/releases/yarn-4.0.1.cjs | 893 ++ .yarnrc.yml | 7 + LICENSE | 2 +- README.md | 368 +- dark.png | Bin 0 -> 288932 bytes data/android/2022-01.csv | 48 - data/backend/2021-07.csv | 49 - data/backend/2022-01.csv | 77 - data/backend/2023-10.csv | 113 - data/ios/2021-06.csv | 94 - data/isec/2022-07.csv | 89 - data/js/2021-06.csv | 45 - data/js/2021-07.csv | 46 - data/js/2022-07.csv | 60 - data/js/2023-07.csv | 75 - data/js/2023-09.csv | 76 - data/js/2023-10-17.csv | 79 - data/js/2023-10-23.csv | 85 - data/ops/2022-07.csv | 97 - data/qa/2021-12.csv | 65 - data/qa/2023-02.csv | 75 - data/qa/2023-07.csv | 76 - img/radar.png | Bin 516216 -> 0 bytes jest.config.json | 74 +- light.png | Bin 0 -> 271997 bytes package.json | 112 +- scripts/build.js | 25 + scripts/dev.js | 7 + scripts/utils.js | 41 + src/main/js/cli.mjs | 62 - src/main/js/constants.js | 5 - src/main/js/generator/.eleventy.cjs | 80 - src/main/js/generator/index.js | 165 - src/main/js/generator/markdown.js | 46 - src/main/js/index.d.ts | 12 - src/main/js/index.js | 154 - src/main/js/parser/csv.js | 53 - src/main/js/parser/index.js | 101 - src/main/js/parser/json.js | 8 - src/main/js/parser/validator.js | 81 - src/main/js/parser/yaml.js | 12 - src/main/js/util.js | 21 - src/main/{tpl/assets => radar}/favicon.ico | Bin src/main/radar/radar.android.json | 248 + src/main/radar/radar.backend.json | 696 ++ src/main/radar/radar.ios.json | 570 ++ src/main/radar/radar.isec.json | 514 + src/main/radar/radar.js.json | 525 + src/main/radar/radar.json | 70 + src/main/radar/radar.ops.json | 584 ++ src/main/radar/radar.qa.json | 451 + src/main/resources/radar-schema.json | 166 + src/main/resources/webapp/next-env.d.ts | 5 + src/main/resources/webapp/next.config.js | 12 + src/main/resources/webapp/package.json | 21 + .../webapp/src/app/[...name]/page.tsx | 136 + src/main/resources/webapp/src/app/globals.css | 107 + src/main/resources/webapp/src/app/layout.tsx | 15 + src/main/resources/webapp/src/app/page.tsx | 26 + src/main/resources/webapp/src/ui/index.ts | 3 + .../resources/webapp/src/ui/item/Item.tsx | 20 + .../resources/webapp/src/ui/item/index.ts | 1 + .../webapp/src/ui/item/item.module.css | 11 + .../resources/webapp/src/ui/scopes/Scopes.tsx | 38 + .../resources/webapp/src/ui/scopes/index.ts | 1 + .../webapp/src/ui/scopes/scopes.module.css | 83 + .../resources/webapp/src/ui/sectors/Radar.tsx | 59 + .../webapp/src/ui/sectors/Sectors.tsx | 30 + .../resources/webapp/src/ui/sectors/Table.tsx | 53 + .../resources/webapp/src/ui/sectors/index.ts | 1 + .../webapp/src/ui/sectors/radar.module.css | 6 + .../webapp/src/ui/sectors/sectors.module.css | 11 + .../webapp/src/ui/sectors/table.module.css | 33 + src/main/resources/webapp/tsconfig.json | 33 + src/main/server/index.js | 17 - src/main/tpl/_data/settings.json | 17 - src/main/tpl/_includes/footer.njk | 6 - src/main/tpl/_includes/legend.njk | 47 - src/main/tpl/_layouts/entries.njk | 5 - src/main/tpl/_layouts/page.njk | 15 - src/main/tpl/_layouts/radar.njk | 23 - src/main/tpl/_layouts/redirect.njk | 4 - src/main/tpl/_layouts/root.njk | 97 - src/main/tpl/_layouts/table.njk | 104 - src/main/tpl/assets/radar.css | 13 - src/main/tpl/assets/radar.js | 499 - src/main/tpl/entries/entries.11tydata.json | 4 - src/main/tpl/entries/q1/q1.11tydata.json | 3 - src/main/tpl/entries/q2/q2.11tydata.json | 3 - src/main/tpl/entries/q3/q3.11tydata.json | 3 - src/main/tpl/entries/q4/q4.11tydata.json | 3 - src/main/ts/api/arc.ts | 3 + src/main/ts/api/index.ts | 2 + src/main/ts/api/pie.ts | 6 + src/main/ts/api/radar.ts | 30 + src/main/ts/api/statuses-radius.ts | 12 + src/main/ts/api/svg-radar-size.ts | 7 + src/main/ts/api/svg-radar.ts | 19 + src/main/ts/api/svg-sector-size.ts | 4 + src/main/ts/api/svg-sector-status-items.ts | 54 + src/main/ts/api/svg-sector-statuses.ts | 70 + src/main/ts/api/svg-sectors-pies.ts | 5 + src/main/ts/api/svg-sectors.ts | 81 + src/main/ts/bin.ts | 154 + src/main/ts/index.ts | 2 + src/main/ts/types/Item.ts | 7 + src/main/ts/types/Radar.ts | 25 + src/main/ts/types/Scope.ts | 8 + src/main/ts/types/Sector.ts | 6 + src/main/ts/types/Status.ts | 7 + src/main/ts/types/SvgItem.ts | 8 + src/main/ts/types/SvgSector.ts | 22 + src/main/ts/types/SvgStatus.ts | 17 + src/main/ts/types/index.ts | 8 + .../__snapshots__/generator-markdown.mjs.snap | 26 - src/test/js/__snapshots__/reader.js.snap | 215 - src/test/js/__snapshots__/run.mjs.snap | 363 - src/test/js/generator-markdown.mjs | 69 - src/test/js/index.js | 7 - src/test/js/reader.js | 30 - src/test/js/run.mjs | 111 - src/test/js/validator.js | 104 - src/test/stub/data/js/test.json | 49 - src/test/stub/data/js/test.yml | 43 - src/test/stub/data2/ios/test.yml | 39 - src/test/stub/data2/js/test.json | 49 - src/test/stub/invalid.csv | 18 - src/test/stub/test.csv | 28 - src/test/stub/test.json | 49 - src/test/stub/test.yml | 39 - src/test/stub/test2.csv | 27 - src/test/stub/test2.json | 49 - src/test/stub/test2.yml | 40 - src/test/tpl/_includes/footer.njk | 3 - tsconfig.cjs.json | 18 + tsconfig.esm.json | 15 + tsconfig.json | 30 + yarn.lock | 8654 +++++++---------- 145 files changed, 9836 insertions(+), 9968 deletions(-) delete mode 100644 .depcheckrc delete mode 100644 .eleventyignore create mode 100644 .prettierrc.json delete mode 100644 .releaserc.json create mode 100755 .yarn/releases/yarn-4.0.1.cjs create mode 100644 .yarnrc.yml create mode 100644 dark.png delete mode 100644 data/android/2022-01.csv delete mode 100644 data/backend/2021-07.csv delete mode 100644 data/backend/2022-01.csv delete mode 100644 data/backend/2023-10.csv delete mode 100644 data/ios/2021-06.csv delete mode 100644 data/isec/2022-07.csv delete mode 100644 data/js/2021-06.csv delete mode 100644 data/js/2021-07.csv delete mode 100644 data/js/2022-07.csv delete mode 100644 data/js/2023-07.csv delete mode 100644 data/js/2023-09.csv delete mode 100644 data/js/2023-10-17.csv delete mode 100644 data/js/2023-10-23.csv delete mode 100644 data/ops/2022-07.csv delete mode 100644 data/qa/2021-12.csv delete mode 100644 data/qa/2023-02.csv delete mode 100644 data/qa/2023-07.csv delete mode 100644 img/radar.png create mode 100644 light.png create mode 100644 scripts/build.js create mode 100644 scripts/dev.js create mode 100644 scripts/utils.js delete mode 100755 src/main/js/cli.mjs delete mode 100644 src/main/js/constants.js delete mode 100644 src/main/js/generator/.eleventy.cjs delete mode 100644 src/main/js/generator/index.js delete mode 100644 src/main/js/generator/markdown.js delete mode 100644 src/main/js/index.d.ts delete mode 100644 src/main/js/index.js delete mode 100644 src/main/js/parser/csv.js delete mode 100644 src/main/js/parser/index.js delete mode 100644 src/main/js/parser/json.js delete mode 100644 src/main/js/parser/validator.js delete mode 100644 src/main/js/parser/yaml.js delete mode 100644 src/main/js/util.js rename src/main/{tpl/assets => radar}/favicon.ico (100%) create mode 100644 src/main/radar/radar.android.json create mode 100644 src/main/radar/radar.backend.json create mode 100644 src/main/radar/radar.ios.json create mode 100644 src/main/radar/radar.isec.json create mode 100644 src/main/radar/radar.js.json create mode 100644 src/main/radar/radar.json create mode 100644 src/main/radar/radar.ops.json create mode 100644 src/main/radar/radar.qa.json create mode 100644 src/main/resources/radar-schema.json create mode 100644 src/main/resources/webapp/next-env.d.ts create mode 100644 src/main/resources/webapp/next.config.js create mode 100644 src/main/resources/webapp/package.json create mode 100644 src/main/resources/webapp/src/app/[...name]/page.tsx create mode 100644 src/main/resources/webapp/src/app/globals.css create mode 100644 src/main/resources/webapp/src/app/layout.tsx create mode 100644 src/main/resources/webapp/src/app/page.tsx create mode 100644 src/main/resources/webapp/src/ui/index.ts create mode 100644 src/main/resources/webapp/src/ui/item/Item.tsx create mode 100644 src/main/resources/webapp/src/ui/item/index.ts create mode 100644 src/main/resources/webapp/src/ui/item/item.module.css create mode 100644 src/main/resources/webapp/src/ui/scopes/Scopes.tsx create mode 100644 src/main/resources/webapp/src/ui/scopes/index.ts create mode 100644 src/main/resources/webapp/src/ui/scopes/scopes.module.css create mode 100644 src/main/resources/webapp/src/ui/sectors/Radar.tsx create mode 100644 src/main/resources/webapp/src/ui/sectors/Sectors.tsx create mode 100644 src/main/resources/webapp/src/ui/sectors/Table.tsx create mode 100644 src/main/resources/webapp/src/ui/sectors/index.ts create mode 100644 src/main/resources/webapp/src/ui/sectors/radar.module.css create mode 100644 src/main/resources/webapp/src/ui/sectors/sectors.module.css create mode 100644 src/main/resources/webapp/src/ui/sectors/table.module.css create mode 100644 src/main/resources/webapp/tsconfig.json delete mode 100644 src/main/server/index.js delete mode 100644 src/main/tpl/_data/settings.json delete mode 100644 src/main/tpl/_includes/footer.njk delete mode 100644 src/main/tpl/_includes/legend.njk delete mode 100644 src/main/tpl/_layouts/entries.njk delete mode 100644 src/main/tpl/_layouts/page.njk delete mode 100644 src/main/tpl/_layouts/radar.njk delete mode 100644 src/main/tpl/_layouts/redirect.njk delete mode 100644 src/main/tpl/_layouts/root.njk delete mode 100644 src/main/tpl/_layouts/table.njk delete mode 100644 src/main/tpl/assets/radar.css delete mode 100644 src/main/tpl/assets/radar.js delete mode 100644 src/main/tpl/entries/entries.11tydata.json delete mode 100644 src/main/tpl/entries/q1/q1.11tydata.json delete mode 100644 src/main/tpl/entries/q2/q2.11tydata.json delete mode 100644 src/main/tpl/entries/q3/q3.11tydata.json delete mode 100644 src/main/tpl/entries/q4/q4.11tydata.json create mode 100644 src/main/ts/api/arc.ts create mode 100644 src/main/ts/api/index.ts create mode 100644 src/main/ts/api/pie.ts create mode 100644 src/main/ts/api/radar.ts create mode 100644 src/main/ts/api/statuses-radius.ts create mode 100644 src/main/ts/api/svg-radar-size.ts create mode 100644 src/main/ts/api/svg-radar.ts create mode 100644 src/main/ts/api/svg-sector-size.ts create mode 100644 src/main/ts/api/svg-sector-status-items.ts create mode 100644 src/main/ts/api/svg-sector-statuses.ts create mode 100644 src/main/ts/api/svg-sectors-pies.ts create mode 100644 src/main/ts/api/svg-sectors.ts create mode 100755 src/main/ts/bin.ts create mode 100644 src/main/ts/index.ts create mode 100644 src/main/ts/types/Item.ts create mode 100644 src/main/ts/types/Radar.ts create mode 100644 src/main/ts/types/Scope.ts create mode 100644 src/main/ts/types/Sector.ts create mode 100644 src/main/ts/types/Status.ts create mode 100644 src/main/ts/types/SvgItem.ts create mode 100644 src/main/ts/types/SvgSector.ts create mode 100644 src/main/ts/types/SvgStatus.ts create mode 100644 src/main/ts/types/index.ts delete mode 100644 src/test/js/__snapshots__/generator-markdown.mjs.snap delete mode 100644 src/test/js/__snapshots__/reader.js.snap delete mode 100644 src/test/js/__snapshots__/run.mjs.snap delete mode 100644 src/test/js/generator-markdown.mjs delete mode 100644 src/test/js/index.js delete mode 100644 src/test/js/reader.js delete mode 100644 src/test/js/run.mjs delete mode 100644 src/test/js/validator.js delete mode 100644 src/test/stub/data/js/test.json delete mode 100644 src/test/stub/data/js/test.yml delete mode 100644 src/test/stub/data2/ios/test.yml delete mode 100644 src/test/stub/data2/js/test.json delete mode 100644 src/test/stub/invalid.csv delete mode 100644 src/test/stub/test.csv delete mode 100644 src/test/stub/test.json delete mode 100644 src/test/stub/test.yml delete mode 100644 src/test/stub/test2.csv delete mode 100644 src/test/stub/test2.json delete mode 100644 src/test/stub/test2.yml delete mode 100644 src/test/tpl/_includes/footer.njk create mode 100644 tsconfig.cjs.json create mode 100644 tsconfig.esm.json create mode 100644 tsconfig.json diff --git a/.depcheckrc b/.depcheckrc deleted file mode 100644 index 75def668..00000000 --- a/.depcheckrc +++ /dev/null @@ -1,7 +0,0 @@ -parsers: - '**/*.js': ['es6'] - '**/*.cjs': ['es6'] - '**/*.mjs': ['es6'] - '**/*.json': - - json1 - - json2 diff --git a/.eleventyignore b/.eleventyignore deleted file mode 100644 index b43bf86b..00000000 --- a/.eleventyignore +++ /dev/null @@ -1 +0,0 @@ -README.md diff --git a/.eslintrc.json b/.eslintrc.json index 2d947783..1747356c 100644 --- a/.eslintrc.json +++ b/.eslintrc.json @@ -1,11 +1,3 @@ { - "extends": [ - "eslint-config-qiwi", - "prettier" - ], - "ignorePatterns": ["src/main/tpl/**/*.js"], - "rules": { - "unicorn/prefer-type-error": 0, - "unicorn/consistent-function-scoping": 0 - } + "extends": "eslint-config-qiwi" } diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml index 22103637..7167f31e 100644 --- a/.github/workflows/ci.yaml +++ b/.github/workflows/ci.yaml @@ -1,59 +1,57 @@ -# This is a Github Workflow that runs tests on any push or pull request. name: CI -on: [push, pull_request] +on: [ push, pull_request ] jobs: test: + name: Test runs-on: ubuntu-latest steps: - name: Checkout uses: actions/checkout@v4 - - name: Setup NodeJS + - name: Setup uses: actions/setup-node@v4 - with: - node-version: 16 - - name: Install deps + - name: Install run: yarn + - name: Install + run: npx packasso install + - name: Test - run: yarn test + run: npx packasso test - release_radar: - name: Publish radar to gh-pages - # https://github.community/t/trigger-job-on-tag-push-only/18076 + publish: + name: Publish if: github.event_name == 'push' && github.ref == 'refs/heads/master' runs-on: ubuntu-latest needs: test steps: - - name: Checkuout + - name: Checkout uses: actions/checkout@v4 - - name: Setup NodeJS + - name: Setup uses: actions/setup-node@v4 - with: - node-version: 16 - - name: Install deps + - name: Install run: yarn - - name: Generate - run: | - yarn generate - yarn docs + - name: Install + run: npx packasso install + + - name: Build + run: yarn build - - name: Publish gh-pages + - name: Publish uses: peaceiris/actions-gh-pages@v3 with: github_token: ${{ secrets.GITHUB_TOKEN }} - publish_dir: ./dist + publish_dir: ./target/radar commit_message: "docs: update tech-radar static" allow_empty_commit: true enable_jekyll: false - release_lib: - name: Release lib - # https://github.community/t/trigger-job-on-tag-push-only/18076 + release: + name: Release if: github.event_name == 'push' && github.ref == 'refs/heads/master' needs: test runs-on: ubuntu-latest @@ -64,23 +62,28 @@ jobs: persist-credentials: false fetch-depth: 0 - - uses: actions/setup-node@v4 - with: - node-version: 16 + - name: Setup + uses: actions/setup-node@v4 - - name: Install deps + - name: Install run: yarn + - name: Install + run: npx packasso install + + - name: Build + run: npx packasso build + - name: Test - run: yarn test:unit + run: npx packasso test - - name: Codeclimate + - name: Code Climate uses: paambaati/codeclimate-action@v5.0.0 env: CC_TEST_REPORTER_ID: ${{ secrets.CC_TEST_REPORTER_ID }} with: coverageLocations: | - ${{ github.workspace }}/coverage/lcov.info:lcov + ${{ github.workspace }}/target/coverage/lcov.info:lcov - name: Release env: @@ -88,4 +91,4 @@ jobs: GITHUB_TOKEN: ${{ secrets.GH_TOKEN }} GIT_COMMITTER_EMAIL: ${{ secrets.GIT_COMMITTER_EMAIL }} GIT_COMMITTER_NAME: ${{ secrets.GIT_COMMITTER_NAME }} - run: npm_config_yes=true npx zx-semrel + run: npx packasso release diff --git a/.gitignore b/.gitignore index 70b085ab..e5b09541 100644 --- a/.gitignore +++ b/.gitignore @@ -1,82 +1,33 @@ -# Logs -logs -*.log -npm-debug.log* -yarn-debug.log* -yarn-error.log* -lerna-debug.log* +# misc -# Diagnostic reports (https://nodejs.org/api/report.html) -report.[0-9]*.[0-9]*.[0-9]*.[0-9]*.json +.DS_Store +/.idea -# Runtime data -pids -*.pid -*.seed -*.pid.lock +# local -# Coverage -flow-coverage -lib-cov -coverage -.nyc_output -*.lcov +*.local -# Bundles -bundle/ -build/ -dist/ -target/ -typings/ -flow-typed/ -buildstamp.json +# yarn -# Docs -docs -doc +/.pnp.* +/.yarn/cache +/.yarn/unplugged +/.yarn/install-state.gz +/yarn-error.log -# Deps -node_modules -jspm_packages -bower_components -package-lock.json -npm-shrinkwrap.json +# open-ssl -#IDE -.idea -.idea/ - -# Yarn Integrity file -.yarn-integrity - -.npm -.eslintcache -.node_repl_history -.env - -# Typescript -*.tsbuildinfo -.tsbuildinfo -buildcache -.buildcache - -# Microbundle cache -.rpt2_cache/ -.rts2_cache_cjs/ -.rts2_cache_es/ -.rts2_cache_umd/ - -# Temp -src/test/js/temp - -# Code Climate -cc-reporter -cc-reporter.* -codeclimate.* -coverage.* - -# Creds -*.asc -*.key +*.ca +*.crt +*.csr +*.der +*.kdb +*.org +*.p12 *.pem -*.cert +*.rnd +*.ssleay +*.smime + +/node_modules +/target diff --git a/.prettierrc.json b/.prettierrc.json new file mode 100644 index 00000000..761e7caf --- /dev/null +++ b/.prettierrc.json @@ -0,0 +1 @@ +"prettier-config-qiwi" diff --git a/.releaserc.json b/.releaserc.json deleted file mode 100644 index e192a3a3..00000000 --- a/.releaserc.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "branch": "master", - "plugins": [ - "@semantic-release/commit-analyzer", - "@semantic-release/release-notes-generator", - "@semantic-release/changelog", - "@semantic-release/npm", - [ - "@semantic-release/github", - { - "successComment": false, - "failComment": false - } - ], - "@semantic-release/git" - ] -} diff --git a/.yarn/releases/yarn-4.0.1.cjs b/.yarn/releases/yarn-4.0.1.cjs new file mode 100755 index 00000000..2fd4d1d1 --- /dev/null +++ b/.yarn/releases/yarn-4.0.1.cjs @@ -0,0 +1,893 @@ +#!/usr/bin/env node +/* eslint-disable */ +//prettier-ignore +(()=>{var n_e=Object.create;var OR=Object.defineProperty;var i_e=Object.getOwnPropertyDescriptor;var s_e=Object.getOwnPropertyNames;var o_e=Object.getPrototypeOf,a_e=Object.prototype.hasOwnProperty;var Be=(t=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(t,{get:(e,r)=>(typeof require<"u"?require:e)[r]}):t)(function(t){if(typeof require<"u")return require.apply(this,arguments);throw new Error('Dynamic require of "'+t+'" is not supported')});var Et=(t,e)=>()=>(t&&(e=t(t=0)),e);var _=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),Vt=(t,e)=>{for(var r in e)OR(t,r,{get:e[r],enumerable:!0})},l_e=(t,e,r,o)=>{if(e&&typeof e=="object"||typeof e=="function")for(let a of s_e(e))!a_e.call(t,a)&&a!==r&&OR(t,a,{get:()=>e[a],enumerable:!(o=i_e(e,a))||o.enumerable});return t};var $e=(t,e,r)=>(r=t!=null?n_e(o_e(t)):{},l_e(e||!t||!t.__esModule?OR(r,"default",{value:t,enumerable:!0}):r,t));var vi={};Vt(vi,{SAFE_TIME:()=>R7,S_IFDIR:()=>wD,S_IFLNK:()=>ID,S_IFMT:()=>Ou,S_IFREG:()=>_w});var Ou,wD,_w,ID,R7,T7=Et(()=>{Ou=61440,wD=16384,_w=32768,ID=40960,R7=456789e3});var ar={};Vt(ar,{EBADF:()=>Io,EBUSY:()=>c_e,EEXIST:()=>g_e,EINVAL:()=>A_e,EISDIR:()=>h_e,ENOENT:()=>f_e,ENOSYS:()=>u_e,ENOTDIR:()=>p_e,ENOTEMPTY:()=>m_e,EOPNOTSUPP:()=>y_e,EROFS:()=>d_e,ERR_DIR_CLOSED:()=>MR});function Tl(t,e){return Object.assign(new Error(`${t}: ${e}`),{code:t})}function c_e(t){return Tl("EBUSY",t)}function u_e(t,e){return Tl("ENOSYS",`${t}, ${e}`)}function A_e(t){return Tl("EINVAL",`invalid argument, ${t}`)}function Io(t){return Tl("EBADF",`bad file descriptor, ${t}`)}function f_e(t){return Tl("ENOENT",`no such file or directory, ${t}`)}function p_e(t){return Tl("ENOTDIR",`not a directory, ${t}`)}function h_e(t){return Tl("EISDIR",`illegal operation on a directory, ${t}`)}function g_e(t){return Tl("EEXIST",`file already exists, ${t}`)}function d_e(t){return Tl("EROFS",`read-only filesystem, ${t}`)}function m_e(t){return Tl("ENOTEMPTY",`directory not empty, ${t}`)}function y_e(t){return Tl("EOPNOTSUPP",`operation not supported, ${t}`)}function MR(){return Tl("ERR_DIR_CLOSED","Directory handle was closed")}var BD=Et(()=>{});var Ea={};Vt(Ea,{BigIntStatsEntry:()=>$m,DEFAULT_MODE:()=>HR,DirEntry:()=>UR,StatEntry:()=>Zm,areStatsEqual:()=>jR,clearStats:()=>vD,convertToBigIntStats:()=>C_e,makeDefaultStats:()=>N7,makeEmptyStats:()=>E_e});function N7(){return new Zm}function E_e(){return vD(N7())}function vD(t){for(let e in t)if(Object.hasOwn(t,e)){let r=t[e];typeof r=="number"?t[e]=0:typeof r=="bigint"?t[e]=BigInt(0):_R.types.isDate(r)&&(t[e]=new Date(0))}return t}function C_e(t){let e=new $m;for(let r in t)if(Object.hasOwn(t,r)){let o=t[r];typeof o=="number"?e[r]=BigInt(o):_R.types.isDate(o)&&(e[r]=new Date(o))}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 jR(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,o=e;return!(r.atimeNs!==o.atimeNs||r.mtimeNs!==o.mtimeNs||r.ctimeNs!==o.ctimeNs||r.birthtimeNs!==o.birthtimeNs)}var _R,HR,UR,Zm,$m,qR=Et(()=>{_R=$e(Be("util")),HR=33188,UR=class{constructor(){this.name="";this.path="";this.mode=0}isBlockDevice(){return!1}isCharacterDevice(){return!1}isDirectory(){return(this.mode&61440)===16384}isFIFO(){return!1}isFile(){return(this.mode&61440)===32768}isSocket(){return!1}isSymbolicLink(){return(this.mode&61440)===40960}},Zm=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=HR;this.nlink=1;this.rdev=0;this.blocks=1}isBlockDevice(){return!1}isCharacterDevice(){return!1}isDirectory(){return(this.mode&61440)===16384}isFIFO(){return!1}isFile(){return(this.mode&61440)===32768}isSocket(){return!1}isSymbolicLink(){return(this.mode&61440)===40960}},$m=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(HR);this.nlink=BigInt(1);this.rdev=BigInt(0);this.blocks=BigInt(1)}isBlockDevice(){return!1}isCharacterDevice(){return!1}isDirectory(){return(this.mode&BigInt(61440))===BigInt(16384)}isFIFO(){return!1}isFile(){return(this.mode&BigInt(61440))===BigInt(32768)}isSocket(){return!1}isSymbolicLink(){return(this.mode&BigInt(61440))===BigInt(40960)}}});function D_e(t){let e,r;if(e=t.match(B_e))t=e[1];else if(r=t.match(v_e))t=`\\\\${r[1]?".\\":""}${r[2]}`;else return t;return t.replace(/\//g,"\\")}function P_e(t){t=t.replace(/\\/g,"/");let e,r;return(e=t.match(w_e))?t=`/${e[1]}`:(r=t.match(I_e))&&(t=`/unc/${r[1]?".dot/":""}${r[2]}`),t}function DD(t,e){return t===ue?O7(e):GR(e)}var Hw,Bt,dr,ue,V,L7,w_e,I_e,B_e,v_e,GR,O7,Ca=Et(()=>{Hw=$e(Be("path")),Bt={root:"/",dot:".",parent:".."},dr={home:"~",nodeModules:"node_modules",manifest:"package.json",lockfile:"yarn.lock",virtual:"__virtual__",pnpJs:".pnp.js",pnpCjs:".pnp.cjs",pnpData:".pnp.data.json",pnpEsmLoader:".pnp.loader.mjs",rc:".yarnrc.yml",env:".env"},ue=Object.create(Hw.default),V=Object.create(Hw.default.posix);ue.cwd=()=>process.cwd();V.cwd=process.platform==="win32"?()=>GR(process.cwd()):process.cwd;process.platform==="win32"&&(V.resolve=(...t)=>t.length>0&&V.isAbsolute(t[0])?Hw.default.posix.resolve(...t):Hw.default.posix.resolve(V.cwd(),...t));L7=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)};ue.contains=(t,e)=>L7(ue,t,e);V.contains=(t,e)=>L7(V,t,e);w_e=/^([a-zA-Z]:.*)$/,I_e=/^\/\/(\.\/)?(.*)$/,B_e=/^\/([a-zA-Z]:.*)$/,v_e=/^\/unc\/(\.dot\/)?(.*)$/;GR=process.platform==="win32"?P_e:t=>t,O7=process.platform==="win32"?D_e:t=>t;ue.fromPortablePath=O7;ue.toPortablePath=GR});async function PD(t,e){let r="0123456789abcdef";await t.mkdirPromise(e.indexPath,{recursive:!0});let o=[];for(let a of r)for(let n of r)o.push(t.mkdirPromise(t.pathUtils.join(e.indexPath,`${a}${n}`),{recursive:!0}));return await Promise.all(o),e.indexPath}async function M7(t,e,r,o,a){let n=t.pathUtils.normalize(e),u=r.pathUtils.normalize(o),A=[],p=[],{atime:h,mtime:C}=a.stableTime?{atime:Ng,mtime:Ng}:await r.lstatPromise(u);await t.mkdirpPromise(t.pathUtils.dirname(e),{utimes:[h,C]}),await YR(A,p,t,n,r,u,{...a,didParentExist:!0});for(let I of A)await I();await Promise.all(p.map(I=>I()))}async function YR(t,e,r,o,a,n,u){let A=u.didParentExist?await U7(r,o):null,p=await a.lstatPromise(n),{atime:h,mtime:C}=u.stableTime?{atime:Ng,mtime:Ng}:p,I;switch(!0){case p.isDirectory():I=await b_e(t,e,r,o,A,a,n,p,u);break;case p.isFile():I=await Q_e(t,e,r,o,A,a,n,p,u);break;case p.isSymbolicLink():I=await F_e(t,e,r,o,A,a,n,p,u);break;default:throw new Error(`Unsupported file type (${p.mode})`)}return(u.linkStrategy?.type!=="HardlinkFromIndex"||!p.isFile())&&((I||A?.mtime?.getTime()!==C.getTime()||A?.atime?.getTime()!==h.getTime())&&(e.push(()=>r.lutimesPromise(o,h,C)),I=!0),(A===null||(A.mode&511)!==(p.mode&511))&&(e.push(()=>r.chmodPromise(o,p.mode&511)),I=!0)),I}async function U7(t,e){try{return await t.lstatPromise(e)}catch{return null}}async function b_e(t,e,r,o,a,n,u,A,p){if(a!==null&&!a.isDirectory())if(p.overwrite)t.push(async()=>r.removePromise(o)),a=null;else return!1;let h=!1;a===null&&(t.push(async()=>{try{await r.mkdirPromise(o,{mode:A.mode})}catch(v){if(v.code!=="EEXIST")throw v}}),h=!0);let C=await n.readdirPromise(u),I=p.didParentExist&&!a?{...p,didParentExist:!1}:p;if(p.stableSort)for(let v of C.sort())await YR(t,e,r,r.pathUtils.join(o,v),n,n.pathUtils.join(u,v),I)&&(h=!0);else(await Promise.all(C.map(async x=>{await YR(t,e,r,r.pathUtils.join(o,x),n,n.pathUtils.join(u,x),I)}))).some(x=>x)&&(h=!0);return h}async function x_e(t,e,r,o,a,n,u,A,p,h){let C=await n.checksumFilePromise(u,{algorithm:"sha1"}),I=r.pathUtils.join(h.indexPath,C.slice(0,2),`${C}.dat`),v;(te=>(te[te.Lock=0]="Lock",te[te.Rename=1]="Rename"))(v||={});let x=1,E=await U7(r,I);if(a){let U=E&&a.dev===E.dev&&a.ino===E.ino,z=E?.mtimeMs!==S_e;if(U&&z&&h.autoRepair&&(x=0,E=null),!U)if(p.overwrite)t.push(async()=>r.removePromise(o)),a=null;else return!1}let R=!E&&x===1?`${I}.${Math.floor(Math.random()*4294967296).toString(16).padStart(8,"0")}`:null,L=!1;return t.push(async()=>{if(!E&&(x===0&&await r.lockPromise(I,async()=>{let U=await n.readFilePromise(u);await r.writeFilePromise(I,U)}),x===1&&R)){let U=await n.readFilePromise(u);await r.writeFilePromise(R,U);try{await r.linkPromise(R,I)}catch(z){if(z.code==="EEXIST")L=!0,await r.unlinkPromise(R);else throw z}}a||await r.linkPromise(I,o)}),e.push(async()=>{E||await r.lutimesPromise(I,Ng,Ng),R&&!L&&await r.unlinkPromise(R)}),!1}async function k_e(t,e,r,o,a,n,u,A,p){if(a!==null)if(p.overwrite)t.push(async()=>r.removePromise(o)),a=null;else return!1;return t.push(async()=>{let h=await n.readFilePromise(u);await r.writeFilePromise(o,h)}),!0}async function Q_e(t,e,r,o,a,n,u,A,p){return p.linkStrategy?.type==="HardlinkFromIndex"?x_e(t,e,r,o,a,n,u,A,p,p.linkStrategy):k_e(t,e,r,o,a,n,u,A,p)}async function F_e(t,e,r,o,a,n,u,A,p){if(a!==null)if(p.overwrite)t.push(async()=>r.removePromise(o)),a=null;else return!1;return t.push(async()=>{await r.symlinkPromise(DD(r.pathUtils,await n.readlinkPromise(u)),o)}),!0}var Ng,S_e,WR=Et(()=>{Ca();Ng=new Date(456789e3*1e3),S_e=Ng.getTime()});function SD(t,e,r,o){let a=()=>{let n=r.shift();if(typeof n>"u")return null;let u=t.pathUtils.join(e,n);return Object.assign(t.statSync(u),{name:n,path:void 0})};return new jw(e,a,o)}var jw,_7=Et(()=>{BD();jw=class{constructor(e,r,o={}){this.path=e;this.nextDirent=r;this.opts=o;this.closed=!1}throwIfClosed(){if(this.closed)throw MR()}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<"u"?e(null,r):Promise.resolve(r)}readSync(){return this.throwIfClosed(),this.nextDirent()}close(e){return this.closeSync(),typeof e<"u"?e(null):Promise.resolve()}closeSync(){this.throwIfClosed(),this.opts.onClose?.(),this.closed=!0}}});function H7(t,e){if(t!==e)throw new Error(`Invalid StatWatcher status: expected '${e}', got '${t}'`)}var j7,ey,q7=Et(()=>{j7=Be("events");qR();ey=class extends j7.EventEmitter{constructor(r,o,{bigint:a=!1}={}){super();this.status="ready";this.changeListeners=new Map;this.startTimeout=null;this.fakeFs=r,this.path=o,this.bigint=a,this.lastStats=this.stat()}static create(r,o,a){let n=new ey(r,o,a);return n.start(),n}start(){H7(this.status,"ready"),this.status="running",this.startTimeout=setTimeout(()=>{this.startTimeout=null,this.fakeFs.existsSync(this.path)||this.emit("change",this.lastStats,this.lastStats)},3)}stop(){H7(this.status,"running"),this.status="stopped",this.startTimeout!==null&&(clearTimeout(this.startTimeout),this.startTimeout=null),this.emit("stop")}stat(){try{return this.fakeFs.statSync(this.path,{bigint:this.bigint})}catch{let o=this.bigint?new $m:new Zm;return vD(o)}}makeInterval(r){let o=setInterval(()=>{let a=this.stat(),n=this.lastStats;jR(a,n)||(this.lastStats=a,this.emit("change",a,n))},r.interval);return r.persistent?o:o.unref()}registerChangeListener(r,o){this.addListener("change",r),this.changeListeners.set(r,this.makeInterval(o))}unregisterChangeListener(r){this.removeListener("change",r);let o=this.changeListeners.get(r);typeof o<"u"&&clearInterval(o),this.changeListeners.delete(r)}unregisterAllChangeListeners(){for(let r of this.changeListeners.keys())this.unregisterChangeListener(r)}hasChangeListeners(){return this.changeListeners.size>0}ref(){for(let r of this.changeListeners.values())r.ref();return this}unref(){for(let r of this.changeListeners.values())r.unref();return this}}});function ty(t,e,r,o){let a,n,u,A;switch(typeof r){case"function":a=!1,n=!0,u=5007,A=r;break;default:({bigint:a=!1,persistent:n=!0,interval:u=5007}=r),A=o;break}let p=bD.get(t);typeof p>"u"&&bD.set(t,p=new Map);let h=p.get(e);return typeof h>"u"&&(h=ey.create(t,e,{bigint:a}),p.set(e,h)),h.registerChangeListener(A,{persistent:n,interval:u}),h}function Lg(t,e,r){let o=bD.get(t);if(typeof o>"u")return;let a=o.get(e);typeof a>"u"||(typeof r>"u"?a.unregisterAllChangeListeners():a.unregisterChangeListener(r),a.hasChangeListeners()||(a.stop(),o.delete(e)))}function Og(t){let e=bD.get(t);if(!(typeof e>"u"))for(let r of e.keys())Lg(t,r)}var bD,KR=Et(()=>{q7();bD=new WeakMap});function R_e(t){let e=t.match(/\r?\n/g);if(e===null)return Y7.EOL;let r=e.filter(a=>a===`\r +`).length,o=e.length-r;return r>o?`\r +`:` +`}function Mg(t,e){return e.replace(/\r?\n/g,R_e(t))}var G7,Y7,hf,Mu,Ug=Et(()=>{G7=Be("crypto"),Y7=Be("os");WR();Ca();hf=class{constructor(e){this.pathUtils=e}async*genTraversePromise(e,{stableSort:r=!1}={}){let o=[e];for(;o.length>0;){let a=o.shift();if((await this.lstatPromise(a)).isDirectory()){let u=await this.readdirPromise(a);if(r)for(let A of u.sort())o.push(this.pathUtils.join(a,A));else throw new Error("Not supported")}else yield a}}async checksumFilePromise(e,{algorithm:r="sha512"}={}){let o=await this.openPromise(e,"r");try{let n=Buffer.allocUnsafeSlow(65536),u=(0,G7.createHash)(r),A=0;for(;(A=await this.readPromise(o,n,0,65536))!==0;)u.update(A===65536?n:n.slice(0,A));return u.digest("hex")}finally{await this.closePromise(o)}}async removePromise(e,{recursive:r=!0,maxRetries:o=5}={}){let a;try{a=await this.lstatPromise(e)}catch(n){if(n.code==="ENOENT")return;throw n}if(a.isDirectory()){if(r){let n=await this.readdirPromise(e);await Promise.all(n.map(u=>this.removePromise(this.pathUtils.resolve(e,u))))}for(let n=0;n<=o;n++)try{await this.rmdirPromise(e);break}catch(u){if(u.code!=="EBUSY"&&u.code!=="ENOTEMPTY")throw u;nsetTimeout(A,n*100))}}else await this.unlinkPromise(e)}removeSync(e,{recursive:r=!0}={}){let o;try{o=this.lstatSync(e)}catch(a){if(a.code==="ENOENT")return;throw a}if(o.isDirectory()){if(r)for(let a of this.readdirSync(e))this.removeSync(this.pathUtils.resolve(e,a));this.rmdirSync(e)}else this.unlinkSync(e)}async mkdirpPromise(e,{chmod:r,utimes:o}={}){if(e=this.resolve(e),e===this.pathUtils.dirname(e))return;let a=e.split(this.pathUtils.sep),n;for(let u=2;u<=a.length;++u){let A=a.slice(0,u).join(this.pathUtils.sep);if(!this.existsSync(A)){try{await this.mkdirPromise(A)}catch(p){if(p.code==="EEXIST")continue;throw p}if(n??=A,r!=null&&await this.chmodPromise(A,r),o!=null)await this.utimesPromise(A,o[0],o[1]);else{let p=await this.statPromise(this.pathUtils.dirname(A));await this.utimesPromise(A,p.atime,p.mtime)}}}return n}mkdirpSync(e,{chmod:r,utimes:o}={}){if(e=this.resolve(e),e===this.pathUtils.dirname(e))return;let a=e.split(this.pathUtils.sep),n;for(let u=2;u<=a.length;++u){let A=a.slice(0,u).join(this.pathUtils.sep);if(!this.existsSync(A)){try{this.mkdirSync(A)}catch(p){if(p.code==="EEXIST")continue;throw p}if(n??=A,r!=null&&this.chmodSync(A,r),o!=null)this.utimesSync(A,o[0],o[1]);else{let p=this.statSync(this.pathUtils.dirname(A));this.utimesSync(A,p.atime,p.mtime)}}}return n}async copyPromise(e,r,{baseFs:o=this,overwrite:a=!0,stableSort:n=!1,stableTime:u=!1,linkStrategy:A=null}={}){return await M7(this,e,o,r,{overwrite:a,stableSort:n,stableTime:u,linkStrategy:A})}copySync(e,r,{baseFs:o=this,overwrite:a=!0}={}){let n=o.lstatSync(r),u=this.existsSync(e);if(n.isDirectory()){this.mkdirpSync(e);let p=o.readdirSync(r);for(let h of p)this.copySync(this.pathUtils.join(e,h),o.pathUtils.join(r,h),{baseFs:o,overwrite:a})}else if(n.isFile()){if(!u||a){u&&this.removeSync(e);let p=o.readFileSync(r);this.writeFileSync(e,p)}}else if(n.isSymbolicLink()){if(!u||a){u&&this.removeSync(e);let p=o.readlinkSync(r);this.symlinkSync(DD(this.pathUtils,p),e)}}else throw new Error(`Unsupported file type (file: ${r}, mode: 0o${n.mode.toString(8).padStart(6,"0")})`);let A=n.mode&511;this.chmodSync(e,A)}async changeFilePromise(e,r,o={}){return Buffer.isBuffer(r)?this.changeFileBufferPromise(e,r,o):this.changeFileTextPromise(e,r,o)}async changeFileBufferPromise(e,r,{mode:o}={}){let a=Buffer.alloc(0);try{a=await this.readFilePromise(e)}catch{}Buffer.compare(a,r)!==0&&await this.writeFilePromise(e,r,{mode:o})}async changeFileTextPromise(e,r,{automaticNewlines:o,mode:a}={}){let n="";try{n=await this.readFilePromise(e,"utf8")}catch{}let u=o?Mg(n,r):r;n!==u&&await this.writeFilePromise(e,u,{mode:a})}changeFileSync(e,r,o={}){return Buffer.isBuffer(r)?this.changeFileBufferSync(e,r,o):this.changeFileTextSync(e,r,o)}changeFileBufferSync(e,r,{mode:o}={}){let a=Buffer.alloc(0);try{a=this.readFileSync(e)}catch{}Buffer.compare(a,r)!==0&&this.writeFileSync(e,r,{mode:o})}changeFileTextSync(e,r,{automaticNewlines:o=!1,mode:a}={}){let n="";try{n=this.readFileSync(e,"utf8")}catch{}let u=o?Mg(n,r):r;n!==u&&this.writeFileSync(e,u,{mode:a})}async movePromise(e,r){try{await this.renamePromise(e,r)}catch(o){if(o.code==="EXDEV")await this.copyPromise(r,e),await this.removePromise(e);else throw o}}moveSync(e,r){try{this.renameSync(e,r)}catch(o){if(o.code==="EXDEV")this.copySync(r,e),this.removeSync(e);else throw o}}async lockPromise(e,r){let o=`${e}.flock`,a=1e3/60,n=Date.now(),u=null,A=async()=>{let p;try{[p]=await this.readJsonPromise(o)}catch{return Date.now()-n<500}try{return process.kill(p,0),!0}catch{return!1}};for(;u===null;)try{u=await this.openPromise(o,"wx")}catch(p){if(p.code==="EEXIST"){if(!await A())try{await this.unlinkPromise(o);continue}catch{}if(Date.now()-n<60*1e3)await new Promise(h=>setTimeout(h,a));else throw new Error(`Couldn't acquire a lock in a reasonable time (via ${o})`)}else throw p}await this.writePromise(u,JSON.stringify([process.pid]));try{return await r()}finally{try{await this.closePromise(u),await this.unlinkPromise(o)}catch{}}}async readJsonPromise(e){let r=await this.readFilePromise(e,"utf8");try{return JSON.parse(r)}catch(o){throw o.message+=` (in ${e})`,o}}readJsonSync(e){let r=this.readFileSync(e,"utf8");try{return JSON.parse(r)}catch(o){throw o.message+=` (in ${e})`,o}}async writeJsonPromise(e,r,{compact:o=!1}={}){let a=o?0:2;return await this.writeFilePromise(e,`${JSON.stringify(r,null,a)} +`)}writeJsonSync(e,r,{compact:o=!1}={}){let a=o?0:2;return this.writeFileSync(e,`${JSON.stringify(r,null,a)} +`)}async preserveTimePromise(e,r){let o=await this.lstatPromise(e),a=await r();typeof a<"u"&&(e=a),await this.lutimesPromise(e,o.atime,o.mtime)}async preserveTimeSync(e,r){let o=this.lstatSync(e),a=r();typeof a<"u"&&(e=a),this.lutimesSync(e,o.atime,o.mtime)}},Mu=class extends hf{constructor(){super(V)}}});var Ps,gf=Et(()=>{Ug();Ps=class extends hf{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,o){return this.baseFs.openPromise(this.mapToBase(e),r,o)}openSync(e,r,o){return this.baseFs.openSync(this.mapToBase(e),r,o)}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,o,a,n){return await this.baseFs.readPromise(e,r,o,a,n)}readSync(e,r,o,a,n){return this.baseFs.readSync(e,r,o,a,n)}async writePromise(e,r,o,a,n){return typeof r=="string"?await this.baseFs.writePromise(e,r,o):await this.baseFs.writePromise(e,r,o,a,n)}writeSync(e,r,o,a,n){return typeof r=="string"?this.baseFs.writeSync(e,r,o):this.baseFs.writeSync(e,r,o,a,n)}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)}lstatPromise(e,r){return this.baseFs.lstatPromise(this.mapToBase(e),r)}lstatSync(e,r){return this.baseFs.lstatSync(this.mapToBase(e),r)}async fchmodPromise(e,r){return this.baseFs.fchmodPromise(e,r)}fchmodSync(e,r){return this.baseFs.fchmodSync(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 fchownPromise(e,r,o){return this.baseFs.fchownPromise(e,r,o)}fchownSync(e,r,o){return this.baseFs.fchownSync(e,r,o)}async chownPromise(e,r,o){return this.baseFs.chownPromise(this.mapToBase(e),r,o)}chownSync(e,r,o){return this.baseFs.chownSync(this.mapToBase(e),r,o)}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,o=0){return this.baseFs.copyFilePromise(this.mapToBase(e),this.mapToBase(r),o)}copyFileSync(e,r,o=0){return this.baseFs.copyFileSync(this.mapToBase(e),this.mapToBase(r),o)}async appendFilePromise(e,r,o){return this.baseFs.appendFilePromise(this.fsMapToBase(e),r,o)}appendFileSync(e,r,o){return this.baseFs.appendFileSync(this.fsMapToBase(e),r,o)}async writeFilePromise(e,r,o){return this.baseFs.writeFilePromise(this.fsMapToBase(e),r,o)}writeFileSync(e,r,o){return this.baseFs.writeFileSync(this.fsMapToBase(e),r,o)}async unlinkPromise(e){return this.baseFs.unlinkPromise(this.mapToBase(e))}unlinkSync(e){return this.baseFs.unlinkSync(this.mapToBase(e))}async utimesPromise(e,r,o){return this.baseFs.utimesPromise(this.mapToBase(e),r,o)}utimesSync(e,r,o){return this.baseFs.utimesSync(this.mapToBase(e),r,o)}async lutimesPromise(e,r,o){return this.baseFs.lutimesPromise(this.mapToBase(e),r,o)}lutimesSync(e,r,o){return this.baseFs.lutimesSync(this.mapToBase(e),r,o)}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,o){let a=this.mapToBase(r);if(this.pathUtils.isAbsolute(e))return this.baseFs.symlinkPromise(this.mapToBase(e),a,o);let n=this.mapToBase(this.pathUtils.join(this.pathUtils.dirname(r),e)),u=this.baseFs.pathUtils.relative(this.baseFs.pathUtils.dirname(a),n);return this.baseFs.symlinkPromise(u,a,o)}symlinkSync(e,r,o){let a=this.mapToBase(r);if(this.pathUtils.isAbsolute(e))return this.baseFs.symlinkSync(this.mapToBase(e),a,o);let n=this.mapToBase(this.pathUtils.join(this.pathUtils.dirname(r),e)),u=this.baseFs.pathUtils.relative(this.baseFs.pathUtils.dirname(a),n);return this.baseFs.symlinkSync(u,a,o)}async readFilePromise(e,r){return this.baseFs.readFilePromise(this.fsMapToBase(e),r)}readFileSync(e,r){return this.baseFs.readFileSync(this.fsMapToBase(e),r)}readdirPromise(e,r){return this.baseFs.readdirPromise(this.mapToBase(e),r)}readdirSync(e,r){return this.baseFs.readdirSync(this.mapToBase(e),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)}async ftruncatePromise(e,r){return this.baseFs.ftruncatePromise(e,r)}ftruncateSync(e,r){return this.baseFs.ftruncateSync(e,r)}watch(e,r,o){return this.baseFs.watch(this.mapToBase(e),r,o)}watchFile(e,r,o){return this.baseFs.watchFile(this.mapToBase(e),r,o)}unwatchFile(e,r){return this.baseFs.unwatchFile(this.mapToBase(e),r)}fsMapToBase(e){return typeof e=="number"?e:this.mapToBase(e)}}});var Uu,W7=Et(()=>{gf();Uu=class extends Ps{constructor(r,{baseFs:o,pathUtils:a}){super(a);this.target=r,this.baseFs=o}getRealPath(){return this.target}getBaseFs(){return this.baseFs}mapFromBase(r){return r}mapToBase(r){return r}}});function K7(t){let e=t;return typeof t.path=="string"&&(e.path=ue.toPortablePath(t.path)),e}var V7,Tn,_g=Et(()=>{V7=$e(Be("fs"));Ug();Ca();Tn=class extends Mu{constructor(r=V7.default){super();this.realFs=r}getExtractHint(){return!1}getRealPath(){return Bt.root}resolve(r){return V.resolve(r)}async openPromise(r,o,a){return await new Promise((n,u)=>{this.realFs.open(ue.fromPortablePath(r),o,a,this.makeCallback(n,u))})}openSync(r,o,a){return this.realFs.openSync(ue.fromPortablePath(r),o,a)}async opendirPromise(r,o){return await new Promise((a,n)=>{typeof o<"u"?this.realFs.opendir(ue.fromPortablePath(r),o,this.makeCallback(a,n)):this.realFs.opendir(ue.fromPortablePath(r),this.makeCallback(a,n))}).then(a=>{let n=a;return Object.defineProperty(n,"path",{value:r,configurable:!0,writable:!0}),n})}opendirSync(r,o){let n=typeof o<"u"?this.realFs.opendirSync(ue.fromPortablePath(r),o):this.realFs.opendirSync(ue.fromPortablePath(r));return Object.defineProperty(n,"path",{value:r,configurable:!0,writable:!0}),n}async readPromise(r,o,a=0,n=0,u=-1){return await new Promise((A,p)=>{this.realFs.read(r,o,a,n,u,(h,C)=>{h?p(h):A(C)})})}readSync(r,o,a,n,u){return this.realFs.readSync(r,o,a,n,u)}async writePromise(r,o,a,n,u){return await new Promise((A,p)=>typeof o=="string"?this.realFs.write(r,o,a,this.makeCallback(A,p)):this.realFs.write(r,o,a,n,u,this.makeCallback(A,p)))}writeSync(r,o,a,n,u){return typeof o=="string"?this.realFs.writeSync(r,o,a):this.realFs.writeSync(r,o,a,n,u)}async closePromise(r){await new Promise((o,a)=>{this.realFs.close(r,this.makeCallback(o,a))})}closeSync(r){this.realFs.closeSync(r)}createReadStream(r,o){let a=r!==null?ue.fromPortablePath(r):r;return this.realFs.createReadStream(a,o)}createWriteStream(r,o){let a=r!==null?ue.fromPortablePath(r):r;return this.realFs.createWriteStream(a,o)}async realpathPromise(r){return await new Promise((o,a)=>{this.realFs.realpath(ue.fromPortablePath(r),{},this.makeCallback(o,a))}).then(o=>ue.toPortablePath(o))}realpathSync(r){return ue.toPortablePath(this.realFs.realpathSync(ue.fromPortablePath(r),{}))}async existsPromise(r){return await new Promise(o=>{this.realFs.exists(ue.fromPortablePath(r),o)})}accessSync(r,o){return this.realFs.accessSync(ue.fromPortablePath(r),o)}async accessPromise(r,o){return await new Promise((a,n)=>{this.realFs.access(ue.fromPortablePath(r),o,this.makeCallback(a,n))})}existsSync(r){return this.realFs.existsSync(ue.fromPortablePath(r))}async statPromise(r,o){return await new Promise((a,n)=>{o?this.realFs.stat(ue.fromPortablePath(r),o,this.makeCallback(a,n)):this.realFs.stat(ue.fromPortablePath(r),this.makeCallback(a,n))})}statSync(r,o){return o?this.realFs.statSync(ue.fromPortablePath(r),o):this.realFs.statSync(ue.fromPortablePath(r))}async fstatPromise(r,o){return await new Promise((a,n)=>{o?this.realFs.fstat(r,o,this.makeCallback(a,n)):this.realFs.fstat(r,this.makeCallback(a,n))})}fstatSync(r,o){return o?this.realFs.fstatSync(r,o):this.realFs.fstatSync(r)}async lstatPromise(r,o){return await new Promise((a,n)=>{o?this.realFs.lstat(ue.fromPortablePath(r),o,this.makeCallback(a,n)):this.realFs.lstat(ue.fromPortablePath(r),this.makeCallback(a,n))})}lstatSync(r,o){return o?this.realFs.lstatSync(ue.fromPortablePath(r),o):this.realFs.lstatSync(ue.fromPortablePath(r))}async fchmodPromise(r,o){return await new Promise((a,n)=>{this.realFs.fchmod(r,o,this.makeCallback(a,n))})}fchmodSync(r,o){return this.realFs.fchmodSync(r,o)}async chmodPromise(r,o){return await new Promise((a,n)=>{this.realFs.chmod(ue.fromPortablePath(r),o,this.makeCallback(a,n))})}chmodSync(r,o){return this.realFs.chmodSync(ue.fromPortablePath(r),o)}async fchownPromise(r,o,a){return await new Promise((n,u)=>{this.realFs.fchown(r,o,a,this.makeCallback(n,u))})}fchownSync(r,o,a){return this.realFs.fchownSync(r,o,a)}async chownPromise(r,o,a){return await new Promise((n,u)=>{this.realFs.chown(ue.fromPortablePath(r),o,a,this.makeCallback(n,u))})}chownSync(r,o,a){return this.realFs.chownSync(ue.fromPortablePath(r),o,a)}async renamePromise(r,o){return await new Promise((a,n)=>{this.realFs.rename(ue.fromPortablePath(r),ue.fromPortablePath(o),this.makeCallback(a,n))})}renameSync(r,o){return this.realFs.renameSync(ue.fromPortablePath(r),ue.fromPortablePath(o))}async copyFilePromise(r,o,a=0){return await new Promise((n,u)=>{this.realFs.copyFile(ue.fromPortablePath(r),ue.fromPortablePath(o),a,this.makeCallback(n,u))})}copyFileSync(r,o,a=0){return this.realFs.copyFileSync(ue.fromPortablePath(r),ue.fromPortablePath(o),a)}async appendFilePromise(r,o,a){return await new Promise((n,u)=>{let A=typeof r=="string"?ue.fromPortablePath(r):r;a?this.realFs.appendFile(A,o,a,this.makeCallback(n,u)):this.realFs.appendFile(A,o,this.makeCallback(n,u))})}appendFileSync(r,o,a){let n=typeof r=="string"?ue.fromPortablePath(r):r;a?this.realFs.appendFileSync(n,o,a):this.realFs.appendFileSync(n,o)}async writeFilePromise(r,o,a){return await new Promise((n,u)=>{let A=typeof r=="string"?ue.fromPortablePath(r):r;a?this.realFs.writeFile(A,o,a,this.makeCallback(n,u)):this.realFs.writeFile(A,o,this.makeCallback(n,u))})}writeFileSync(r,o,a){let n=typeof r=="string"?ue.fromPortablePath(r):r;a?this.realFs.writeFileSync(n,o,a):this.realFs.writeFileSync(n,o)}async unlinkPromise(r){return await new Promise((o,a)=>{this.realFs.unlink(ue.fromPortablePath(r),this.makeCallback(o,a))})}unlinkSync(r){return this.realFs.unlinkSync(ue.fromPortablePath(r))}async utimesPromise(r,o,a){return await new Promise((n,u)=>{this.realFs.utimes(ue.fromPortablePath(r),o,a,this.makeCallback(n,u))})}utimesSync(r,o,a){this.realFs.utimesSync(ue.fromPortablePath(r),o,a)}async lutimesPromise(r,o,a){return await new Promise((n,u)=>{this.realFs.lutimes(ue.fromPortablePath(r),o,a,this.makeCallback(n,u))})}lutimesSync(r,o,a){this.realFs.lutimesSync(ue.fromPortablePath(r),o,a)}async mkdirPromise(r,o){return await new Promise((a,n)=>{this.realFs.mkdir(ue.fromPortablePath(r),o,this.makeCallback(a,n))})}mkdirSync(r,o){return this.realFs.mkdirSync(ue.fromPortablePath(r),o)}async rmdirPromise(r,o){return await new Promise((a,n)=>{o?this.realFs.rmdir(ue.fromPortablePath(r),o,this.makeCallback(a,n)):this.realFs.rmdir(ue.fromPortablePath(r),this.makeCallback(a,n))})}rmdirSync(r,o){return this.realFs.rmdirSync(ue.fromPortablePath(r),o)}async linkPromise(r,o){return await new Promise((a,n)=>{this.realFs.link(ue.fromPortablePath(r),ue.fromPortablePath(o),this.makeCallback(a,n))})}linkSync(r,o){return this.realFs.linkSync(ue.fromPortablePath(r),ue.fromPortablePath(o))}async symlinkPromise(r,o,a){return await new Promise((n,u)=>{this.realFs.symlink(ue.fromPortablePath(r.replace(/\/+$/,"")),ue.fromPortablePath(o),a,this.makeCallback(n,u))})}symlinkSync(r,o,a){return this.realFs.symlinkSync(ue.fromPortablePath(r.replace(/\/+$/,"")),ue.fromPortablePath(o),a)}async readFilePromise(r,o){return await new Promise((a,n)=>{let u=typeof r=="string"?ue.fromPortablePath(r):r;this.realFs.readFile(u,o,this.makeCallback(a,n))})}readFileSync(r,o){let a=typeof r=="string"?ue.fromPortablePath(r):r;return this.realFs.readFileSync(a,o)}async readdirPromise(r,o){return await new Promise((a,n)=>{o?o.recursive&&process.platform==="win32"?o.withFileTypes?this.realFs.readdir(ue.fromPortablePath(r),o,this.makeCallback(u=>a(u.map(K7)),n)):this.realFs.readdir(ue.fromPortablePath(r),o,this.makeCallback(u=>a(u.map(ue.toPortablePath)),n)):this.realFs.readdir(ue.fromPortablePath(r),o,this.makeCallback(a,n)):this.realFs.readdir(ue.fromPortablePath(r),this.makeCallback(a,n))})}readdirSync(r,o){return o?o.recursive&&process.platform==="win32"?o.withFileTypes?this.realFs.readdirSync(ue.fromPortablePath(r),o).map(K7):this.realFs.readdirSync(ue.fromPortablePath(r),o).map(ue.toPortablePath):this.realFs.readdirSync(ue.fromPortablePath(r),o):this.realFs.readdirSync(ue.fromPortablePath(r))}async readlinkPromise(r){return await new Promise((o,a)=>{this.realFs.readlink(ue.fromPortablePath(r),this.makeCallback(o,a))}).then(o=>ue.toPortablePath(o))}readlinkSync(r){return ue.toPortablePath(this.realFs.readlinkSync(ue.fromPortablePath(r)))}async truncatePromise(r,o){return await new Promise((a,n)=>{this.realFs.truncate(ue.fromPortablePath(r),o,this.makeCallback(a,n))})}truncateSync(r,o){return this.realFs.truncateSync(ue.fromPortablePath(r),o)}async ftruncatePromise(r,o){return await new Promise((a,n)=>{this.realFs.ftruncate(r,o,this.makeCallback(a,n))})}ftruncateSync(r,o){return this.realFs.ftruncateSync(r,o)}watch(r,o,a){return this.realFs.watch(ue.fromPortablePath(r),o,a)}watchFile(r,o,a){return this.realFs.watchFile(ue.fromPortablePath(r),o,a)}unwatchFile(r,o){return this.realFs.unwatchFile(ue.fromPortablePath(r),o)}makeCallback(r,o){return(a,n)=>{a?o(a):r(n)}}}});var gn,z7=Et(()=>{_g();gf();Ca();gn=class extends Ps{constructor(r,{baseFs:o=new Tn}={}){super(V);this.target=this.pathUtils.normalize(r),this.baseFs=o}getRealPath(){return this.pathUtils.resolve(this.baseFs.getRealPath(),this.target)}resolve(r){return this.pathUtils.isAbsolute(r)?V.normalize(r):this.baseFs.resolve(V.join(this.target,r))}mapFromBase(r){return r}mapToBase(r){return this.pathUtils.isAbsolute(r)?r:this.pathUtils.join(this.target,r)}}});var J7,_u,X7=Et(()=>{_g();gf();Ca();J7=Bt.root,_u=class extends Ps{constructor(r,{baseFs:o=new Tn}={}){super(V);this.target=this.pathUtils.resolve(Bt.root,r),this.baseFs=o}getRealPath(){return this.pathUtils.resolve(this.baseFs.getRealPath(),this.pathUtils.relative(Bt.root,this.target))}getTarget(){return this.target}getBaseFs(){return this.baseFs}mapToBase(r){let o=this.pathUtils.normalize(r);if(this.pathUtils.isAbsolute(r))return this.pathUtils.resolve(this.target,this.pathUtils.relative(J7,r));if(o.match(/^\.\.\/?/))throw new Error(`Resolving this path (${r}) would escape the jail`);return this.pathUtils.resolve(this.target,r)}mapFromBase(r){return this.pathUtils.resolve(J7,this.pathUtils.relative(this.target,r))}}});var ry,Z7=Et(()=>{gf();ry=class extends Ps{constructor(r,o){super(o);this.instance=null;this.factory=r}get baseFs(){return this.instance||(this.instance=this.factory()),this.instance}set baseFs(r){this.instance=r}mapFromBase(r){return r}mapToBase(r){return r}}});var Hg,wa,Up,$7=Et(()=>{Hg=Be("fs");Ug();_g();KR();BD();Ca();wa=4278190080,Up=class extends Mu{constructor({baseFs:r=new Tn,filter:o=null,magicByte:a=42,maxOpenFiles:n=1/0,useCache:u=!0,maxAge:A=5e3,typeCheck:p=Hg.constants.S_IFREG,getMountPoint:h,factoryPromise:C,factorySync:I}){if(Math.floor(a)!==a||!(a>1&&a<=127))throw new Error("The magic byte must be set to a round value between 1 and 127 included");super();this.fdMap=new Map;this.nextFd=3;this.isMount=new Set;this.notMount=new Set;this.realPaths=new Map;this.limitOpenFilesTimeout=null;this.baseFs=r,this.mountInstances=u?new Map:null,this.factoryPromise=C,this.factorySync=I,this.filter=o,this.getMountPoint=h,this.magic=a<<24,this.maxAge=A,this.maxOpenFiles=n,this.typeCheck=p}getExtractHint(r){return this.baseFs.getExtractHint(r)}getRealPath(){return this.baseFs.getRealPath()}saveAndClose(){if(Og(this),this.mountInstances)for(let[r,{childFs:o}]of this.mountInstances.entries())o.saveAndClose?.(),this.mountInstances.delete(r)}discardAndClose(){if(Og(this),this.mountInstances)for(let[r,{childFs:o}]of this.mountInstances.entries())o.discardAndClose?.(),this.mountInstances.delete(r)}resolve(r){return this.baseFs.resolve(r)}remapFd(r,o){let a=this.nextFd++|this.magic;return this.fdMap.set(a,[r,o]),a}async openPromise(r,o,a){return await this.makeCallPromise(r,async()=>await this.baseFs.openPromise(r,o,a),async(n,{subPath:u})=>this.remapFd(n,await n.openPromise(u,o,a)))}openSync(r,o,a){return this.makeCallSync(r,()=>this.baseFs.openSync(r,o,a),(n,{subPath:u})=>this.remapFd(n,n.openSync(u,o,a)))}async opendirPromise(r,o){return await this.makeCallPromise(r,async()=>await this.baseFs.opendirPromise(r,o),async(a,{subPath:n})=>await a.opendirPromise(n,o),{requireSubpath:!1})}opendirSync(r,o){return this.makeCallSync(r,()=>this.baseFs.opendirSync(r,o),(a,{subPath:n})=>a.opendirSync(n,o),{requireSubpath:!1})}async readPromise(r,o,a,n,u){if((r&wa)!==this.magic)return await this.baseFs.readPromise(r,o,a,n,u);let A=this.fdMap.get(r);if(typeof A>"u")throw Io("read");let[p,h]=A;return await p.readPromise(h,o,a,n,u)}readSync(r,o,a,n,u){if((r&wa)!==this.magic)return this.baseFs.readSync(r,o,a,n,u);let A=this.fdMap.get(r);if(typeof A>"u")throw Io("readSync");let[p,h]=A;return p.readSync(h,o,a,n,u)}async writePromise(r,o,a,n,u){if((r&wa)!==this.magic)return typeof o=="string"?await this.baseFs.writePromise(r,o,a):await this.baseFs.writePromise(r,o,a,n,u);let A=this.fdMap.get(r);if(typeof A>"u")throw Io("write");let[p,h]=A;return typeof o=="string"?await p.writePromise(h,o,a):await p.writePromise(h,o,a,n,u)}writeSync(r,o,a,n,u){if((r&wa)!==this.magic)return typeof o=="string"?this.baseFs.writeSync(r,o,a):this.baseFs.writeSync(r,o,a,n,u);let A=this.fdMap.get(r);if(typeof A>"u")throw Io("writeSync");let[p,h]=A;return typeof o=="string"?p.writeSync(h,o,a):p.writeSync(h,o,a,n,u)}async closePromise(r){if((r&wa)!==this.magic)return await this.baseFs.closePromise(r);let o=this.fdMap.get(r);if(typeof o>"u")throw Io("close");this.fdMap.delete(r);let[a,n]=o;return await a.closePromise(n)}closeSync(r){if((r&wa)!==this.magic)return this.baseFs.closeSync(r);let o=this.fdMap.get(r);if(typeof o>"u")throw Io("closeSync");this.fdMap.delete(r);let[a,n]=o;return a.closeSync(n)}createReadStream(r,o){return r===null?this.baseFs.createReadStream(r,o):this.makeCallSync(r,()=>this.baseFs.createReadStream(r,o),(a,{archivePath:n,subPath:u})=>{let A=a.createReadStream(u,o);return A.path=ue.fromPortablePath(this.pathUtils.join(n,u)),A})}createWriteStream(r,o){return r===null?this.baseFs.createWriteStream(r,o):this.makeCallSync(r,()=>this.baseFs.createWriteStream(r,o),(a,{subPath:n})=>a.createWriteStream(n,o))}async realpathPromise(r){return await this.makeCallPromise(r,async()=>await this.baseFs.realpathPromise(r),async(o,{archivePath:a,subPath:n})=>{let u=this.realPaths.get(a);return typeof u>"u"&&(u=await this.baseFs.realpathPromise(a),this.realPaths.set(a,u)),this.pathUtils.join(u,this.pathUtils.relative(Bt.root,await o.realpathPromise(n)))})}realpathSync(r){return this.makeCallSync(r,()=>this.baseFs.realpathSync(r),(o,{archivePath:a,subPath:n})=>{let u=this.realPaths.get(a);return typeof u>"u"&&(u=this.baseFs.realpathSync(a),this.realPaths.set(a,u)),this.pathUtils.join(u,this.pathUtils.relative(Bt.root,o.realpathSync(n)))})}async existsPromise(r){return await this.makeCallPromise(r,async()=>await this.baseFs.existsPromise(r),async(o,{subPath:a})=>await o.existsPromise(a))}existsSync(r){return this.makeCallSync(r,()=>this.baseFs.existsSync(r),(o,{subPath:a})=>o.existsSync(a))}async accessPromise(r,o){return await this.makeCallPromise(r,async()=>await this.baseFs.accessPromise(r,o),async(a,{subPath:n})=>await a.accessPromise(n,o))}accessSync(r,o){return this.makeCallSync(r,()=>this.baseFs.accessSync(r,o),(a,{subPath:n})=>a.accessSync(n,o))}async statPromise(r,o){return await this.makeCallPromise(r,async()=>await this.baseFs.statPromise(r,o),async(a,{subPath:n})=>await a.statPromise(n,o))}statSync(r,o){return this.makeCallSync(r,()=>this.baseFs.statSync(r,o),(a,{subPath:n})=>a.statSync(n,o))}async fstatPromise(r,o){if((r&wa)!==this.magic)return this.baseFs.fstatPromise(r,o);let a=this.fdMap.get(r);if(typeof a>"u")throw Io("fstat");let[n,u]=a;return n.fstatPromise(u,o)}fstatSync(r,o){if((r&wa)!==this.magic)return this.baseFs.fstatSync(r,o);let a=this.fdMap.get(r);if(typeof a>"u")throw Io("fstatSync");let[n,u]=a;return n.fstatSync(u,o)}async lstatPromise(r,o){return await this.makeCallPromise(r,async()=>await this.baseFs.lstatPromise(r,o),async(a,{subPath:n})=>await a.lstatPromise(n,o))}lstatSync(r,o){return this.makeCallSync(r,()=>this.baseFs.lstatSync(r,o),(a,{subPath:n})=>a.lstatSync(n,o))}async fchmodPromise(r,o){if((r&wa)!==this.magic)return this.baseFs.fchmodPromise(r,o);let a=this.fdMap.get(r);if(typeof a>"u")throw Io("fchmod");let[n,u]=a;return n.fchmodPromise(u,o)}fchmodSync(r,o){if((r&wa)!==this.magic)return this.baseFs.fchmodSync(r,o);let a=this.fdMap.get(r);if(typeof a>"u")throw Io("fchmodSync");let[n,u]=a;return n.fchmodSync(u,o)}async chmodPromise(r,o){return await this.makeCallPromise(r,async()=>await this.baseFs.chmodPromise(r,o),async(a,{subPath:n})=>await a.chmodPromise(n,o))}chmodSync(r,o){return this.makeCallSync(r,()=>this.baseFs.chmodSync(r,o),(a,{subPath:n})=>a.chmodSync(n,o))}async fchownPromise(r,o,a){if((r&wa)!==this.magic)return this.baseFs.fchownPromise(r,o,a);let n=this.fdMap.get(r);if(typeof n>"u")throw Io("fchown");let[u,A]=n;return u.fchownPromise(A,o,a)}fchownSync(r,o,a){if((r&wa)!==this.magic)return this.baseFs.fchownSync(r,o,a);let n=this.fdMap.get(r);if(typeof n>"u")throw Io("fchownSync");let[u,A]=n;return u.fchownSync(A,o,a)}async chownPromise(r,o,a){return await this.makeCallPromise(r,async()=>await this.baseFs.chownPromise(r,o,a),async(n,{subPath:u})=>await n.chownPromise(u,o,a))}chownSync(r,o,a){return this.makeCallSync(r,()=>this.baseFs.chownSync(r,o,a),(n,{subPath:u})=>n.chownSync(u,o,a))}async renamePromise(r,o){return await this.makeCallPromise(r,async()=>await this.makeCallPromise(o,async()=>await this.baseFs.renamePromise(r,o),async()=>{throw Object.assign(new Error("EEXDEV: cross-device link not permitted"),{code:"EEXDEV"})}),async(a,{subPath:n})=>await this.makeCallPromise(o,async()=>{throw Object.assign(new Error("EEXDEV: cross-device link not permitted"),{code:"EEXDEV"})},async(u,{subPath:A})=>{if(a!==u)throw Object.assign(new Error("EEXDEV: cross-device link not permitted"),{code:"EEXDEV"});return await a.renamePromise(n,A)}))}renameSync(r,o){return this.makeCallSync(r,()=>this.makeCallSync(o,()=>this.baseFs.renameSync(r,o),()=>{throw Object.assign(new Error("EEXDEV: cross-device link not permitted"),{code:"EEXDEV"})}),(a,{subPath:n})=>this.makeCallSync(o,()=>{throw Object.assign(new Error("EEXDEV: cross-device link not permitted"),{code:"EEXDEV"})},(u,{subPath:A})=>{if(a!==u)throw Object.assign(new Error("EEXDEV: cross-device link not permitted"),{code:"EEXDEV"});return a.renameSync(n,A)}))}async copyFilePromise(r,o,a=0){let n=async(u,A,p,h)=>{if((a&Hg.constants.COPYFILE_FICLONE_FORCE)!==0)throw Object.assign(new Error(`EXDEV: cross-device clone not permitted, copyfile '${A}' -> ${h}'`),{code:"EXDEV"});if(a&Hg.constants.COPYFILE_EXCL&&await this.existsPromise(A))throw Object.assign(new Error(`EEXIST: file already exists, copyfile '${A}' -> '${h}'`),{code:"EEXIST"});let C;try{C=await u.readFilePromise(A)}catch{throw Object.assign(new Error(`EINVAL: invalid argument, copyfile '${A}' -> '${h}'`),{code:"EINVAL"})}await p.writeFilePromise(h,C)};return await this.makeCallPromise(r,async()=>await this.makeCallPromise(o,async()=>await this.baseFs.copyFilePromise(r,o,a),async(u,{subPath:A})=>await n(this.baseFs,r,u,A)),async(u,{subPath:A})=>await this.makeCallPromise(o,async()=>await n(u,A,this.baseFs,o),async(p,{subPath:h})=>u!==p?await n(u,A,p,h):await u.copyFilePromise(A,h,a)))}copyFileSync(r,o,a=0){let n=(u,A,p,h)=>{if((a&Hg.constants.COPYFILE_FICLONE_FORCE)!==0)throw Object.assign(new Error(`EXDEV: cross-device clone not permitted, copyfile '${A}' -> ${h}'`),{code:"EXDEV"});if(a&Hg.constants.COPYFILE_EXCL&&this.existsSync(A))throw Object.assign(new Error(`EEXIST: file already exists, copyfile '${A}' -> '${h}'`),{code:"EEXIST"});let C;try{C=u.readFileSync(A)}catch{throw Object.assign(new Error(`EINVAL: invalid argument, copyfile '${A}' -> '${h}'`),{code:"EINVAL"})}p.writeFileSync(h,C)};return this.makeCallSync(r,()=>this.makeCallSync(o,()=>this.baseFs.copyFileSync(r,o,a),(u,{subPath:A})=>n(this.baseFs,r,u,A)),(u,{subPath:A})=>this.makeCallSync(o,()=>n(u,A,this.baseFs,o),(p,{subPath:h})=>u!==p?n(u,A,p,h):u.copyFileSync(A,h,a)))}async appendFilePromise(r,o,a){return await this.makeCallPromise(r,async()=>await this.baseFs.appendFilePromise(r,o,a),async(n,{subPath:u})=>await n.appendFilePromise(u,o,a))}appendFileSync(r,o,a){return this.makeCallSync(r,()=>this.baseFs.appendFileSync(r,o,a),(n,{subPath:u})=>n.appendFileSync(u,o,a))}async writeFilePromise(r,o,a){return await this.makeCallPromise(r,async()=>await this.baseFs.writeFilePromise(r,o,a),async(n,{subPath:u})=>await n.writeFilePromise(u,o,a))}writeFileSync(r,o,a){return this.makeCallSync(r,()=>this.baseFs.writeFileSync(r,o,a),(n,{subPath:u})=>n.writeFileSync(u,o,a))}async unlinkPromise(r){return await this.makeCallPromise(r,async()=>await this.baseFs.unlinkPromise(r),async(o,{subPath:a})=>await o.unlinkPromise(a))}unlinkSync(r){return this.makeCallSync(r,()=>this.baseFs.unlinkSync(r),(o,{subPath:a})=>o.unlinkSync(a))}async utimesPromise(r,o,a){return await this.makeCallPromise(r,async()=>await this.baseFs.utimesPromise(r,o,a),async(n,{subPath:u})=>await n.utimesPromise(u,o,a))}utimesSync(r,o,a){return this.makeCallSync(r,()=>this.baseFs.utimesSync(r,o,a),(n,{subPath:u})=>n.utimesSync(u,o,a))}async lutimesPromise(r,o,a){return await this.makeCallPromise(r,async()=>await this.baseFs.lutimesPromise(r,o,a),async(n,{subPath:u})=>await n.lutimesPromise(u,o,a))}lutimesSync(r,o,a){return this.makeCallSync(r,()=>this.baseFs.lutimesSync(r,o,a),(n,{subPath:u})=>n.lutimesSync(u,o,a))}async mkdirPromise(r,o){return await this.makeCallPromise(r,async()=>await this.baseFs.mkdirPromise(r,o),async(a,{subPath:n})=>await a.mkdirPromise(n,o))}mkdirSync(r,o){return this.makeCallSync(r,()=>this.baseFs.mkdirSync(r,o),(a,{subPath:n})=>a.mkdirSync(n,o))}async rmdirPromise(r,o){return await this.makeCallPromise(r,async()=>await this.baseFs.rmdirPromise(r,o),async(a,{subPath:n})=>await a.rmdirPromise(n,o))}rmdirSync(r,o){return this.makeCallSync(r,()=>this.baseFs.rmdirSync(r,o),(a,{subPath:n})=>a.rmdirSync(n,o))}async linkPromise(r,o){return await this.makeCallPromise(o,async()=>await this.baseFs.linkPromise(r,o),async(a,{subPath:n})=>await a.linkPromise(r,n))}linkSync(r,o){return this.makeCallSync(o,()=>this.baseFs.linkSync(r,o),(a,{subPath:n})=>a.linkSync(r,n))}async symlinkPromise(r,o,a){return await this.makeCallPromise(o,async()=>await this.baseFs.symlinkPromise(r,o,a),async(n,{subPath:u})=>await n.symlinkPromise(r,u))}symlinkSync(r,o,a){return this.makeCallSync(o,()=>this.baseFs.symlinkSync(r,o,a),(n,{subPath:u})=>n.symlinkSync(r,u))}async readFilePromise(r,o){return this.makeCallPromise(r,async()=>await this.baseFs.readFilePromise(r,o),async(a,{subPath:n})=>await a.readFilePromise(n,o))}readFileSync(r,o){return this.makeCallSync(r,()=>this.baseFs.readFileSync(r,o),(a,{subPath:n})=>a.readFileSync(n,o))}async readdirPromise(r,o){return await this.makeCallPromise(r,async()=>await this.baseFs.readdirPromise(r,o),async(a,{subPath:n})=>await a.readdirPromise(n,o),{requireSubpath:!1})}readdirSync(r,o){return this.makeCallSync(r,()=>this.baseFs.readdirSync(r,o),(a,{subPath:n})=>a.readdirSync(n,o),{requireSubpath:!1})}async readlinkPromise(r){return await this.makeCallPromise(r,async()=>await this.baseFs.readlinkPromise(r),async(o,{subPath:a})=>await o.readlinkPromise(a))}readlinkSync(r){return this.makeCallSync(r,()=>this.baseFs.readlinkSync(r),(o,{subPath:a})=>o.readlinkSync(a))}async truncatePromise(r,o){return await this.makeCallPromise(r,async()=>await this.baseFs.truncatePromise(r,o),async(a,{subPath:n})=>await a.truncatePromise(n,o))}truncateSync(r,o){return this.makeCallSync(r,()=>this.baseFs.truncateSync(r,o),(a,{subPath:n})=>a.truncateSync(n,o))}async ftruncatePromise(r,o){if((r&wa)!==this.magic)return this.baseFs.ftruncatePromise(r,o);let a=this.fdMap.get(r);if(typeof a>"u")throw Io("ftruncate");let[n,u]=a;return n.ftruncatePromise(u,o)}ftruncateSync(r,o){if((r&wa)!==this.magic)return this.baseFs.ftruncateSync(r,o);let a=this.fdMap.get(r);if(typeof a>"u")throw Io("ftruncateSync");let[n,u]=a;return n.ftruncateSync(u,o)}watch(r,o,a){return this.makeCallSync(r,()=>this.baseFs.watch(r,o,a),(n,{subPath:u})=>n.watch(u,o,a))}watchFile(r,o,a){return this.makeCallSync(r,()=>this.baseFs.watchFile(r,o,a),()=>ty(this,r,o,a))}unwatchFile(r,o){return this.makeCallSync(r,()=>this.baseFs.unwatchFile(r,o),()=>Lg(this,r,o))}async makeCallPromise(r,o,a,{requireSubpath:n=!0}={}){if(typeof r!="string")return await o();let u=this.resolve(r),A=this.findMount(u);return A?n&&A.subPath==="/"?await o():await this.getMountPromise(A.archivePath,async p=>await a(p,A)):await o()}makeCallSync(r,o,a,{requireSubpath:n=!0}={}){if(typeof r!="string")return o();let u=this.resolve(r),A=this.findMount(u);return!A||n&&A.subPath==="/"?o():this.getMountSync(A.archivePath,p=>a(p,A))}findMount(r){if(this.filter&&!this.filter.test(r))return null;let o="";for(;;){let a=r.substring(o.length),n=this.getMountPoint(a,o);if(!n)return null;if(o=this.pathUtils.join(o,n),!this.isMount.has(o)){if(this.notMount.has(o))continue;try{if(this.typeCheck!==null&&(this.baseFs.lstatSync(o).mode&Hg.constants.S_IFMT)!==this.typeCheck){this.notMount.add(o);continue}}catch{return null}this.isMount.add(o)}return{archivePath:o,subPath:this.pathUtils.join(Bt.root,r.substring(o.length))}}}limitOpenFiles(r){if(this.mountInstances===null)return;let o=Date.now(),a=o+this.maxAge,n=r===null?0:this.mountInstances.size-r;for(let[u,{childFs:A,expiresAt:p,refCount:h}]of this.mountInstances.entries())if(!(h!==0||A.hasOpenFileHandles?.())){if(o>=p){A.saveAndClose?.(),this.mountInstances.delete(u),n-=1;continue}else if(r===null||n<=0){a=p;break}A.saveAndClose?.(),this.mountInstances.delete(u),n-=1}this.limitOpenFilesTimeout===null&&(r===null&&this.mountInstances.size>0||r!==null)&&isFinite(a)&&(this.limitOpenFilesTimeout=setTimeout(()=>{this.limitOpenFilesTimeout=null,this.limitOpenFiles(null)},a-o).unref())}async getMountPromise(r,o){if(this.mountInstances){let a=this.mountInstances.get(r);if(!a){let n=await this.factoryPromise(this.baseFs,r);a=this.mountInstances.get(r),a||(a={childFs:n(),expiresAt:0,refCount:0})}this.mountInstances.delete(r),this.limitOpenFiles(this.maxOpenFiles-1),this.mountInstances.set(r,a),a.expiresAt=Date.now()+this.maxAge,a.refCount+=1;try{return await o(a.childFs)}finally{a.refCount-=1}}else{let a=(await this.factoryPromise(this.baseFs,r))();try{return await o(a)}finally{a.saveAndClose?.()}}}getMountSync(r,o){if(this.mountInstances){let a=this.mountInstances.get(r);return a||(a={childFs:this.factorySync(this.baseFs,r),expiresAt:0,refCount:0}),this.mountInstances.delete(r),this.limitOpenFiles(this.maxOpenFiles-1),this.mountInstances.set(r,a),a.expiresAt=Date.now()+this.maxAge,o(a.childFs)}else{let a=this.factorySync(this.baseFs,r);try{return o(a)}finally{a.saveAndClose?.()}}}}});var Zt,VR,qw,eY=Et(()=>{Ug();Ca();Zt=()=>Object.assign(new Error("ENOSYS: unsupported filesystem access"),{code:"ENOSYS"}),VR=class extends hf{constructor(){super(V)}getExtractHint(){throw Zt()}getRealPath(){throw Zt()}resolve(){throw Zt()}async openPromise(){throw Zt()}openSync(){throw Zt()}async opendirPromise(){throw Zt()}opendirSync(){throw Zt()}async readPromise(){throw Zt()}readSync(){throw Zt()}async writePromise(){throw Zt()}writeSync(){throw Zt()}async closePromise(){throw Zt()}closeSync(){throw Zt()}createWriteStream(){throw Zt()}createReadStream(){throw Zt()}async realpathPromise(){throw Zt()}realpathSync(){throw Zt()}async readdirPromise(){throw Zt()}readdirSync(){throw Zt()}async existsPromise(e){throw Zt()}existsSync(e){throw Zt()}async accessPromise(){throw Zt()}accessSync(){throw Zt()}async statPromise(){throw Zt()}statSync(){throw Zt()}async fstatPromise(e){throw Zt()}fstatSync(e){throw Zt()}async lstatPromise(e){throw Zt()}lstatSync(e){throw Zt()}async fchmodPromise(){throw Zt()}fchmodSync(){throw Zt()}async chmodPromise(){throw Zt()}chmodSync(){throw Zt()}async fchownPromise(){throw Zt()}fchownSync(){throw Zt()}async chownPromise(){throw Zt()}chownSync(){throw Zt()}async mkdirPromise(){throw Zt()}mkdirSync(){throw Zt()}async rmdirPromise(){throw Zt()}rmdirSync(){throw Zt()}async linkPromise(){throw Zt()}linkSync(){throw Zt()}async symlinkPromise(){throw Zt()}symlinkSync(){throw Zt()}async renamePromise(){throw Zt()}renameSync(){throw Zt()}async copyFilePromise(){throw Zt()}copyFileSync(){throw Zt()}async appendFilePromise(){throw Zt()}appendFileSync(){throw Zt()}async writeFilePromise(){throw Zt()}writeFileSync(){throw Zt()}async unlinkPromise(){throw Zt()}unlinkSync(){throw Zt()}async utimesPromise(){throw Zt()}utimesSync(){throw Zt()}async lutimesPromise(){throw Zt()}lutimesSync(){throw Zt()}async readFilePromise(){throw Zt()}readFileSync(){throw Zt()}async readlinkPromise(){throw Zt()}readlinkSync(){throw Zt()}async truncatePromise(){throw Zt()}truncateSync(){throw Zt()}async ftruncatePromise(e,r){throw Zt()}ftruncateSync(e,r){throw Zt()}watch(){throw Zt()}watchFile(){throw Zt()}unwatchFile(){throw Zt()}},qw=VR;qw.instance=new VR});var _p,tY=Et(()=>{gf();Ca();_p=class extends Ps{constructor(r){super(ue);this.baseFs=r}mapFromBase(r){return ue.fromPortablePath(r)}mapToBase(r){return ue.toPortablePath(r)}}});var T_e,zR,N_e,mi,rY=Et(()=>{_g();gf();Ca();T_e=/^[0-9]+$/,zR=/^(\/(?:[^/]+\/)*?(?:\$\$virtual|__virtual__))((?:\/((?:[^/]+-)?[a-f0-9]+)(?:\/([^/]+))?)?((?:\/.*)?))$/,N_e=/^([^/]+-)?[a-f0-9]+$/,mi=class extends Ps{constructor({baseFs:r=new Tn}={}){super(V);this.baseFs=r}static makeVirtualPath(r,o,a){if(V.basename(r)!=="__virtual__")throw new Error('Assertion failed: Virtual folders must be named "__virtual__"');if(!V.basename(o).match(N_e))throw new Error("Assertion failed: Virtual components must be ended by an hexadecimal hash");let u=V.relative(V.dirname(r),a).split("/"),A=0;for(;A{JR=$e(Be("buffer")),kD=Be("url"),nY=Be("util");gf();Ca();xD=class extends Ps{constructor(r){super(ue);this.baseFs=r}mapFromBase(r){return r}mapToBase(r){if(typeof r=="string")return r;if(r instanceof kD.URL)return(0,kD.fileURLToPath)(r);if(Buffer.isBuffer(r)){let o=r.toString();if(!L_e(r,o))throw new Error("Non-utf8 buffers are not supported at the moment. Please upvote the following issue if you encounter this error: https://github.com/yarnpkg/berry/issues/4942");return o}throw new Error(`Unsupported path type: ${(0,nY.inspect)(r)}`)}}});var sY,Bo,df,Hp,QD,FD,ny,Tc,Nc,O_e,M_e,U_e,__e,Gw,oY=Et(()=>{sY=Be("readline"),Bo=Symbol("kBaseFs"),df=Symbol("kFd"),Hp=Symbol("kClosePromise"),QD=Symbol("kCloseResolve"),FD=Symbol("kCloseReject"),ny=Symbol("kRefs"),Tc=Symbol("kRef"),Nc=Symbol("kUnref"),Gw=class{constructor(e,r){this[O_e]=1;this[M_e]=void 0;this[U_e]=void 0;this[__e]=void 0;this[Bo]=r,this[df]=e}get fd(){return this[df]}async appendFile(e,r){try{this[Tc](this.appendFile);let o=(typeof r=="string"?r:r?.encoding)??void 0;return await this[Bo].appendFilePromise(this.fd,e,o?{encoding:o}:void 0)}finally{this[Nc]()}}async chown(e,r){try{return this[Tc](this.chown),await this[Bo].fchownPromise(this.fd,e,r)}finally{this[Nc]()}}async chmod(e){try{return this[Tc](this.chmod),await this[Bo].fchmodPromise(this.fd,e)}finally{this[Nc]()}}createReadStream(e){return this[Bo].createReadStream(null,{...e,fd:this.fd})}createWriteStream(e){return this[Bo].createWriteStream(null,{...e,fd:this.fd})}datasync(){throw new Error("Method not implemented.")}sync(){throw new Error("Method not implemented.")}async read(e,r,o,a){try{this[Tc](this.read);let n;return Buffer.isBuffer(e)?n=e:(e??={},n=e.buffer??Buffer.alloc(16384),r=e.offset||0,o=e.length??n.byteLength,a=e.position??null),r??=0,o??=0,o===0?{bytesRead:o,buffer:n}:{bytesRead:await this[Bo].readPromise(this.fd,n,r,o,a),buffer:n}}finally{this[Nc]()}}async readFile(e){try{this[Tc](this.readFile);let r=(typeof e=="string"?e:e?.encoding)??void 0;return await this[Bo].readFilePromise(this.fd,r)}finally{this[Nc]()}}readLines(e){return(0,sY.createInterface)({input:this.createReadStream(e),crlfDelay:1/0})}async stat(e){try{return this[Tc](this.stat),await this[Bo].fstatPromise(this.fd,e)}finally{this[Nc]()}}async truncate(e){try{return this[Tc](this.truncate),await this[Bo].ftruncatePromise(this.fd,e)}finally{this[Nc]()}}utimes(e,r){throw new Error("Method not implemented.")}async writeFile(e,r){try{this[Tc](this.writeFile);let o=(typeof r=="string"?r:r?.encoding)??void 0;await this[Bo].writeFilePromise(this.fd,e,o)}finally{this[Nc]()}}async write(...e){try{if(this[Tc](this.write),ArrayBuffer.isView(e[0])){let[r,o,a,n]=e;return{bytesWritten:await this[Bo].writePromise(this.fd,r,o??void 0,a??void 0,n??void 0),buffer:r}}else{let[r,o,a]=e;return{bytesWritten:await this[Bo].writePromise(this.fd,r,o,a),buffer:r}}}finally{this[Nc]()}}async writev(e,r){try{this[Tc](this.writev);let o=0;if(typeof r<"u")for(let a of e){let n=await this.write(a,void 0,void 0,r);o+=n.bytesWritten,r+=n.bytesWritten}else for(let a of e){let n=await this.write(a);o+=n.bytesWritten}return{buffers:e,bytesWritten:o}}finally{this[Nc]()}}readv(e,r){throw new Error("Method not implemented.")}close(){if(this[df]===-1)return Promise.resolve();if(this[Hp])return this[Hp];if(this[ny]--,this[ny]===0){let e=this[df];this[df]=-1,this[Hp]=this[Bo].closePromise(e).finally(()=>{this[Hp]=void 0})}else this[Hp]=new Promise((e,r)=>{this[QD]=e,this[FD]=r}).finally(()=>{this[Hp]=void 0,this[FD]=void 0,this[QD]=void 0});return this[Hp]}[(Bo,df,O_e=ny,M_e=Hp,U_e=QD,__e=FD,Tc)](e){if(this[df]===-1){let r=new Error("file closed");throw r.code="EBADF",r.syscall=e.name,r}this[ny]++}[Nc](){if(this[ny]--,this[ny]===0){let e=this[df];this[df]=-1,this[Bo].closePromise(e).then(this[QD],this[FD])}}}});function Yw(t,e){e=new xD(e);let r=(o,a,n)=>{let u=o[a];o[a]=n,typeof u?.[iy.promisify.custom]<"u"&&(n[iy.promisify.custom]=u[iy.promisify.custom])};{r(t,"exists",(o,...a)=>{let u=typeof a[a.length-1]=="function"?a.pop():()=>{};process.nextTick(()=>{e.existsPromise(o).then(A=>{u(A)},()=>{u(!1)})})}),r(t,"read",(...o)=>{let[a,n,u,A,p,h]=o;if(o.length<=3){let C={};o.length<3?h=o[1]:(C=o[1],h=o[2]),{buffer:n=Buffer.alloc(16384),offset:u=0,length:A=n.byteLength,position:p}=C}if(u==null&&(u=0),A|=0,A===0){process.nextTick(()=>{h(null,0,n)});return}p==null&&(p=-1),process.nextTick(()=>{e.readPromise(a,n,u,A,p).then(C=>{h(null,C,n)},C=>{h(C,0,n)})})});for(let o of aY){let a=o.replace(/Promise$/,"");if(typeof t[a]>"u")continue;let n=e[o];if(typeof n>"u")continue;r(t,a,(...A)=>{let h=typeof A[A.length-1]=="function"?A.pop():()=>{};process.nextTick(()=>{n.apply(e,A).then(C=>{h(null,C)},C=>{h(C)})})})}t.realpath.native=t.realpath}{r(t,"existsSync",o=>{try{return e.existsSync(o)}catch{return!1}}),r(t,"readSync",(...o)=>{let[a,n,u,A,p]=o;return o.length<=3&&({offset:u=0,length:A=n.byteLength,position:p}=o[2]||{}),u==null&&(u=0),A|=0,A===0?0:(p==null&&(p=-1),e.readSync(a,n,u,A,p))});for(let o of H_e){let a=o;if(typeof t[a]>"u")continue;let n=e[o];typeof n>"u"||r(t,a,n.bind(e))}t.realpathSync.native=t.realpathSync}{let o=t.promises;for(let a of aY){let n=a.replace(/Promise$/,"");if(typeof o[n]>"u")continue;let u=e[a];typeof u>"u"||a!=="open"&&r(o,n,(A,...p)=>A instanceof Gw?A[n].apply(A,p):u.call(e,A,...p))}r(o,"open",async(...a)=>{let n=await e.openPromise(...a);return new Gw(n,e)})}t.read[iy.promisify.custom]=async(o,a,...n)=>({bytesRead:await e.readPromise(o,a,...n),buffer:a}),t.write[iy.promisify.custom]=async(o,a,...n)=>({bytesWritten:await e.writePromise(o,a,...n),buffer:a})}function RD(t,e){let r=Object.create(t);return Yw(r,e),r}var iy,H_e,aY,lY=Et(()=>{iy=Be("util");iY();oY();H_e=new Set(["accessSync","appendFileSync","createReadStream","createWriteStream","chmodSync","fchmodSync","chownSync","fchownSync","closeSync","copyFileSync","linkSync","lstatSync","fstatSync","lutimesSync","mkdirSync","openSync","opendirSync","readlinkSync","readFileSync","readdirSync","readlinkSync","realpathSync","renameSync","rmdirSync","statSync","symlinkSync","truncateSync","ftruncateSync","unlinkSync","unwatchFile","utimesSync","watch","watchFile","writeFileSync","writeSync"]),aY=new Set(["accessPromise","appendFilePromise","fchmodPromise","chmodPromise","fchownPromise","chownPromise","closePromise","copyFilePromise","linkPromise","fstatPromise","lstatPromise","lutimesPromise","mkdirPromise","openPromise","opendirPromise","readdirPromise","realpathPromise","readFilePromise","readdirPromise","readlinkPromise","renamePromise","rmdirPromise","statPromise","symlinkPromise","truncatePromise","ftruncatePromise","unlinkPromise","utimesPromise","writeFilePromise","writeSync"])});function cY(t){let e=Math.ceil(Math.random()*4294967296).toString(16).padStart(8,"0");return`${t}${e}`}function uY(){if(XR)return XR;let t=ue.toPortablePath(AY.default.tmpdir()),e=oe.realpathSync(t);return process.once("exit",()=>{oe.rmtempSync()}),XR={tmpdir:t,realTmpdir:e}}var AY,Lc,XR,oe,fY=Et(()=>{AY=$e(Be("os"));_g();Ca();Lc=new Set,XR=null;oe=Object.assign(new Tn,{detachTemp(t){Lc.delete(t)},mktempSync(t){let{tmpdir:e,realTmpdir:r}=uY();for(;;){let o=cY("xfs-");try{this.mkdirSync(V.join(e,o))}catch(n){if(n.code==="EEXIST")continue;throw n}let a=V.join(r,o);if(Lc.add(a),typeof t>"u")return a;try{return t(a)}finally{if(Lc.has(a)){Lc.delete(a);try{this.removeSync(a)}catch{}}}}},async mktempPromise(t){let{tmpdir:e,realTmpdir:r}=uY();for(;;){let o=cY("xfs-");try{await this.mkdirPromise(V.join(e,o))}catch(n){if(n.code==="EEXIST")continue;throw n}let a=V.join(r,o);if(Lc.add(a),typeof t>"u")return a;try{return await t(a)}finally{if(Lc.has(a)){Lc.delete(a);try{await this.removePromise(a)}catch{}}}}},async rmtempPromise(){await Promise.all(Array.from(Lc.values()).map(async t=>{try{await oe.removePromise(t,{maxRetries:0}),Lc.delete(t)}catch{}}))},rmtempSync(){for(let t of Lc)try{oe.removeSync(t),Lc.delete(t)}catch{}}})});var Ww={};Vt(Ww,{AliasFS:()=>Uu,BasePortableFakeFS:()=>Mu,CustomDir:()=>jw,CwdFS:()=>gn,FakeFS:()=>hf,Filename:()=>dr,JailFS:()=>_u,LazyFS:()=>ry,MountFS:()=>Up,NoFS:()=>qw,NodeFS:()=>Tn,PortablePath:()=>Bt,PosixFS:()=>_p,ProxiedFS:()=>Ps,VirtualFS:()=>mi,constants:()=>vi,errors:()=>ar,extendFs:()=>RD,normalizeLineEndings:()=>Mg,npath:()=>ue,opendir:()=>SD,patchFs:()=>Yw,ppath:()=>V,setupCopyIndex:()=>PD,statUtils:()=>Ea,unwatchAllFiles:()=>Og,unwatchFile:()=>Lg,watchFile:()=>ty,xfs:()=>oe});var Pt=Et(()=>{T7();BD();qR();WR();_7();KR();Ug();Ca();Ca();W7();Ug();z7();X7();Z7();$7();eY();_g();tY();gf();rY();lY();fY()});var mY=_((sbt,dY)=>{dY.exports=gY;gY.sync=q_e;var pY=Be("fs");function j_e(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 o=0;o{wY.exports=EY;EY.sync=G_e;var yY=Be("fs");function EY(t,e,r){yY.stat(t,function(o,a){r(o,o?!1:CY(a,e))})}function G_e(t,e){return CY(yY.statSync(t),e)}function CY(t,e){return t.isFile()&&Y_e(t,e)}function Y_e(t,e){var r=t.mode,o=t.uid,a=t.gid,n=e.uid!==void 0?e.uid:process.getuid&&process.getuid(),u=e.gid!==void 0?e.gid:process.getgid&&process.getgid(),A=parseInt("100",8),p=parseInt("010",8),h=parseInt("001",8),C=A|p,I=r&h||r&p&&a===u||r&A&&o===n||r&C&&n===0;return I}});var vY=_((lbt,BY)=>{var abt=Be("fs"),TD;process.platform==="win32"||global.TESTING_WINDOWS?TD=mY():TD=IY();BY.exports=ZR;ZR.sync=W_e;function ZR(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(o,a){ZR(t,e||{},function(n,u){n?a(n):o(u)})})}TD(t,e||{},function(o,a){o&&(o.code==="EACCES"||e&&e.ignoreErrors)&&(o=null,a=!1),r(o,a)})}function W_e(t,e){try{return TD.sync(t,e||{})}catch(r){if(e&&e.ignoreErrors||r.code==="EACCES")return!1;throw r}}});var QY=_((cbt,kY)=>{var sy=process.platform==="win32"||process.env.OSTYPE==="cygwin"||process.env.OSTYPE==="msys",DY=Be("path"),K_e=sy?";":":",PY=vY(),SY=t=>Object.assign(new Error(`not found: ${t}`),{code:"ENOENT"}),bY=(t,e)=>{let r=e.colon||K_e,o=t.match(/\//)||sy&&t.match(/\\/)?[""]:[...sy?[process.cwd()]:[],...(e.path||process.env.PATH||"").split(r)],a=sy?e.pathExt||process.env.PATHEXT||".EXE;.CMD;.BAT;.COM":"",n=sy?a.split(r):[""];return sy&&t.indexOf(".")!==-1&&n[0]!==""&&n.unshift(""),{pathEnv:o,pathExt:n,pathExtExe:a}},xY=(t,e,r)=>{typeof e=="function"&&(r=e,e={}),e||(e={});let{pathEnv:o,pathExt:a,pathExtExe:n}=bY(t,e),u=[],A=h=>new Promise((C,I)=>{if(h===o.length)return e.all&&u.length?C(u):I(SY(t));let v=o[h],x=/^".*"$/.test(v)?v.slice(1,-1):v,E=DY.join(x,t),R=!x&&/^\.[\\\/]/.test(t)?t.slice(0,2)+E:E;C(p(R,h,0))}),p=(h,C,I)=>new Promise((v,x)=>{if(I===a.length)return v(A(C+1));let E=a[I];PY(h+E,{pathExt:n},(R,L)=>{if(!R&&L)if(e.all)u.push(h+E);else return v(h+E);return v(p(h,C,I+1))})});return r?A(0).then(h=>r(null,h),r):A(0)},V_e=(t,e)=>{e=e||{};let{pathEnv:r,pathExt:o,pathExtExe:a}=bY(t,e),n=[];for(let u=0;u{"use strict";var FY=(t={})=>{let e=t.env||process.env;return(t.platform||process.platform)!=="win32"?"PATH":Object.keys(e).reverse().find(o=>o.toUpperCase()==="PATH")||"Path"};$R.exports=FY;$R.exports.default=FY});var OY=_((Abt,LY)=>{"use strict";var TY=Be("path"),z_e=QY(),J_e=RY();function NY(t,e){let r=t.options.env||process.env,o=process.cwd(),a=t.options.cwd!=null,n=a&&process.chdir!==void 0&&!process.chdir.disabled;if(n)try{process.chdir(t.options.cwd)}catch{}let u;try{u=z_e.sync(t.command,{path:r[J_e({env:r})],pathExt:e?TY.delimiter:void 0})}catch{}finally{n&&process.chdir(o)}return u&&(u=TY.resolve(a?t.options.cwd:"",u)),u}function X_e(t){return NY(t)||NY(t,!0)}LY.exports=X_e});var MY=_((fbt,tT)=>{"use strict";var eT=/([()\][%!^"`<>&|;, *?])/g;function Z_e(t){return t=t.replace(eT,"^$1"),t}function $_e(t,e){return t=`${t}`,t=t.replace(/(\\*)"/g,'$1$1\\"'),t=t.replace(/(\\*)$/,"$1$1"),t=`"${t}"`,t=t.replace(eT,"^$1"),e&&(t=t.replace(eT,"^$1")),t}tT.exports.command=Z_e;tT.exports.argument=$_e});var _Y=_((pbt,UY)=>{"use strict";UY.exports=/^#!(.*)/});var jY=_((hbt,HY)=>{"use strict";var e8e=_Y();HY.exports=(t="")=>{let e=t.match(e8e);if(!e)return null;let[r,o]=e[0].replace(/#! ?/,"").split(" "),a=r.split("/").pop();return a==="env"?o:o?`${a} ${o}`:a}});var GY=_((gbt,qY)=>{"use strict";var rT=Be("fs"),t8e=jY();function r8e(t){let r=Buffer.alloc(150),o;try{o=rT.openSync(t,"r"),rT.readSync(o,r,0,150,0),rT.closeSync(o)}catch{}return t8e(r.toString())}qY.exports=r8e});var VY=_((dbt,KY)=>{"use strict";var n8e=Be("path"),YY=OY(),WY=MY(),i8e=GY(),s8e=process.platform==="win32",o8e=/\.(?:com|exe)$/i,a8e=/node_modules[\\/].bin[\\/][^\\/]+\.cmd$/i;function l8e(t){t.file=YY(t);let e=t.file&&i8e(t.file);return e?(t.args.unshift(t.file),t.command=e,YY(t)):t.file}function c8e(t){if(!s8e)return t;let e=l8e(t),r=!o8e.test(e);if(t.options.forceShell||r){let o=a8e.test(e);t.command=n8e.normalize(t.command),t.command=WY.command(t.command),t.args=t.args.map(n=>WY.argument(n,o));let a=[t.command].concat(t.args).join(" ");t.args=["/d","/s","/c",`"${a}"`],t.command=process.env.comspec||"cmd.exe",t.options.windowsVerbatimArguments=!0}return t}function u8e(t,e,r){e&&!Array.isArray(e)&&(r=e,e=null),e=e?e.slice(0):[],r=Object.assign({},r);let o={command:t,args:e,options:r,file:void 0,original:{command:t,args:e}};return r.shell?o:c8e(o)}KY.exports=u8e});var XY=_((mbt,JY)=>{"use strict";var nT=process.platform==="win32";function iT(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 A8e(t,e){if(!nT)return;let r=t.emit;t.emit=function(o,a){if(o==="exit"){let n=zY(a,e,"spawn");if(n)return r.call(t,"error",n)}return r.apply(t,arguments)}}function zY(t,e){return nT&&t===1&&!e.file?iT(e.original,"spawn"):null}function f8e(t,e){return nT&&t===1&&!e.file?iT(e.original,"spawnSync"):null}JY.exports={hookChildProcess:A8e,verifyENOENT:zY,verifyENOENTSync:f8e,notFoundError:iT}});var aT=_((ybt,oy)=>{"use strict";var ZY=Be("child_process"),sT=VY(),oT=XY();function $Y(t,e,r){let o=sT(t,e,r),a=ZY.spawn(o.command,o.args,o.options);return oT.hookChildProcess(a,o),a}function p8e(t,e,r){let o=sT(t,e,r),a=ZY.spawnSync(o.command,o.args,o.options);return a.error=a.error||oT.verifyENOENTSync(a.status,o),a}oy.exports=$Y;oy.exports.spawn=$Y;oy.exports.sync=p8e;oy.exports._parse=sT;oy.exports._enoent=oT});var tW=_((Ebt,eW)=>{"use strict";function h8e(t,e){function r(){this.constructor=t}r.prototype=e.prototype,t.prototype=new r}function jg(t,e,r,o){this.message=t,this.expected=e,this.found=r,this.location=o,this.name="SyntaxError",typeof Error.captureStackTrace=="function"&&Error.captureStackTrace(this,jg)}h8e(jg,Error);jg.buildMessage=function(t,e){var r={literal:function(h){return'"'+a(h.text)+'"'},class:function(h){var C="",I;for(I=0;I0){for(I=1,v=1;I>",S=Br(">>",!1),y=">&",F=Br(">&",!1),J=">",X=Br(">",!1),Z="<<<",ie=Br("<<<",!1),Pe="<&",Ne=Br("<&",!1),ot="<",dt=Br("<",!1),jt=function(N){return{type:"argument",segments:[].concat(...N)}},$t=function(N){return N},bt="$'",an=Br("$'",!1),Qr="'",mr=Br("'",!1),br=function(N){return[{type:"text",text:N}]},Wr='""',Kn=Br('""',!1),Ns=function(){return{type:"text",text:""}},Ti='"',ps=Br('"',!1),io=function(N){return N},Si=function(N){return{type:"arithmetic",arithmetic:N,quoted:!0}},Ls=function(N){return{type:"shell",shell:N,quoted:!0}},so=function(N){return{type:"variable",...N,quoted:!0}},cc=function(N){return{type:"text",text:N}},cu=function(N){return{type:"arithmetic",arithmetic:N,quoted:!1}},op=function(N){return{type:"shell",shell:N,quoted:!1}},ap=function(N){return{type:"variable",...N,quoted:!1}},Os=function(N){return{type:"glob",pattern:N}},Dn=/^[^']/,oo=Cs(["'"],!0,!1),Ms=function(N){return N.join("")},ml=/^[^$"]/,yl=Cs(["$",'"'],!0,!1),ao=`\\ +`,Vn=Br(`\\ +`,!1),On=function(){return""},Ni="\\",Mn=Br("\\",!1),_i=/^[\\$"`]/,tr=Cs(["\\","$",'"',"`"],!1,!1),Oe=function(N){return N},ii="\\a",Ma=Br("\\a",!1),hr=function(){return"a"},uc="\\b",uu=Br("\\b",!1),Ac=function(){return"\b"},El=/^[Ee]/,vA=Cs(["E","e"],!1,!1),Au=function(){return"\x1B"},Ce="\\f",Rt=Br("\\f",!1),fc=function(){return"\f"},Hi="\\n",fu=Br("\\n",!1),Yt=function(){return` +`},Cl="\\r",DA=Br("\\r",!1),lp=function(){return"\r"},pc="\\t",PA=Br("\\t",!1),Qn=function(){return" "},hi="\\v",hc=Br("\\v",!1),SA=function(){return"\v"},sa=/^[\\'"?]/,Li=Cs(["\\","'",'"',"?"],!1,!1),_o=function(N){return String.fromCharCode(parseInt(N,16))},Ze="\\x",lo=Br("\\x",!1),gc="\\u",pu=Br("\\u",!1),ji="\\U",hu=Br("\\U",!1),bA=function(N){return String.fromCodePoint(parseInt(N,16))},Ua=/^[0-7]/,dc=Cs([["0","7"]],!1,!1),hs=/^[0-9a-fA-f]/,_t=Cs([["0","9"],["a","f"],["A","f"]],!1,!1),Fn=lg(),Ci="{}",oa=Br("{}",!1),co=function(){return"{}"},Us="-",aa=Br("-",!1),la="+",Ho=Br("+",!1),wi=".",gs=Br(".",!1),ds=function(N,K,re){return{type:"number",value:(N==="-"?-1:1)*parseFloat(K.join("")+"."+re.join(""))}},ms=function(N,K){return{type:"number",value:(N==="-"?-1:1)*parseInt(K.join(""))}},_s=function(N){return{type:"variable",...N}},Un=function(N){return{type:"variable",name:N}},Pn=function(N){return N},ys="*",We=Br("*",!1),tt="/",It=Br("/",!1),nr=function(N,K,re){return{type:K==="*"?"multiplication":"division",right:re}},$=function(N,K){return K.reduce((re,pe)=>({left:re,...pe}),N)},me=function(N,K,re){return{type:K==="+"?"addition":"subtraction",right:re}},Le="$((",ft=Br("$((",!1),pt="))",Tt=Br("))",!1),er=function(N){return N},Zr="$(",qi=Br("$(",!1),es=function(N){return N},bi="${",jo=Br("${",!1),xA=":-",kA=Br(":-",!1),cp=function(N,K){return{name:N,defaultValue:K}},rg=":-}",gu=Br(":-}",!1),ng=function(N){return{name:N,defaultValue:[]}},du=":+",uo=Br(":+",!1),QA=function(N,K){return{name:N,alternativeValue:K}},mc=":+}",ca=Br(":+}",!1),ig=function(N){return{name:N,alternativeValue:[]}},yc=function(N){return{name:N}},Dm="$",sg=Br("$",!1),$n=function(N){return e.isGlobPattern(N)},up=function(N){return N},og=/^[a-zA-Z0-9_]/,FA=Cs([["a","z"],["A","Z"],["0","9"],"_"],!1,!1),Hs=function(){return ag()},mu=/^[$@*?#a-zA-Z0-9_\-]/,Ha=Cs(["$","@","*","?","#",["a","z"],["A","Z"],["0","9"],"_","-"],!1,!1),Gi=/^[()}<>$|&; \t"']/,ua=Cs(["(",")","}","<",">","$","|","&",";"," "," ",'"',"'"],!1,!1),yu=/^[<>&; \t"']/,Es=Cs(["<",">","&",";"," "," ",'"',"'"],!1,!1),Ec=/^[ \t]/,Cc=Cs([" "," "],!1,!1),G=0,Dt=0,wl=[{line:1,column:1}],xi=0,wc=[],ct=0,Eu;if("startRule"in e){if(!(e.startRule in o))throw new Error(`Can't start parsing from rule "`+e.startRule+'".');a=o[e.startRule]}function ag(){return t.substring(Dt,G)}function dw(){return Ic(Dt,G)}function RA(N,K){throw K=K!==void 0?K:Ic(Dt,G),Ag([ug(N)],t.substring(Dt,G),K)}function Ap(N,K){throw K=K!==void 0?K:Ic(Dt,G),Pm(N,K)}function Br(N,K){return{type:"literal",text:N,ignoreCase:K}}function Cs(N,K,re){return{type:"class",parts:N,inverted:K,ignoreCase:re}}function lg(){return{type:"any"}}function cg(){return{type:"end"}}function ug(N){return{type:"other",description:N}}function fp(N){var K=wl[N],re;if(K)return K;for(re=N-1;!wl[re];)re--;for(K=wl[re],K={line:K.line,column:K.column};rexi&&(xi=G,wc=[]),wc.push(N))}function Pm(N,K){return new jg(N,null,null,K)}function Ag(N,K,re){return new jg(jg.buildMessage(N,K),N,K,re)}function fg(){var N,K,re;for(N=G,K=[],re=Qt();re!==r;)K.push(re),re=Qt();return K!==r?(re=Cu(),re===r&&(re=null),re!==r?(Dt=N,K=n(re),N=K):(G=N,N=r)):(G=N,N=r),N}function Cu(){var N,K,re,pe,Je;if(N=G,K=wu(),K!==r){for(re=[],pe=Qt();pe!==r;)re.push(pe),pe=Qt();re!==r?(pe=pg(),pe!==r?(Je=Sm(),Je===r&&(Je=null),Je!==r?(Dt=N,K=u(K,pe,Je),N=K):(G=N,N=r)):(G=N,N=r)):(G=N,N=r)}else G=N,N=r;if(N===r)if(N=G,K=wu(),K!==r){for(re=[],pe=Qt();pe!==r;)re.push(pe),pe=Qt();re!==r?(pe=pg(),pe===r&&(pe=null),pe!==r?(Dt=N,K=A(K,pe),N=K):(G=N,N=r)):(G=N,N=r)}else G=N,N=r;return N}function Sm(){var N,K,re,pe,Je;for(N=G,K=[],re=Qt();re!==r;)K.push(re),re=Qt();if(K!==r)if(re=Cu(),re!==r){for(pe=[],Je=Qt();Je!==r;)pe.push(Je),Je=Qt();pe!==r?(Dt=N,K=p(re),N=K):(G=N,N=r)}else G=N,N=r;else G=N,N=r;return N}function pg(){var N;return t.charCodeAt(G)===59?(N=h,G++):(N=r,ct===0&&Ct(C)),N===r&&(t.charCodeAt(G)===38?(N=I,G++):(N=r,ct===0&&Ct(v))),N}function wu(){var N,K,re;return N=G,K=Aa(),K!==r?(re=mw(),re===r&&(re=null),re!==r?(Dt=N,K=x(K,re),N=K):(G=N,N=r)):(G=N,N=r),N}function mw(){var N,K,re,pe,Je,mt,fr;for(N=G,K=[],re=Qt();re!==r;)K.push(re),re=Qt();if(K!==r)if(re=bm(),re!==r){for(pe=[],Je=Qt();Je!==r;)pe.push(Je),Je=Qt();if(pe!==r)if(Je=wu(),Je!==r){for(mt=[],fr=Qt();fr!==r;)mt.push(fr),fr=Qt();mt!==r?(Dt=N,K=E(re,Je),N=K):(G=N,N=r)}else G=N,N=r;else G=N,N=r}else G=N,N=r;else G=N,N=r;return N}function bm(){var N;return t.substr(G,2)===R?(N=R,G+=2):(N=r,ct===0&&Ct(L)),N===r&&(t.substr(G,2)===U?(N=U,G+=2):(N=r,ct===0&&Ct(z))),N}function Aa(){var N,K,re;return N=G,K=hg(),K!==r?(re=Bc(),re===r&&(re=null),re!==r?(Dt=N,K=te(K,re),N=K):(G=N,N=r)):(G=N,N=r),N}function Bc(){var N,K,re,pe,Je,mt,fr;for(N=G,K=[],re=Qt();re!==r;)K.push(re),re=Qt();if(K!==r)if(re=Il(),re!==r){for(pe=[],Je=Qt();Je!==r;)pe.push(Je),Je=Qt();if(pe!==r)if(Je=Aa(),Je!==r){for(mt=[],fr=Qt();fr!==r;)mt.push(fr),fr=Qt();mt!==r?(Dt=N,K=le(re,Je),N=K):(G=N,N=r)}else G=N,N=r;else G=N,N=r}else G=N,N=r;else G=N,N=r;return N}function Il(){var N;return t.substr(G,2)===he?(N=he,G+=2):(N=r,ct===0&&Ct(Ae)),N===r&&(t.charCodeAt(G)===124?(N=ye,G++):(N=r,ct===0&&Ct(ae))),N}function Iu(){var N,K,re,pe,Je,mt;if(N=G,K=yg(),K!==r)if(t.charCodeAt(G)===61?(re=Ie,G++):(re=r,ct===0&&Ct(Fe)),re!==r)if(pe=qo(),pe!==r){for(Je=[],mt=Qt();mt!==r;)Je.push(mt),mt=Qt();Je!==r?(Dt=N,K=g(K,pe),N=K):(G=N,N=r)}else G=N,N=r;else G=N,N=r;else G=N,N=r;if(N===r)if(N=G,K=yg(),K!==r)if(t.charCodeAt(G)===61?(re=Ie,G++):(re=r,ct===0&&Ct(Fe)),re!==r){for(pe=[],Je=Qt();Je!==r;)pe.push(Je),Je=Qt();pe!==r?(Dt=N,K=Ee(K),N=K):(G=N,N=r)}else G=N,N=r;else G=N,N=r;return N}function hg(){var N,K,re,pe,Je,mt,fr,Cr,yn,oi,Oi;for(N=G,K=[],re=Qt();re!==r;)K.push(re),re=Qt();if(K!==r)if(t.charCodeAt(G)===40?(re=De,G++):(re=r,ct===0&&Ct(ce)),re!==r){for(pe=[],Je=Qt();Je!==r;)pe.push(Je),Je=Qt();if(pe!==r)if(Je=Cu(),Je!==r){for(mt=[],fr=Qt();fr!==r;)mt.push(fr),fr=Qt();if(mt!==r)if(t.charCodeAt(G)===41?(fr=ne,G++):(fr=r,ct===0&&Ct(ee)),fr!==r){for(Cr=[],yn=Qt();yn!==r;)Cr.push(yn),yn=Qt();if(Cr!==r){for(yn=[],oi=ja();oi!==r;)yn.push(oi),oi=ja();if(yn!==r){for(oi=[],Oi=Qt();Oi!==r;)oi.push(Oi),Oi=Qt();oi!==r?(Dt=N,K=we(Je,yn),N=K):(G=N,N=r)}else G=N,N=r}else G=N,N=r}else G=N,N=r;else G=N,N=r}else G=N,N=r;else G=N,N=r}else G=N,N=r;else G=N,N=r;if(N===r){for(N=G,K=[],re=Qt();re!==r;)K.push(re),re=Qt();if(K!==r)if(t.charCodeAt(G)===123?(re=xe,G++):(re=r,ct===0&&Ct(ht)),re!==r){for(pe=[],Je=Qt();Je!==r;)pe.push(Je),Je=Qt();if(pe!==r)if(Je=Cu(),Je!==r){for(mt=[],fr=Qt();fr!==r;)mt.push(fr),fr=Qt();if(mt!==r)if(t.charCodeAt(G)===125?(fr=H,G++):(fr=r,ct===0&&Ct(lt)),fr!==r){for(Cr=[],yn=Qt();yn!==r;)Cr.push(yn),yn=Qt();if(Cr!==r){for(yn=[],oi=ja();oi!==r;)yn.push(oi),oi=ja();if(yn!==r){for(oi=[],Oi=Qt();Oi!==r;)oi.push(Oi),Oi=Qt();oi!==r?(Dt=N,K=Te(Je,yn),N=K):(G=N,N=r)}else G=N,N=r}else G=N,N=r}else G=N,N=r;else G=N,N=r}else G=N,N=r;else G=N,N=r}else G=N,N=r;else G=N,N=r;if(N===r){for(N=G,K=[],re=Qt();re!==r;)K.push(re),re=Qt();if(K!==r){for(re=[],pe=Iu();pe!==r;)re.push(pe),pe=Iu();if(re!==r){for(pe=[],Je=Qt();Je!==r;)pe.push(Je),Je=Qt();if(pe!==r){if(Je=[],mt=pp(),mt!==r)for(;mt!==r;)Je.push(mt),mt=pp();else Je=r;if(Je!==r){for(mt=[],fr=Qt();fr!==r;)mt.push(fr),fr=Qt();mt!==r?(Dt=N,K=ke(re,Je),N=K):(G=N,N=r)}else G=N,N=r}else G=N,N=r}else G=N,N=r}else G=N,N=r;if(N===r){for(N=G,K=[],re=Qt();re!==r;)K.push(re),re=Qt();if(K!==r){if(re=[],pe=Iu(),pe!==r)for(;pe!==r;)re.push(pe),pe=Iu();else re=r;if(re!==r){for(pe=[],Je=Qt();Je!==r;)pe.push(Je),Je=Qt();pe!==r?(Dt=N,K=be(re),N=K):(G=N,N=r)}else G=N,N=r}else G=N,N=r}}}return N}function TA(){var N,K,re,pe,Je;for(N=G,K=[],re=Qt();re!==r;)K.push(re),re=Qt();if(K!==r){if(re=[],pe=hp(),pe!==r)for(;pe!==r;)re.push(pe),pe=hp();else re=r;if(re!==r){for(pe=[],Je=Qt();Je!==r;)pe.push(Je),Je=Qt();pe!==r?(Dt=N,K=_e(re),N=K):(G=N,N=r)}else G=N,N=r}else G=N,N=r;return N}function pp(){var N,K,re;for(N=G,K=[],re=Qt();re!==r;)K.push(re),re=Qt();if(K!==r?(re=ja(),re!==r?(Dt=N,K=Re(re),N=K):(G=N,N=r)):(G=N,N=r),N===r){for(N=G,K=[],re=Qt();re!==r;)K.push(re),re=Qt();K!==r?(re=hp(),re!==r?(Dt=N,K=Re(re),N=K):(G=N,N=r)):(G=N,N=r)}return N}function ja(){var N,K,re,pe,Je;for(N=G,K=[],re=Qt();re!==r;)K.push(re),re=Qt();return K!==r?(ze.test(t.charAt(G))?(re=t.charAt(G),G++):(re=r,ct===0&&Ct(He)),re===r&&(re=null),re!==r?(pe=gg(),pe!==r?(Je=hp(),Je!==r?(Dt=N,K=b(re,pe,Je),N=K):(G=N,N=r)):(G=N,N=r)):(G=N,N=r)):(G=N,N=r),N}function gg(){var N;return t.substr(G,2)===w?(N=w,G+=2):(N=r,ct===0&&Ct(S)),N===r&&(t.substr(G,2)===y?(N=y,G+=2):(N=r,ct===0&&Ct(F)),N===r&&(t.charCodeAt(G)===62?(N=J,G++):(N=r,ct===0&&Ct(X)),N===r&&(t.substr(G,3)===Z?(N=Z,G+=3):(N=r,ct===0&&Ct(ie)),N===r&&(t.substr(G,2)===Pe?(N=Pe,G+=2):(N=r,ct===0&&Ct(Ne)),N===r&&(t.charCodeAt(G)===60?(N=ot,G++):(N=r,ct===0&&Ct(dt))))))),N}function hp(){var N,K,re;for(N=G,K=[],re=Qt();re!==r;)K.push(re),re=Qt();return K!==r?(re=qo(),re!==r?(Dt=N,K=Re(re),N=K):(G=N,N=r)):(G=N,N=r),N}function qo(){var N,K,re;if(N=G,K=[],re=ws(),re!==r)for(;re!==r;)K.push(re),re=ws();else K=r;return K!==r&&(Dt=N,K=jt(K)),N=K,N}function ws(){var N,K;return N=G,K=Ii(),K!==r&&(Dt=N,K=$t(K)),N=K,N===r&&(N=G,K=xm(),K!==r&&(Dt=N,K=$t(K)),N=K,N===r&&(N=G,K=km(),K!==r&&(Dt=N,K=$t(K)),N=K,N===r&&(N=G,K=Go(),K!==r&&(Dt=N,K=$t(K)),N=K))),N}function Ii(){var N,K,re,pe;return N=G,t.substr(G,2)===bt?(K=bt,G+=2):(K=r,ct===0&&Ct(an)),K!==r?(re=ln(),re!==r?(t.charCodeAt(G)===39?(pe=Qr,G++):(pe=r,ct===0&&Ct(mr)),pe!==r?(Dt=N,K=br(re),N=K):(G=N,N=r)):(G=N,N=r)):(G=N,N=r),N}function xm(){var N,K,re,pe;return N=G,t.charCodeAt(G)===39?(K=Qr,G++):(K=r,ct===0&&Ct(mr)),K!==r?(re=dp(),re!==r?(t.charCodeAt(G)===39?(pe=Qr,G++):(pe=r,ct===0&&Ct(mr)),pe!==r?(Dt=N,K=br(re),N=K):(G=N,N=r)):(G=N,N=r)):(G=N,N=r),N}function km(){var N,K,re,pe;if(N=G,t.substr(G,2)===Wr?(K=Wr,G+=2):(K=r,ct===0&&Ct(Kn)),K!==r&&(Dt=N,K=Ns()),N=K,N===r)if(N=G,t.charCodeAt(G)===34?(K=Ti,G++):(K=r,ct===0&&Ct(ps)),K!==r){for(re=[],pe=NA();pe!==r;)re.push(pe),pe=NA();re!==r?(t.charCodeAt(G)===34?(pe=Ti,G++):(pe=r,ct===0&&Ct(ps)),pe!==r?(Dt=N,K=io(re),N=K):(G=N,N=r)):(G=N,N=r)}else G=N,N=r;return N}function Go(){var N,K,re;if(N=G,K=[],re=gp(),re!==r)for(;re!==r;)K.push(re),re=gp();else K=r;return K!==r&&(Dt=N,K=io(K)),N=K,N}function NA(){var N,K;return N=G,K=Gr(),K!==r&&(Dt=N,K=Si(K)),N=K,N===r&&(N=G,K=mp(),K!==r&&(Dt=N,K=Ls(K)),N=K,N===r&&(N=G,K=Dc(),K!==r&&(Dt=N,K=so(K)),N=K,N===r&&(N=G,K=dg(),K!==r&&(Dt=N,K=cc(K)),N=K))),N}function gp(){var N,K;return N=G,K=Gr(),K!==r&&(Dt=N,K=cu(K)),N=K,N===r&&(N=G,K=mp(),K!==r&&(Dt=N,K=op(K)),N=K,N===r&&(N=G,K=Dc(),K!==r&&(Dt=N,K=ap(K)),N=K,N===r&&(N=G,K=yw(),K!==r&&(Dt=N,K=Os(K)),N=K,N===r&&(N=G,K=pa(),K!==r&&(Dt=N,K=cc(K)),N=K)))),N}function dp(){var N,K,re;for(N=G,K=[],Dn.test(t.charAt(G))?(re=t.charAt(G),G++):(re=r,ct===0&&Ct(oo));re!==r;)K.push(re),Dn.test(t.charAt(G))?(re=t.charAt(G),G++):(re=r,ct===0&&Ct(oo));return K!==r&&(Dt=N,K=Ms(K)),N=K,N}function dg(){var N,K,re;if(N=G,K=[],re=fa(),re===r&&(ml.test(t.charAt(G))?(re=t.charAt(G),G++):(re=r,ct===0&&Ct(yl))),re!==r)for(;re!==r;)K.push(re),re=fa(),re===r&&(ml.test(t.charAt(G))?(re=t.charAt(G),G++):(re=r,ct===0&&Ct(yl)));else K=r;return K!==r&&(Dt=N,K=Ms(K)),N=K,N}function fa(){var N,K,re;return N=G,t.substr(G,2)===ao?(K=ao,G+=2):(K=r,ct===0&&Ct(Vn)),K!==r&&(Dt=N,K=On()),N=K,N===r&&(N=G,t.charCodeAt(G)===92?(K=Ni,G++):(K=r,ct===0&&Ct(Mn)),K!==r?(_i.test(t.charAt(G))?(re=t.charAt(G),G++):(re=r,ct===0&&Ct(tr)),re!==r?(Dt=N,K=Oe(re),N=K):(G=N,N=r)):(G=N,N=r)),N}function ln(){var N,K,re;for(N=G,K=[],re=Ao(),re===r&&(Dn.test(t.charAt(G))?(re=t.charAt(G),G++):(re=r,ct===0&&Ct(oo)));re!==r;)K.push(re),re=Ao(),re===r&&(Dn.test(t.charAt(G))?(re=t.charAt(G),G++):(re=r,ct===0&&Ct(oo)));return K!==r&&(Dt=N,K=Ms(K)),N=K,N}function Ao(){var N,K,re;return N=G,t.substr(G,2)===ii?(K=ii,G+=2):(K=r,ct===0&&Ct(Ma)),K!==r&&(Dt=N,K=hr()),N=K,N===r&&(N=G,t.substr(G,2)===uc?(K=uc,G+=2):(K=r,ct===0&&Ct(uu)),K!==r&&(Dt=N,K=Ac()),N=K,N===r&&(N=G,t.charCodeAt(G)===92?(K=Ni,G++):(K=r,ct===0&&Ct(Mn)),K!==r?(El.test(t.charAt(G))?(re=t.charAt(G),G++):(re=r,ct===0&&Ct(vA)),re!==r?(Dt=N,K=Au(),N=K):(G=N,N=r)):(G=N,N=r),N===r&&(N=G,t.substr(G,2)===Ce?(K=Ce,G+=2):(K=r,ct===0&&Ct(Rt)),K!==r&&(Dt=N,K=fc()),N=K,N===r&&(N=G,t.substr(G,2)===Hi?(K=Hi,G+=2):(K=r,ct===0&&Ct(fu)),K!==r&&(Dt=N,K=Yt()),N=K,N===r&&(N=G,t.substr(G,2)===Cl?(K=Cl,G+=2):(K=r,ct===0&&Ct(DA)),K!==r&&(Dt=N,K=lp()),N=K,N===r&&(N=G,t.substr(G,2)===pc?(K=pc,G+=2):(K=r,ct===0&&Ct(PA)),K!==r&&(Dt=N,K=Qn()),N=K,N===r&&(N=G,t.substr(G,2)===hi?(K=hi,G+=2):(K=r,ct===0&&Ct(hc)),K!==r&&(Dt=N,K=SA()),N=K,N===r&&(N=G,t.charCodeAt(G)===92?(K=Ni,G++):(K=r,ct===0&&Ct(Mn)),K!==r?(sa.test(t.charAt(G))?(re=t.charAt(G),G++):(re=r,ct===0&&Ct(Li)),re!==r?(Dt=N,K=Oe(re),N=K):(G=N,N=r)):(G=N,N=r),N===r&&(N=LA()))))))))),N}function LA(){var N,K,re,pe,Je,mt,fr,Cr,yn,oi,Oi,Cg;return N=G,t.charCodeAt(G)===92?(K=Ni,G++):(K=r,ct===0&&Ct(Mn)),K!==r?(re=qa(),re!==r?(Dt=N,K=_o(re),N=K):(G=N,N=r)):(G=N,N=r),N===r&&(N=G,t.substr(G,2)===Ze?(K=Ze,G+=2):(K=r,ct===0&&Ct(lo)),K!==r?(re=G,pe=G,Je=qa(),Je!==r?(mt=si(),mt!==r?(Je=[Je,mt],pe=Je):(G=pe,pe=r)):(G=pe,pe=r),pe===r&&(pe=qa()),pe!==r?re=t.substring(re,G):re=pe,re!==r?(Dt=N,K=_o(re),N=K):(G=N,N=r)):(G=N,N=r),N===r&&(N=G,t.substr(G,2)===gc?(K=gc,G+=2):(K=r,ct===0&&Ct(pu)),K!==r?(re=G,pe=G,Je=si(),Je!==r?(mt=si(),mt!==r?(fr=si(),fr!==r?(Cr=si(),Cr!==r?(Je=[Je,mt,fr,Cr],pe=Je):(G=pe,pe=r)):(G=pe,pe=r)):(G=pe,pe=r)):(G=pe,pe=r),pe!==r?re=t.substring(re,G):re=pe,re!==r?(Dt=N,K=_o(re),N=K):(G=N,N=r)):(G=N,N=r),N===r&&(N=G,t.substr(G,2)===ji?(K=ji,G+=2):(K=r,ct===0&&Ct(hu)),K!==r?(re=G,pe=G,Je=si(),Je!==r?(mt=si(),mt!==r?(fr=si(),fr!==r?(Cr=si(),Cr!==r?(yn=si(),yn!==r?(oi=si(),oi!==r?(Oi=si(),Oi!==r?(Cg=si(),Cg!==r?(Je=[Je,mt,fr,Cr,yn,oi,Oi,Cg],pe=Je):(G=pe,pe=r)):(G=pe,pe=r)):(G=pe,pe=r)):(G=pe,pe=r)):(G=pe,pe=r)):(G=pe,pe=r)):(G=pe,pe=r)):(G=pe,pe=r),pe!==r?re=t.substring(re,G):re=pe,re!==r?(Dt=N,K=bA(re),N=K):(G=N,N=r)):(G=N,N=r)))),N}function qa(){var N;return Ua.test(t.charAt(G))?(N=t.charAt(G),G++):(N=r,ct===0&&Ct(dc)),N}function si(){var N;return hs.test(t.charAt(G))?(N=t.charAt(G),G++):(N=r,ct===0&&Ct(_t)),N}function pa(){var N,K,re,pe,Je;if(N=G,K=[],re=G,t.charCodeAt(G)===92?(pe=Ni,G++):(pe=r,ct===0&&Ct(Mn)),pe!==r?(t.length>G?(Je=t.charAt(G),G++):(Je=r,ct===0&&Ct(Fn)),Je!==r?(Dt=re,pe=Oe(Je),re=pe):(G=re,re=r)):(G=re,re=r),re===r&&(re=G,t.substr(G,2)===Ci?(pe=Ci,G+=2):(pe=r,ct===0&&Ct(oa)),pe!==r&&(Dt=re,pe=co()),re=pe,re===r&&(re=G,pe=G,ct++,Je=Qm(),ct--,Je===r?pe=void 0:(G=pe,pe=r),pe!==r?(t.length>G?(Je=t.charAt(G),G++):(Je=r,ct===0&&Ct(Fn)),Je!==r?(Dt=re,pe=Oe(Je),re=pe):(G=re,re=r)):(G=re,re=r))),re!==r)for(;re!==r;)K.push(re),re=G,t.charCodeAt(G)===92?(pe=Ni,G++):(pe=r,ct===0&&Ct(Mn)),pe!==r?(t.length>G?(Je=t.charAt(G),G++):(Je=r,ct===0&&Ct(Fn)),Je!==r?(Dt=re,pe=Oe(Je),re=pe):(G=re,re=r)):(G=re,re=r),re===r&&(re=G,t.substr(G,2)===Ci?(pe=Ci,G+=2):(pe=r,ct===0&&Ct(oa)),pe!==r&&(Dt=re,pe=co()),re=pe,re===r&&(re=G,pe=G,ct++,Je=Qm(),ct--,Je===r?pe=void 0:(G=pe,pe=r),pe!==r?(t.length>G?(Je=t.charAt(G),G++):(Je=r,ct===0&&Ct(Fn)),Je!==r?(Dt=re,pe=Oe(Je),re=pe):(G=re,re=r)):(G=re,re=r)));else K=r;return K!==r&&(Dt=N,K=Ms(K)),N=K,N}function vc(){var N,K,re,pe,Je,mt;if(N=G,t.charCodeAt(G)===45?(K=Us,G++):(K=r,ct===0&&Ct(aa)),K===r&&(t.charCodeAt(G)===43?(K=la,G++):(K=r,ct===0&&Ct(Ho))),K===r&&(K=null),K!==r){if(re=[],ze.test(t.charAt(G))?(pe=t.charAt(G),G++):(pe=r,ct===0&&Ct(He)),pe!==r)for(;pe!==r;)re.push(pe),ze.test(t.charAt(G))?(pe=t.charAt(G),G++):(pe=r,ct===0&&Ct(He));else re=r;if(re!==r)if(t.charCodeAt(G)===46?(pe=wi,G++):(pe=r,ct===0&&Ct(gs)),pe!==r){if(Je=[],ze.test(t.charAt(G))?(mt=t.charAt(G),G++):(mt=r,ct===0&&Ct(He)),mt!==r)for(;mt!==r;)Je.push(mt),ze.test(t.charAt(G))?(mt=t.charAt(G),G++):(mt=r,ct===0&&Ct(He));else Je=r;Je!==r?(Dt=N,K=ds(K,re,Je),N=K):(G=N,N=r)}else G=N,N=r;else G=N,N=r}else G=N,N=r;if(N===r){if(N=G,t.charCodeAt(G)===45?(K=Us,G++):(K=r,ct===0&&Ct(aa)),K===r&&(t.charCodeAt(G)===43?(K=la,G++):(K=r,ct===0&&Ct(Ho))),K===r&&(K=null),K!==r){if(re=[],ze.test(t.charAt(G))?(pe=t.charAt(G),G++):(pe=r,ct===0&&Ct(He)),pe!==r)for(;pe!==r;)re.push(pe),ze.test(t.charAt(G))?(pe=t.charAt(G),G++):(pe=r,ct===0&&Ct(He));else re=r;re!==r?(Dt=N,K=ms(K,re),N=K):(G=N,N=r)}else G=N,N=r;if(N===r&&(N=G,K=Dc(),K!==r&&(Dt=N,K=_s(K)),N=K,N===r&&(N=G,K=Ga(),K!==r&&(Dt=N,K=Un(K)),N=K,N===r)))if(N=G,t.charCodeAt(G)===40?(K=De,G++):(K=r,ct===0&&Ct(ce)),K!==r){for(re=[],pe=Qt();pe!==r;)re.push(pe),pe=Qt();if(re!==r)if(pe=ts(),pe!==r){for(Je=[],mt=Qt();mt!==r;)Je.push(mt),mt=Qt();Je!==r?(t.charCodeAt(G)===41?(mt=ne,G++):(mt=r,ct===0&&Ct(ee)),mt!==r?(Dt=N,K=Pn(pe),N=K):(G=N,N=r)):(G=N,N=r)}else G=N,N=r;else G=N,N=r}else G=N,N=r}return N}function Bl(){var N,K,re,pe,Je,mt,fr,Cr;if(N=G,K=vc(),K!==r){for(re=[],pe=G,Je=[],mt=Qt();mt!==r;)Je.push(mt),mt=Qt();if(Je!==r)if(t.charCodeAt(G)===42?(mt=ys,G++):(mt=r,ct===0&&Ct(We)),mt===r&&(t.charCodeAt(G)===47?(mt=tt,G++):(mt=r,ct===0&&Ct(It))),mt!==r){for(fr=[],Cr=Qt();Cr!==r;)fr.push(Cr),Cr=Qt();fr!==r?(Cr=vc(),Cr!==r?(Dt=pe,Je=nr(K,mt,Cr),pe=Je):(G=pe,pe=r)):(G=pe,pe=r)}else G=pe,pe=r;else G=pe,pe=r;for(;pe!==r;){for(re.push(pe),pe=G,Je=[],mt=Qt();mt!==r;)Je.push(mt),mt=Qt();if(Je!==r)if(t.charCodeAt(G)===42?(mt=ys,G++):(mt=r,ct===0&&Ct(We)),mt===r&&(t.charCodeAt(G)===47?(mt=tt,G++):(mt=r,ct===0&&Ct(It))),mt!==r){for(fr=[],Cr=Qt();Cr!==r;)fr.push(Cr),Cr=Qt();fr!==r?(Cr=vc(),Cr!==r?(Dt=pe,Je=nr(K,mt,Cr),pe=Je):(G=pe,pe=r)):(G=pe,pe=r)}else G=pe,pe=r;else G=pe,pe=r}re!==r?(Dt=N,K=$(K,re),N=K):(G=N,N=r)}else G=N,N=r;return N}function ts(){var N,K,re,pe,Je,mt,fr,Cr;if(N=G,K=Bl(),K!==r){for(re=[],pe=G,Je=[],mt=Qt();mt!==r;)Je.push(mt),mt=Qt();if(Je!==r)if(t.charCodeAt(G)===43?(mt=la,G++):(mt=r,ct===0&&Ct(Ho)),mt===r&&(t.charCodeAt(G)===45?(mt=Us,G++):(mt=r,ct===0&&Ct(aa))),mt!==r){for(fr=[],Cr=Qt();Cr!==r;)fr.push(Cr),Cr=Qt();fr!==r?(Cr=Bl(),Cr!==r?(Dt=pe,Je=me(K,mt,Cr),pe=Je):(G=pe,pe=r)):(G=pe,pe=r)}else G=pe,pe=r;else G=pe,pe=r;for(;pe!==r;){for(re.push(pe),pe=G,Je=[],mt=Qt();mt!==r;)Je.push(mt),mt=Qt();if(Je!==r)if(t.charCodeAt(G)===43?(mt=la,G++):(mt=r,ct===0&&Ct(Ho)),mt===r&&(t.charCodeAt(G)===45?(mt=Us,G++):(mt=r,ct===0&&Ct(aa))),mt!==r){for(fr=[],Cr=Qt();Cr!==r;)fr.push(Cr),Cr=Qt();fr!==r?(Cr=Bl(),Cr!==r?(Dt=pe,Je=me(K,mt,Cr),pe=Je):(G=pe,pe=r)):(G=pe,pe=r)}else G=pe,pe=r;else G=pe,pe=r}re!==r?(Dt=N,K=$(K,re),N=K):(G=N,N=r)}else G=N,N=r;return N}function Gr(){var N,K,re,pe,Je,mt;if(N=G,t.substr(G,3)===Le?(K=Le,G+=3):(K=r,ct===0&&Ct(ft)),K!==r){for(re=[],pe=Qt();pe!==r;)re.push(pe),pe=Qt();if(re!==r)if(pe=ts(),pe!==r){for(Je=[],mt=Qt();mt!==r;)Je.push(mt),mt=Qt();Je!==r?(t.substr(G,2)===pt?(mt=pt,G+=2):(mt=r,ct===0&&Ct(Tt)),mt!==r?(Dt=N,K=er(pe),N=K):(G=N,N=r)):(G=N,N=r)}else G=N,N=r;else G=N,N=r}else G=N,N=r;return N}function mp(){var N,K,re,pe;return N=G,t.substr(G,2)===Zr?(K=Zr,G+=2):(K=r,ct===0&&Ct(qi)),K!==r?(re=Cu(),re!==r?(t.charCodeAt(G)===41?(pe=ne,G++):(pe=r,ct===0&&Ct(ee)),pe!==r?(Dt=N,K=es(re),N=K):(G=N,N=r)):(G=N,N=r)):(G=N,N=r),N}function Dc(){var N,K,re,pe,Je,mt;return N=G,t.substr(G,2)===bi?(K=bi,G+=2):(K=r,ct===0&&Ct(jo)),K!==r?(re=Ga(),re!==r?(t.substr(G,2)===xA?(pe=xA,G+=2):(pe=r,ct===0&&Ct(kA)),pe!==r?(Je=TA(),Je!==r?(t.charCodeAt(G)===125?(mt=H,G++):(mt=r,ct===0&&Ct(lt)),mt!==r?(Dt=N,K=cp(re,Je),N=K):(G=N,N=r)):(G=N,N=r)):(G=N,N=r)):(G=N,N=r)):(G=N,N=r),N===r&&(N=G,t.substr(G,2)===bi?(K=bi,G+=2):(K=r,ct===0&&Ct(jo)),K!==r?(re=Ga(),re!==r?(t.substr(G,3)===rg?(pe=rg,G+=3):(pe=r,ct===0&&Ct(gu)),pe!==r?(Dt=N,K=ng(re),N=K):(G=N,N=r)):(G=N,N=r)):(G=N,N=r),N===r&&(N=G,t.substr(G,2)===bi?(K=bi,G+=2):(K=r,ct===0&&Ct(jo)),K!==r?(re=Ga(),re!==r?(t.substr(G,2)===du?(pe=du,G+=2):(pe=r,ct===0&&Ct(uo)),pe!==r?(Je=TA(),Je!==r?(t.charCodeAt(G)===125?(mt=H,G++):(mt=r,ct===0&&Ct(lt)),mt!==r?(Dt=N,K=QA(re,Je),N=K):(G=N,N=r)):(G=N,N=r)):(G=N,N=r)):(G=N,N=r)):(G=N,N=r),N===r&&(N=G,t.substr(G,2)===bi?(K=bi,G+=2):(K=r,ct===0&&Ct(jo)),K!==r?(re=Ga(),re!==r?(t.substr(G,3)===mc?(pe=mc,G+=3):(pe=r,ct===0&&Ct(ca)),pe!==r?(Dt=N,K=ig(re),N=K):(G=N,N=r)):(G=N,N=r)):(G=N,N=r),N===r&&(N=G,t.substr(G,2)===bi?(K=bi,G+=2):(K=r,ct===0&&Ct(jo)),K!==r?(re=Ga(),re!==r?(t.charCodeAt(G)===125?(pe=H,G++):(pe=r,ct===0&&Ct(lt)),pe!==r?(Dt=N,K=yc(re),N=K):(G=N,N=r)):(G=N,N=r)):(G=N,N=r),N===r&&(N=G,t.charCodeAt(G)===36?(K=Dm,G++):(K=r,ct===0&&Ct(sg)),K!==r?(re=Ga(),re!==r?(Dt=N,K=yc(re),N=K):(G=N,N=r)):(G=N,N=r)))))),N}function yw(){var N,K,re;return N=G,K=mg(),K!==r?(Dt=G,re=$n(K),re?re=void 0:re=r,re!==r?(Dt=N,K=up(K),N=K):(G=N,N=r)):(G=N,N=r),N}function mg(){var N,K,re,pe,Je;if(N=G,K=[],re=G,pe=G,ct++,Je=Eg(),ct--,Je===r?pe=void 0:(G=pe,pe=r),pe!==r?(t.length>G?(Je=t.charAt(G),G++):(Je=r,ct===0&&Ct(Fn)),Je!==r?(Dt=re,pe=Oe(Je),re=pe):(G=re,re=r)):(G=re,re=r),re!==r)for(;re!==r;)K.push(re),re=G,pe=G,ct++,Je=Eg(),ct--,Je===r?pe=void 0:(G=pe,pe=r),pe!==r?(t.length>G?(Je=t.charAt(G),G++):(Je=r,ct===0&&Ct(Fn)),Je!==r?(Dt=re,pe=Oe(Je),re=pe):(G=re,re=r)):(G=re,re=r);else K=r;return K!==r&&(Dt=N,K=Ms(K)),N=K,N}function yg(){var N,K,re;if(N=G,K=[],og.test(t.charAt(G))?(re=t.charAt(G),G++):(re=r,ct===0&&Ct(FA)),re!==r)for(;re!==r;)K.push(re),og.test(t.charAt(G))?(re=t.charAt(G),G++):(re=r,ct===0&&Ct(FA));else K=r;return K!==r&&(Dt=N,K=Hs()),N=K,N}function Ga(){var N,K,re;if(N=G,K=[],mu.test(t.charAt(G))?(re=t.charAt(G),G++):(re=r,ct===0&&Ct(Ha)),re!==r)for(;re!==r;)K.push(re),mu.test(t.charAt(G))?(re=t.charAt(G),G++):(re=r,ct===0&&Ct(Ha));else K=r;return K!==r&&(Dt=N,K=Hs()),N=K,N}function Qm(){var N;return Gi.test(t.charAt(G))?(N=t.charAt(G),G++):(N=r,ct===0&&Ct(ua)),N}function Eg(){var N;return yu.test(t.charAt(G))?(N=t.charAt(G),G++):(N=r,ct===0&&Ct(Es)),N}function Qt(){var N,K;if(N=[],Ec.test(t.charAt(G))?(K=t.charAt(G),G++):(K=r,ct===0&&Ct(Cc)),K!==r)for(;K!==r;)N.push(K),Ec.test(t.charAt(G))?(K=t.charAt(G),G++):(K=r,ct===0&&Ct(Cc));else N=r;return N}if(Eu=a(),Eu!==r&&G===t.length)return Eu;throw Eu!==r&&G!1}){try{return(0,rW.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 ay(t,{endSemicolon:e=!1}={}){return t.map(({command:r,type:o},a)=>`${OD(r)}${o===";"?a!==t.length-1||e?";":"":" &"}`).join(" ")}function OD(t){return`${ly(t.chain)}${t.then?` ${lT(t.then)}`:""}`}function lT(t){return`${t.type} ${OD(t.line)}`}function ly(t){return`${uT(t)}${t.then?` ${cT(t.then)}`:""}`}function cT(t){return`${t.type} ${ly(t.chain)}`}function uT(t){switch(t.type){case"command":return`${t.envs.length>0?`${t.envs.map(e=>ND(e)).join(" ")} `:""}${t.args.map(e=>AT(e)).join(" ")}`;case"subshell":return`(${ay(t.subshell)})${t.args.length>0?` ${t.args.map(e=>Kw(e)).join(" ")}`:""}`;case"group":return`{ ${ay(t.group,{endSemicolon:!0})} }${t.args.length>0?` ${t.args.map(e=>Kw(e)).join(" ")}`:""}`;case"envs":return t.envs.map(e=>ND(e)).join(" ");default:throw new Error(`Unsupported command type: "${t.type}"`)}}function ND(t){return`${t.name}=${t.args[0]?qg(t.args[0]):""}`}function AT(t){switch(t.type){case"redirection":return Kw(t);case"argument":return qg(t);default:throw new Error(`Unsupported argument type: "${t.type}"`)}}function Kw(t){return`${t.subtype} ${t.args.map(e=>qg(e)).join(" ")}`}function qg(t){return t.segments.map(e=>fT(e)).join("")}function fT(t){let e=(o,a)=>a?`"${o}"`:o,r=o=>o===""?"''":o.match(/[()}<>$|&;"'\n\t ]/)?o.match(/['\t\p{C}]/u)?o.match(/'/)?`"${o.replace(/["$\t\p{C}]/u,m8e)}"`:`$'${o.replace(/[\t\p{C}]/u,iW)}'`:`'${o}'`:o;switch(t.type){case"text":return r(t.text);case"glob":return t.pattern;case"shell":return e(`\${${ay(t.shell)}}`,t.quoted);case"variable":return e(typeof t.defaultValue>"u"?typeof t.alternativeValue>"u"?`\${${t.name}}`:t.alternativeValue.length===0?`\${${t.name}:+}`:`\${${t.name}:+${t.alternativeValue.map(o=>qg(o)).join(" ")}}`:t.defaultValue.length===0?`\${${t.name}:-}`:`\${${t.name}:-${t.defaultValue.map(o=>qg(o)).join(" ")}}`,t.quoted);case"arithmetic":return`$(( ${MD(t.arithmetic)} ))`;default:throw new Error(`Unsupported argument segment type: "${t.type}"`)}}function MD(t){let e=a=>{switch(a){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 "${a}"`)}},r=(a,n)=>n?`( ${a} )`:a,o=a=>r(MD(a),!["number","variable"].includes(a.type));switch(t.type){case"number":return String(t.value);case"variable":return t.name;default:return`${o(t.left)} ${e(t.type)} ${o(t.right)}`}}var rW,nW,d8e,iW,m8e,sW=Et(()=>{rW=$e(tW());nW=new Map([["\f","\\f"],[` +`,"\\n"],["\r","\\r"],[" ","\\t"],["\v","\\v"],["\0","\\0"]]),d8e=new Map([["\\","\\\\"],["$","\\$"],['"','\\"'],...Array.from(nW,([t,e])=>[t,`"$'${e}'"`])]),iW=t=>nW.get(t)??`\\x${t.charCodeAt(0).toString(16).padStart(2,"0")}`,m8e=t=>d8e.get(t)??`"$'${iW(t)}'"`});var aW=_((Rbt,oW)=>{"use strict";function y8e(t,e){function r(){this.constructor=t}r.prototype=e.prototype,t.prototype=new r}function Gg(t,e,r,o){this.message=t,this.expected=e,this.found=r,this.location=o,this.name="SyntaxError",typeof Error.captureStackTrace=="function"&&Error.captureStackTrace(this,Gg)}y8e(Gg,Error);Gg.buildMessage=function(t,e){var r={literal:function(h){return'"'+a(h.text)+'"'},class:function(h){var C="",I;for(I=0;I0){for(I=1,v=1;Ihe&&(he=z,Ae=[]),Ae.push(He))}function lt(He,b){return new Gg(He,null,null,b)}function Te(He,b,w){return new Gg(Gg.buildMessage(He,b),He,b,w)}function ke(){var He,b,w,S;return He=z,b=be(),b!==r?(t.charCodeAt(z)===47?(w=n,z++):(w=r,ye===0&&H(u)),w!==r?(S=be(),S!==r?(te=He,b=A(b,S),He=b):(z=He,He=r)):(z=He,He=r)):(z=He,He=r),He===r&&(He=z,b=be(),b!==r&&(te=He,b=p(b)),He=b),He}function be(){var He,b,w,S;return He=z,b=_e(),b!==r?(t.charCodeAt(z)===64?(w=h,z++):(w=r,ye===0&&H(C)),w!==r?(S=ze(),S!==r?(te=He,b=I(b,S),He=b):(z=He,He=r)):(z=He,He=r)):(z=He,He=r),He===r&&(He=z,b=_e(),b!==r&&(te=He,b=v(b)),He=b),He}function _e(){var He,b,w,S,y;return He=z,t.charCodeAt(z)===64?(b=h,z++):(b=r,ye===0&&H(C)),b!==r?(w=Re(),w!==r?(t.charCodeAt(z)===47?(S=n,z++):(S=r,ye===0&&H(u)),S!==r?(y=Re(),y!==r?(te=He,b=x(),He=b):(z=He,He=r)):(z=He,He=r)):(z=He,He=r)):(z=He,He=r),He===r&&(He=z,b=Re(),b!==r&&(te=He,b=x()),He=b),He}function Re(){var He,b,w;if(He=z,b=[],E.test(t.charAt(z))?(w=t.charAt(z),z++):(w=r,ye===0&&H(R)),w!==r)for(;w!==r;)b.push(w),E.test(t.charAt(z))?(w=t.charAt(z),z++):(w=r,ye===0&&H(R));else b=r;return b!==r&&(te=He,b=x()),He=b,He}function ze(){var He,b,w;if(He=z,b=[],L.test(t.charAt(z))?(w=t.charAt(z),z++):(w=r,ye===0&&H(U)),w!==r)for(;w!==r;)b.push(w),L.test(t.charAt(z))?(w=t.charAt(z),z++):(w=r,ye===0&&H(U));else b=r;return b!==r&&(te=He,b=x()),He=b,He}if(ae=a(),ae!==r&&z===t.length)return ae;throw ae!==r&&z{lW=$e(aW())});var Wg=_((Nbt,Yg)=>{"use strict";function uW(t){return typeof t>"u"||t===null}function C8e(t){return typeof t=="object"&&t!==null}function w8e(t){return Array.isArray(t)?t:uW(t)?[]:[t]}function I8e(t,e){var r,o,a,n;if(e)for(n=Object.keys(e),r=0,o=n.length;r{"use strict";function Vw(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||""}Vw.prototype=Object.create(Error.prototype);Vw.prototype.constructor=Vw;Vw.prototype.toString=function(e){var r=this.name+": ";return r+=this.reason||"(unknown reason)",!e&&this.mark&&(r+=" "+this.mark.toString()),r};AW.exports=Vw});var hW=_((Obt,pW)=>{"use strict";var fW=Wg();function pT(t,e,r,o,a){this.name=t,this.buffer=e,this.position=r,this.line=o,this.column=a}pT.prototype.getSnippet=function(e,r){var o,a,n,u,A;if(!this.buffer)return null;for(e=e||4,r=r||75,o="",a=this.position;a>0&&`\0\r +\x85\u2028\u2029`.indexOf(this.buffer.charAt(a-1))===-1;)if(a-=1,this.position-a>r/2-1){o=" ... ",a+=5;break}for(n="",u=this.position;ur/2-1){n=" ... ",u-=5;break}return A=this.buffer.slice(a,u),fW.repeat(" ",e)+o+A+n+` +`+fW.repeat(" ",e+this.position-a+o.length)+"^"};pT.prototype.toString=function(e){var r,o="";return this.name&&(o+='in "'+this.name+'" '),o+="at line "+(this.line+1)+", column "+(this.column+1),e||(r=this.getSnippet(),r&&(o+=`: +`+r)),o};pW.exports=pT});var os=_((Mbt,dW)=>{"use strict";var gW=cy(),D8e=["kind","resolve","construct","instanceOf","predicate","represent","defaultStyle","styleAliases"],P8e=["scalar","sequence","mapping"];function S8e(t){var e={};return t!==null&&Object.keys(t).forEach(function(r){t[r].forEach(function(o){e[String(o)]=r})}),e}function b8e(t,e){if(e=e||{},Object.keys(e).forEach(function(r){if(D8e.indexOf(r)===-1)throw new gW('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=S8e(e.styleAliases||null),P8e.indexOf(this.kind)===-1)throw new gW('Unknown kind "'+this.kind+'" is specified for "'+t+'" YAML type.')}dW.exports=b8e});var Kg=_((Ubt,yW)=>{"use strict";var mW=Wg(),HD=cy(),x8e=os();function hT(t,e,r){var o=[];return t.include.forEach(function(a){r=hT(a,e,r)}),t[e].forEach(function(a){r.forEach(function(n,u){n.tag===a.tag&&n.kind===a.kind&&o.push(u)}),r.push(a)}),r.filter(function(a,n){return o.indexOf(n)===-1})}function k8e(){var t={scalar:{},sequence:{},mapping:{},fallback:{}},e,r;function o(a){t[a.kind][a.tag]=t.fallback[a.tag]=a}for(e=0,r=arguments.length;e{"use strict";var Q8e=os();EW.exports=new Q8e("tag:yaml.org,2002:str",{kind:"scalar",construct:function(t){return t!==null?t:""}})});var IW=_((Hbt,wW)=>{"use strict";var F8e=os();wW.exports=new F8e("tag:yaml.org,2002:seq",{kind:"sequence",construct:function(t){return t!==null?t:[]}})});var vW=_((jbt,BW)=>{"use strict";var R8e=os();BW.exports=new R8e("tag:yaml.org,2002:map",{kind:"mapping",construct:function(t){return t!==null?t:{}}})});var jD=_((qbt,DW)=>{"use strict";var T8e=Kg();DW.exports=new T8e({explicit:[CW(),IW(),vW()]})});var SW=_((Gbt,PW)=>{"use strict";var N8e=os();function L8e(t){if(t===null)return!0;var e=t.length;return e===1&&t==="~"||e===4&&(t==="null"||t==="Null"||t==="NULL")}function O8e(){return null}function M8e(t){return t===null}PW.exports=new N8e("tag:yaml.org,2002:null",{kind:"scalar",resolve:L8e,construct:O8e,predicate:M8e,represent:{canonical:function(){return"~"},lowercase:function(){return"null"},uppercase:function(){return"NULL"},camelcase:function(){return"Null"}},defaultStyle:"lowercase"})});var xW=_((Ybt,bW)=>{"use strict";var U8e=os();function _8e(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 H8e(t){return t==="true"||t==="True"||t==="TRUE"}function j8e(t){return Object.prototype.toString.call(t)==="[object Boolean]"}bW.exports=new U8e("tag:yaml.org,2002:bool",{kind:"scalar",resolve:_8e,construct:H8e,predicate:j8e,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 QW=_((Wbt,kW)=>{"use strict";var q8e=Wg(),G8e=os();function Y8e(t){return 48<=t&&t<=57||65<=t&&t<=70||97<=t&&t<=102}function W8e(t){return 48<=t&&t<=55}function K8e(t){return 48<=t&&t<=57}function V8e(t){if(t===null)return!1;var e=t.length,r=0,o=!1,a;if(!e)return!1;if(a=t[r],(a==="-"||a==="+")&&(a=t[++r]),a==="0"){if(r+1===e)return!0;if(a=t[++r],a==="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 TW=_((Kbt,RW)=>{"use strict";var FW=Wg(),X8e=os(),Z8e=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 $8e(t){return!(t===null||!Z8e.test(t)||t[t.length-1]==="_")}function eHe(t){var e,r,o,a;return e=t.replace(/_/g,"").toLowerCase(),r=e[0]==="-"?-1:1,a=[],"+-".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(n){a.unshift(parseFloat(n,10))}),e=0,o=1,a.forEach(function(n){e+=n*o,o*=60}),r*e):r*parseFloat(e,10)}var tHe=/^[-+]?[0-9]+e/;function rHe(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(FW.isNegativeZero(t))return"-0.0";return r=t.toString(10),tHe.test(r)?r.replace("e",".e"):r}function nHe(t){return Object.prototype.toString.call(t)==="[object Number]"&&(t%1!==0||FW.isNegativeZero(t))}RW.exports=new X8e("tag:yaml.org,2002:float",{kind:"scalar",resolve:$8e,construct:eHe,predicate:nHe,represent:rHe,defaultStyle:"lowercase"})});var gT=_((Vbt,NW)=>{"use strict";var iHe=Kg();NW.exports=new iHe({include:[jD()],implicit:[SW(),xW(),QW(),TW()]})});var dT=_((zbt,LW)=>{"use strict";var sHe=Kg();LW.exports=new sHe({include:[gT()]})});var _W=_((Jbt,UW)=>{"use strict";var oHe=os(),OW=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9])-([0-9][0-9])$"),MW=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 aHe(t){return t===null?!1:OW.exec(t)!==null||MW.exec(t)!==null}function lHe(t){var e,r,o,a,n,u,A,p=0,h=null,C,I,v;if(e=OW.exec(t),e===null&&(e=MW.exec(t)),e===null)throw new Error("Date resolve error");if(r=+e[1],o=+e[2]-1,a=+e[3],!e[4])return new Date(Date.UTC(r,o,a));if(n=+e[4],u=+e[5],A=+e[6],e[7]){for(p=e[7].slice(0,3);p.length<3;)p+="0";p=+p}return e[9]&&(C=+e[10],I=+(e[11]||0),h=(C*60+I)*6e4,e[9]==="-"&&(h=-h)),v=new Date(Date.UTC(r,o,a,n,u,A,p)),h&&v.setTime(v.getTime()-h),v}function cHe(t){return t.toISOString()}UW.exports=new oHe("tag:yaml.org,2002:timestamp",{kind:"scalar",resolve:aHe,construct:lHe,instanceOf:Date,represent:cHe})});var jW=_((Xbt,HW)=>{"use strict";var uHe=os();function AHe(t){return t==="<<"||t===null}HW.exports=new uHe("tag:yaml.org,2002:merge",{kind:"scalar",resolve:AHe})});var YW=_((Zbt,GW)=>{"use strict";var Vg;try{qW=Be,Vg=qW("buffer").Buffer}catch{}var qW,fHe=os(),mT=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/= +\r`;function pHe(t){if(t===null)return!1;var e,r,o=0,a=t.length,n=mT;for(r=0;r64)){if(e<0)return!1;o+=6}return o%8===0}function hHe(t){var e,r,o=t.replace(/[\r\n=]/g,""),a=o.length,n=mT,u=0,A=[];for(e=0;e>16&255),A.push(u>>8&255),A.push(u&255)),u=u<<6|n.indexOf(o.charAt(e));return r=a%4*6,r===0?(A.push(u>>16&255),A.push(u>>8&255),A.push(u&255)):r===18?(A.push(u>>10&255),A.push(u>>2&255)):r===12&&A.push(u>>4&255),Vg?Vg.from?Vg.from(A):new Vg(A):A}function gHe(t){var e="",r=0,o,a,n=t.length,u=mT;for(o=0;o>18&63],e+=u[r>>12&63],e+=u[r>>6&63],e+=u[r&63]),r=(r<<8)+t[o];return a=n%3,a===0?(e+=u[r>>18&63],e+=u[r>>12&63],e+=u[r>>6&63],e+=u[r&63]):a===2?(e+=u[r>>10&63],e+=u[r>>4&63],e+=u[r<<2&63],e+=u[64]):a===1&&(e+=u[r>>2&63],e+=u[r<<4&63],e+=u[64],e+=u[64]),e}function dHe(t){return Vg&&Vg.isBuffer(t)}GW.exports=new fHe("tag:yaml.org,2002:binary",{kind:"scalar",resolve:pHe,construct:hHe,predicate:dHe,represent:gHe})});var KW=_((ext,WW)=>{"use strict";var mHe=os(),yHe=Object.prototype.hasOwnProperty,EHe=Object.prototype.toString;function CHe(t){if(t===null)return!0;var e=[],r,o,a,n,u,A=t;for(r=0,o=A.length;r{"use strict";var IHe=os(),BHe=Object.prototype.toString;function vHe(t){if(t===null)return!0;var e,r,o,a,n,u=t;for(n=new Array(u.length),e=0,r=u.length;e{"use strict";var PHe=os(),SHe=Object.prototype.hasOwnProperty;function bHe(t){if(t===null)return!0;var e,r=t;for(e in r)if(SHe.call(r,e)&&r[e]!==null)return!1;return!0}function xHe(t){return t!==null?t:{}}JW.exports=new PHe("tag:yaml.org,2002:set",{kind:"mapping",resolve:bHe,construct:xHe})});var Ay=_((nxt,ZW)=>{"use strict";var kHe=Kg();ZW.exports=new kHe({include:[dT()],implicit:[_W(),jW()],explicit:[YW(),KW(),zW(),XW()]})});var eK=_((ixt,$W)=>{"use strict";var QHe=os();function FHe(){return!0}function RHe(){}function THe(){return""}function NHe(t){return typeof t>"u"}$W.exports=new QHe("tag:yaml.org,2002:js/undefined",{kind:"scalar",resolve:FHe,construct:RHe,predicate:NHe,represent:THe})});var rK=_((sxt,tK)=>{"use strict";var LHe=os();function OHe(t){if(t===null||t.length===0)return!1;var e=t,r=/\/([gim]*)$/.exec(t),o="";return!(e[0]==="/"&&(r&&(o=r[1]),o.length>3||e[e.length-o.length-1]!=="/"))}function MHe(t){var e=t,r=/\/([gim]*)$/.exec(t),o="";return e[0]==="/"&&(r&&(o=r[1]),e=e.slice(1,e.length-o.length-1)),new RegExp(e,o)}function UHe(t){var e="/"+t.source+"/";return t.global&&(e+="g"),t.multiline&&(e+="m"),t.ignoreCase&&(e+="i"),e}function _He(t){return Object.prototype.toString.call(t)==="[object RegExp]"}tK.exports=new LHe("tag:yaml.org,2002:js/regexp",{kind:"scalar",resolve:OHe,construct:MHe,predicate:_He,represent:UHe})});var sK=_((oxt,iK)=>{"use strict";var qD;try{nK=Be,qD=nK("esprima")}catch{typeof window<"u"&&(qD=window.esprima)}var nK,HHe=os();function jHe(t){if(t===null)return!1;try{var e="("+t+")",r=qD.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{return!1}}function qHe(t){var e="("+t+")",r=qD.parse(e,{range:!0}),o=[],a;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(n){o.push(n.name)}),a=r.body[0].expression.body.range,r.body[0].expression.body.type==="BlockStatement"?new Function(o,e.slice(a[0]+1,a[1]-1)):new Function(o,"return "+e.slice(a[0],a[1]))}function GHe(t){return t.toString()}function YHe(t){return Object.prototype.toString.call(t)==="[object Function]"}iK.exports=new HHe("tag:yaml.org,2002:js/function",{kind:"scalar",resolve:jHe,construct:qHe,predicate:YHe,represent:GHe})});var zw=_((lxt,aK)=>{"use strict";var oK=Kg();aK.exports=oK.DEFAULT=new oK({include:[Ay()],explicit:[eK(),rK(),sK()]})});var PK=_((cxt,Jw)=>{"use strict";var mf=Wg(),hK=cy(),WHe=hW(),gK=Ay(),KHe=zw(),qp=Object.prototype.hasOwnProperty,GD=1,dK=2,mK=3,YD=4,yT=1,VHe=2,lK=3,zHe=/[\x00-\x08\x0B\x0C\x0E-\x1F\x7F-\x84\x86-\x9F\uFFFE\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/,JHe=/[\x85\u2028\u2029]/,XHe=/[,\[\]\{\}]/,yK=/^(?:!|!!|![a-z\-]+!)$/i,EK=/^(?:!|[^,\[\]\{\}])(?:%[0-9a-f]{2}|[0-9a-z\-#;\/\?:@&=\+\$,_\.!~\*'\(\)\[\]])*$/i;function cK(t){return Object.prototype.toString.call(t)}function Hu(t){return t===10||t===13}function Jg(t){return t===9||t===32}function Ia(t){return t===9||t===32||t===10||t===13}function fy(t){return t===44||t===91||t===93||t===123||t===125}function ZHe(t){var e;return 48<=t&&t<=57?t-48:(e=t|32,97<=e&&e<=102?e-97+10:-1)}function $He(t){return t===120?2:t===117?4:t===85?8:0}function e6e(t){return 48<=t&&t<=57?t-48:-1}function uK(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?"\x1B":t===32?" ":t===34?'"':t===47?"/":t===92?"\\":t===78?"\x85":t===95?"\xA0":t===76?"\u2028":t===80?"\u2029":""}function t6e(t){return t<=65535?String.fromCharCode(t):String.fromCharCode((t-65536>>10)+55296,(t-65536&1023)+56320)}var CK=new Array(256),wK=new Array(256);for(zg=0;zg<256;zg++)CK[zg]=uK(zg)?1:0,wK[zg]=uK(zg);var zg;function r6e(t,e){this.input=t,this.filename=e.filename||null,this.schema=e.schema||KHe,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 IK(t,e){return new hK(e,new WHe(t.filename,t.input,t.position,t.line,t.position-t.lineStart))}function Sr(t,e){throw IK(t,e)}function WD(t,e){t.onWarning&&t.onWarning.call(null,IK(t,e))}var AK={YAML:function(e,r,o){var a,n,u;e.version!==null&&Sr(e,"duplication of %YAML directive"),o.length!==1&&Sr(e,"YAML directive accepts exactly one argument"),a=/^([0-9]+)\.([0-9]+)$/.exec(o[0]),a===null&&Sr(e,"ill-formed argument of the YAML directive"),n=parseInt(a[1],10),u=parseInt(a[2],10),n!==1&&Sr(e,"unacceptable YAML version of the document"),e.version=o[0],e.checkLineBreaks=u<2,u!==1&&u!==2&&WD(e,"unsupported YAML version of the document")},TAG:function(e,r,o){var a,n;o.length!==2&&Sr(e,"TAG directive accepts exactly two arguments"),a=o[0],n=o[1],yK.test(a)||Sr(e,"ill-formed tag handle (first argument) of the TAG directive"),qp.call(e.tagMap,a)&&Sr(e,'there is a previously declared suffix for "'+a+'" tag handle'),EK.test(n)||Sr(e,"ill-formed tag prefix (second argument) of the TAG directive"),e.tagMap[a]=n}};function jp(t,e,r,o){var a,n,u,A;if(e1&&(t.result+=mf.repeat(` +`,e-1))}function n6e(t,e,r){var o,a,n,u,A,p,h,C,I=t.kind,v=t.result,x;if(x=t.input.charCodeAt(t.position),Ia(x)||fy(x)||x===35||x===38||x===42||x===33||x===124||x===62||x===39||x===34||x===37||x===64||x===96||(x===63||x===45)&&(a=t.input.charCodeAt(t.position+1),Ia(a)||r&&fy(a)))return!1;for(t.kind="scalar",t.result="",n=u=t.position,A=!1;x!==0;){if(x===58){if(a=t.input.charCodeAt(t.position+1),Ia(a)||r&&fy(a))break}else if(x===35){if(o=t.input.charCodeAt(t.position-1),Ia(o))break}else{if(t.position===t.lineStart&&KD(t)||r&&fy(x))break;if(Hu(x))if(p=t.line,h=t.lineStart,C=t.lineIndent,Wi(t,!1,-1),t.lineIndent>=e){A=!0,x=t.input.charCodeAt(t.position);continue}else{t.position=u,t.line=p,t.lineStart=h,t.lineIndent=C;break}}A&&(jp(t,n,u,!1),CT(t,t.line-p),n=u=t.position,A=!1),Jg(x)||(u=t.position+1),x=t.input.charCodeAt(++t.position)}return jp(t,n,u,!1),t.result?!0:(t.kind=I,t.result=v,!1)}function i6e(t,e){var r,o,a;if(r=t.input.charCodeAt(t.position),r!==39)return!1;for(t.kind="scalar",t.result="",t.position++,o=a=t.position;(r=t.input.charCodeAt(t.position))!==0;)if(r===39)if(jp(t,o,t.position,!0),r=t.input.charCodeAt(++t.position),r===39)o=t.position,t.position++,a=t.position;else return!0;else Hu(r)?(jp(t,o,a,!0),CT(t,Wi(t,!1,e)),o=a=t.position):t.position===t.lineStart&&KD(t)?Sr(t,"unexpected end of the document within a single quoted scalar"):(t.position++,a=t.position);Sr(t,"unexpected end of the stream within a single quoted scalar")}function s6e(t,e){var r,o,a,n,u,A;if(A=t.input.charCodeAt(t.position),A!==34)return!1;for(t.kind="scalar",t.result="",t.position++,r=o=t.position;(A=t.input.charCodeAt(t.position))!==0;){if(A===34)return jp(t,r,t.position,!0),t.position++,!0;if(A===92){if(jp(t,r,t.position,!0),A=t.input.charCodeAt(++t.position),Hu(A))Wi(t,!1,e);else if(A<256&&CK[A])t.result+=wK[A],t.position++;else if((u=$He(A))>0){for(a=u,n=0;a>0;a--)A=t.input.charCodeAt(++t.position),(u=ZHe(A))>=0?n=(n<<4)+u:Sr(t,"expected hexadecimal character");t.result+=t6e(n),t.position++}else Sr(t,"unknown escape sequence");r=o=t.position}else Hu(A)?(jp(t,r,o,!0),CT(t,Wi(t,!1,e)),r=o=t.position):t.position===t.lineStart&&KD(t)?Sr(t,"unexpected end of the document within a double quoted scalar"):(t.position++,o=t.position)}Sr(t,"unexpected end of the stream within a double quoted scalar")}function o6e(t,e){var r=!0,o,a=t.tag,n,u=t.anchor,A,p,h,C,I,v={},x,E,R,L;if(L=t.input.charCodeAt(t.position),L===91)p=93,I=!1,n=[];else if(L===123)p=125,I=!0,n={};else return!1;for(t.anchor!==null&&(t.anchorMap[t.anchor]=n),L=t.input.charCodeAt(++t.position);L!==0;){if(Wi(t,!0,e),L=t.input.charCodeAt(t.position),L===p)return t.position++,t.tag=a,t.anchor=u,t.kind=I?"mapping":"sequence",t.result=n,!0;r||Sr(t,"missed comma between flow collection entries"),E=x=R=null,h=C=!1,L===63&&(A=t.input.charCodeAt(t.position+1),Ia(A)&&(h=C=!0,t.position++,Wi(t,!0,e))),o=t.line,hy(t,e,GD,!1,!0),E=t.tag,x=t.result,Wi(t,!0,e),L=t.input.charCodeAt(t.position),(C||t.line===o)&&L===58&&(h=!0,L=t.input.charCodeAt(++t.position),Wi(t,!0,e),hy(t,e,GD,!1,!0),R=t.result),I?py(t,n,v,E,x,R):h?n.push(py(t,null,v,E,x,R)):n.push(x),Wi(t,!0,e),L=t.input.charCodeAt(t.position),L===44?(r=!0,L=t.input.charCodeAt(++t.position)):r=!1}Sr(t,"unexpected end of the stream within a flow collection")}function a6e(t,e){var r,o,a=yT,n=!1,u=!1,A=e,p=0,h=!1,C,I;if(I=t.input.charCodeAt(t.position),I===124)o=!1;else if(I===62)o=!0;else return!1;for(t.kind="scalar",t.result="";I!==0;)if(I=t.input.charCodeAt(++t.position),I===43||I===45)yT===a?a=I===43?lK:VHe:Sr(t,"repeat of a chomping mode identifier");else if((C=e6e(I))>=0)C===0?Sr(t,"bad explicit indentation width of a block scalar; it cannot be less than one"):u?Sr(t,"repeat of an indentation width identifier"):(A=e+C-1,u=!0);else break;if(Jg(I)){do I=t.input.charCodeAt(++t.position);while(Jg(I));if(I===35)do I=t.input.charCodeAt(++t.position);while(!Hu(I)&&I!==0)}for(;I!==0;){for(ET(t),t.lineIndent=0,I=t.input.charCodeAt(t.position);(!u||t.lineIndentA&&(A=t.lineIndent),Hu(I)){p++;continue}if(t.lineIndente)&&p!==0)Sr(t,"bad indentation of a sequence entry");else if(t.lineIndente)&&(hy(t,e,YD,!0,a)&&(E?v=t.result:x=t.result),E||(py(t,h,C,I,v,x,n,u),I=v=x=null),Wi(t,!0,-1),L=t.input.charCodeAt(t.position)),t.lineIndent>e&&L!==0)Sr(t,"bad indentation of a mapping entry");else if(t.lineIndente?p=1:t.lineIndent===e?p=0:t.lineIndente?p=1:t.lineIndent===e?p=0:t.lineIndent tag; it should be "scalar", not "'+t.kind+'"'),I=0,v=t.implicitTypes.length;I tag; it should be "'+x.kind+'", not "'+t.kind+'"'),x.resolve(t.result)?(t.result=x.construct(t.result),t.anchor!==null&&(t.anchorMap[t.anchor]=t.result)):Sr(t,"cannot resolve a node with !<"+t.tag+"> explicit tag")):Sr(t,"unknown tag !<"+t.tag+">");return t.listener!==null&&t.listener("close",t),t.tag!==null||t.anchor!==null||C}function f6e(t){var e=t.position,r,o,a,n=!1,u;for(t.version=null,t.checkLineBreaks=t.legacy,t.tagMap={},t.anchorMap={};(u=t.input.charCodeAt(t.position))!==0&&(Wi(t,!0,-1),u=t.input.charCodeAt(t.position),!(t.lineIndent>0||u!==37));){for(n=!0,u=t.input.charCodeAt(++t.position),r=t.position;u!==0&&!Ia(u);)u=t.input.charCodeAt(++t.position);for(o=t.input.slice(r,t.position),a=[],o.length<1&&Sr(t,"directive name must not be less than one character in length");u!==0;){for(;Jg(u);)u=t.input.charCodeAt(++t.position);if(u===35){do u=t.input.charCodeAt(++t.position);while(u!==0&&!Hu(u));break}if(Hu(u))break;for(r=t.position;u!==0&&!Ia(u);)u=t.input.charCodeAt(++t.position);a.push(t.input.slice(r,t.position))}u!==0&&ET(t),qp.call(AK,o)?AK[o](t,o,a):WD(t,'unknown document directive "'+o+'"')}if(Wi(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,Wi(t,!0,-1)):n&&Sr(t,"directives end mark is expected"),hy(t,t.lineIndent-1,YD,!1,!0),Wi(t,!0,-1),t.checkLineBreaks&&JHe.test(t.input.slice(e,t.position))&&WD(t,"non-ASCII line breaks are interpreted as content"),t.documents.push(t.result),t.position===t.lineStart&&KD(t)){t.input.charCodeAt(t.position)===46&&(t.position+=3,Wi(t,!0,-1));return}if(t.position"u"&&(r=e,e=null);var o=BK(t,r);if(typeof e!="function")return o;for(var a=0,n=o.length;a"u"&&(r=e,e=null),vK(t,e,mf.extend({schema:gK},r))}function h6e(t,e){return DK(t,mf.extend({schema:gK},e))}Jw.exports.loadAll=vK;Jw.exports.load=DK;Jw.exports.safeLoadAll=p6e;Jw.exports.safeLoad=h6e});var zK=_((uxt,vT)=>{"use strict";var Zw=Wg(),$w=cy(),g6e=zw(),d6e=Ay(),TK=Object.prototype.toString,NK=Object.prototype.hasOwnProperty,m6e=9,Xw=10,y6e=13,E6e=32,C6e=33,w6e=34,LK=35,I6e=37,B6e=38,v6e=39,D6e=42,OK=44,P6e=45,MK=58,S6e=61,b6e=62,x6e=63,k6e=64,UK=91,_K=93,Q6e=96,HK=123,F6e=124,jK=125,vo={};vo[0]="\\0";vo[7]="\\a";vo[8]="\\b";vo[9]="\\t";vo[10]="\\n";vo[11]="\\v";vo[12]="\\f";vo[13]="\\r";vo[27]="\\e";vo[34]='\\"';vo[92]="\\\\";vo[133]="\\N";vo[160]="\\_";vo[8232]="\\L";vo[8233]="\\P";var R6e=["y","Y","yes","Yes","YES","on","On","ON","n","N","no","No","NO","off","Off","OFF"];function T6e(t,e){var r,o,a,n,u,A,p;if(e===null)return{};for(r={},o=Object.keys(e),a=0,n=o.length;a0?t.charCodeAt(n-1):null,v=v&&xK(u,A)}else{for(n=0;no&&t[I+1]!==" ",I=n);else if(!gy(u))return VD;A=n>0?t.charCodeAt(n-1):null,v=v&&xK(u,A)}h=h||C&&n-I-1>o&&t[I+1]!==" "}return!p&&!h?v&&!a(t)?GK:YK:r>9&&qK(t)?VD:h?KK:WK}function _6e(t,e,r,o){t.dump=function(){if(e.length===0)return"''";if(!t.noCompatMode&&R6e.indexOf(e)!==-1)return"'"+e+"'";var a=t.indent*Math.max(1,r),n=t.lineWidth===-1?-1:Math.max(Math.min(t.lineWidth,40),t.lineWidth-a),u=o||t.flowLevel>-1&&r>=t.flowLevel;function A(p){return L6e(t,p)}switch(U6e(e,u,t.indent,n,A)){case GK:return e;case YK:return"'"+e.replace(/'/g,"''")+"'";case WK:return"|"+kK(e,t.indent)+QK(bK(e,a));case KK:return">"+kK(e,t.indent)+QK(bK(H6e(e,n),a));case VD:return'"'+j6e(e,n)+'"';default:throw new $w("impossible error: invalid scalar style")}}()}function kK(t,e){var r=qK(t)?String(e):"",o=t[t.length-1]===` +`,a=o&&(t[t.length-2]===` +`||t===` +`),n=a?"+":o?"":"-";return r+n+` +`}function QK(t){return t[t.length-1]===` +`?t.slice(0,-1):t}function H6e(t,e){for(var r=/(\n+)([^\n]*)/g,o=function(){var h=t.indexOf(` +`);return h=h!==-1?h:t.length,r.lastIndex=h,FK(t.slice(0,h),e)}(),a=t[0]===` +`||t[0]===" ",n,u;u=r.exec(t);){var A=u[1],p=u[2];n=p[0]===" ",o+=A+(!a&&!n&&p!==""?` +`:"")+FK(p,e),a=n}return o}function FK(t,e){if(t===""||t[0]===" ")return t;for(var r=/ [^ ]/g,o,a=0,n,u=0,A=0,p="";o=r.exec(t);)A=o.index,A-a>e&&(n=u>a?u:A,p+=` +`+t.slice(a,n),a=n+1),u=A;return p+=` +`,t.length-a>e&&u>a?p+=t.slice(a,u)+` +`+t.slice(u+1):p+=t.slice(a),p.slice(1)}function j6e(t){for(var e="",r,o,a,n=0;n=55296&&r<=56319&&(o=t.charCodeAt(n+1),o>=56320&&o<=57343)){e+=SK((r-55296)*1024+o-56320+65536),n++;continue}a=vo[r],e+=!a&&gy(r)?t[n]:a||SK(r)}return e}function q6e(t,e,r){var o="",a=t.tag,n,u;for(n=0,u=r.length;n1024&&(C+="? "),C+=t.dump+(t.condenseFlow?'"':"")+":"+(t.condenseFlow?"":" "),Xg(t,e,h,!1,!1)&&(C+=t.dump,o+=C));t.tag=a,t.dump="{"+o+"}"}function W6e(t,e,r,o){var a="",n=t.tag,u=Object.keys(r),A,p,h,C,I,v;if(t.sortKeys===!0)u.sort();else if(typeof t.sortKeys=="function")u.sort(t.sortKeys);else if(t.sortKeys)throw new $w("sortKeys must be a boolean or a function");for(A=0,p=u.length;A1024,I&&(t.dump&&Xw===t.dump.charCodeAt(0)?v+="?":v+="? "),v+=t.dump,I&&(v+=wT(t,e)),Xg(t,e+1,C,!0,I)&&(t.dump&&Xw===t.dump.charCodeAt(0)?v+=":":v+=": ",v+=t.dump,a+=v));t.tag=n,t.dump=a||"{}"}function RK(t,e,r){var o,a,n,u,A,p;for(a=r?t.explicitTypes:t.implicitTypes,n=0,u=a.length;n tag resolver accepts not "'+p+'" style');t.dump=o}return!0}return!1}function Xg(t,e,r,o,a,n){t.tag=null,t.dump=r,RK(t,r,!1)||RK(t,r,!0);var u=TK.call(t.dump);o&&(o=t.flowLevel<0||t.flowLevel>e);var A=u==="[object Object]"||u==="[object Array]",p,h;if(A&&(p=t.duplicates.indexOf(r),h=p!==-1),(t.tag!==null&&t.tag!=="?"||h||t.indent!==2&&e>0)&&(a=!1),h&&t.usedDuplicates[p])t.dump="*ref_"+p;else{if(A&&h&&!t.usedDuplicates[p]&&(t.usedDuplicates[p]=!0),u==="[object Object]")o&&Object.keys(t.dump).length!==0?(W6e(t,e,t.dump,a),h&&(t.dump="&ref_"+p+t.dump)):(Y6e(t,e,t.dump),h&&(t.dump="&ref_"+p+" "+t.dump));else if(u==="[object Array]"){var C=t.noArrayIndent&&e>0?e-1:e;o&&t.dump.length!==0?(G6e(t,C,t.dump,a),h&&(t.dump="&ref_"+p+t.dump)):(q6e(t,C,t.dump),h&&(t.dump="&ref_"+p+" "+t.dump))}else if(u==="[object String]")t.tag!=="?"&&_6e(t,t.dump,e,n);else{if(t.skipInvalid)return!1;throw new $w("unacceptable kind of an object to dump "+u)}t.tag!==null&&t.tag!=="?"&&(t.dump="!<"+t.tag+"> "+t.dump)}return!0}function K6e(t,e){var r=[],o=[],a,n;for(IT(t,r,o),a=0,n=o.length;a{"use strict";var zD=PK(),JK=zK();function JD(t){return function(){throw new Error("Function "+t+" is deprecated and cannot be used.")}}ki.exports.Type=os();ki.exports.Schema=Kg();ki.exports.FAILSAFE_SCHEMA=jD();ki.exports.JSON_SCHEMA=gT();ki.exports.CORE_SCHEMA=dT();ki.exports.DEFAULT_SAFE_SCHEMA=Ay();ki.exports.DEFAULT_FULL_SCHEMA=zw();ki.exports.load=zD.load;ki.exports.loadAll=zD.loadAll;ki.exports.safeLoad=zD.safeLoad;ki.exports.safeLoadAll=zD.safeLoadAll;ki.exports.dump=JK.dump;ki.exports.safeDump=JK.safeDump;ki.exports.YAMLException=cy();ki.exports.MINIMAL_SCHEMA=jD();ki.exports.SAFE_SCHEMA=Ay();ki.exports.DEFAULT_SCHEMA=zw();ki.exports.scan=JD("scan");ki.exports.parse=JD("parse");ki.exports.compose=JD("compose");ki.exports.addConstructor=JD("addConstructor")});var $K=_((fxt,ZK)=>{"use strict";var z6e=XK();ZK.exports=z6e});var tV=_((pxt,eV)=>{"use strict";function J6e(t,e){function r(){this.constructor=t}r.prototype=e.prototype,t.prototype=new r}function Zg(t,e,r,o){this.message=t,this.expected=e,this.found=r,this.location=o,this.name="SyntaxError",typeof Error.captureStackTrace=="function"&&Error.captureStackTrace(this,Zg)}J6e(Zg,Error);Zg.buildMessage=function(t,e){var r={literal:function(h){return'"'+a(h.text)+'"'},class:function(h){var C="",I;for(I=0;I0){for(I=1,v=1;I({[ft]:Le})))},he=function($){return $},Ae=function($){return $},ye=sa("correct indentation"),ae=" ",Ie=Qn(" ",!1),Fe=function($){return $.length===nr*It},g=function($){return $.length===(nr+1)*It},Ee=function(){return nr++,!0},De=function(){return nr--,!0},ce=function(){return DA()},ne=sa("pseudostring"),ee=/^[^\r\n\t ?:,\][{}#&*!|>'"%@`\-]/,we=hi(["\r",` +`," "," ","?",":",",","]","[","{","}","#","&","*","!","|",">","'",'"',"%","@","`","-"],!0,!1),xe=/^[^\r\n\t ,\][{}:#"']/,ht=hi(["\r",` +`," "," ",",","]","[","{","}",":","#",'"',"'"],!0,!1),H=function(){return DA().replace(/^ *| *$/g,"")},lt="--",Te=Qn("--",!1),ke=/^[a-zA-Z\/0-9]/,be=hi([["a","z"],["A","Z"],"/",["0","9"]],!1,!1),_e=/^[^\r\n\t :,]/,Re=hi(["\r",` +`," "," ",":",","],!0,!1),ze="null",He=Qn("null",!1),b=function(){return null},w="true",S=Qn("true",!1),y=function(){return!0},F="false",J=Qn("false",!1),X=function(){return!1},Z=sa("string"),ie='"',Pe=Qn('"',!1),Ne=function(){return""},ot=function($){return $},dt=function($){return $.join("")},jt=/^[^"\\\0-\x1F\x7F]/,$t=hi(['"',"\\",["\0",""],"\x7F"],!0,!1),bt='\\"',an=Qn('\\"',!1),Qr=function(){return'"'},mr="\\\\",br=Qn("\\\\",!1),Wr=function(){return"\\"},Kn="\\/",Ns=Qn("\\/",!1),Ti=function(){return"/"},ps="\\b",io=Qn("\\b",!1),Si=function(){return"\b"},Ls="\\f",so=Qn("\\f",!1),cc=function(){return"\f"},cu="\\n",op=Qn("\\n",!1),ap=function(){return` +`},Os="\\r",Dn=Qn("\\r",!1),oo=function(){return"\r"},Ms="\\t",ml=Qn("\\t",!1),yl=function(){return" "},ao="\\u",Vn=Qn("\\u",!1),On=function($,me,Le,ft){return String.fromCharCode(parseInt(`0x${$}${me}${Le}${ft}`))},Ni=/^[0-9a-fA-F]/,Mn=hi([["0","9"],["a","f"],["A","F"]],!1,!1),_i=sa("blank space"),tr=/^[ \t]/,Oe=hi([" "," "],!1,!1),ii=sa("white space"),Ma=/^[ \t\n\r]/,hr=hi([" "," ",` +`,"\r"],!1,!1),uc=`\r +`,uu=Qn(`\r +`,!1),Ac=` +`,El=Qn(` +`,!1),vA="\r",Au=Qn("\r",!1),Ce=0,Rt=0,fc=[{line:1,column:1}],Hi=0,fu=[],Yt=0,Cl;if("startRule"in e){if(!(e.startRule in o))throw new Error(`Can't start parsing from rule "`+e.startRule+'".');a=o[e.startRule]}function DA(){return t.substring(Rt,Ce)}function lp(){return _o(Rt,Ce)}function pc($,me){throw me=me!==void 0?me:_o(Rt,Ce),gc([sa($)],t.substring(Rt,Ce),me)}function PA($,me){throw me=me!==void 0?me:_o(Rt,Ce),lo($,me)}function Qn($,me){return{type:"literal",text:$,ignoreCase:me}}function hi($,me,Le){return{type:"class",parts:$,inverted:me,ignoreCase:Le}}function hc(){return{type:"any"}}function SA(){return{type:"end"}}function sa($){return{type:"other",description:$}}function Li($){var me=fc[$],Le;if(me)return me;for(Le=$-1;!fc[Le];)Le--;for(me=fc[Le],me={line:me.line,column:me.column};Le<$;)t.charCodeAt(Le)===10?(me.line++,me.column=1):me.column++,Le++;return fc[$]=me,me}function _o($,me){var Le=Li($),ft=Li(me);return{start:{offset:$,line:Le.line,column:Le.column},end:{offset:me,line:ft.line,column:ft.column}}}function Ze($){CeHi&&(Hi=Ce,fu=[]),fu.push($))}function lo($,me){return new Zg($,null,null,me)}function gc($,me,Le){return new Zg(Zg.buildMessage($,me),$,me,Le)}function pu(){var $;return $=bA(),$}function ji(){var $,me,Le;for($=Ce,me=[],Le=hu();Le!==r;)me.push(Le),Le=hu();return me!==r&&(Rt=$,me=n(me)),$=me,$}function hu(){var $,me,Le,ft,pt;return $=Ce,me=hs(),me!==r?(t.charCodeAt(Ce)===45?(Le=u,Ce++):(Le=r,Yt===0&&Ze(A)),Le!==r?(ft=Pn(),ft!==r?(pt=dc(),pt!==r?(Rt=$,me=p(pt),$=me):(Ce=$,$=r)):(Ce=$,$=r)):(Ce=$,$=r)):(Ce=$,$=r),$}function bA(){var $,me,Le;for($=Ce,me=[],Le=Ua();Le!==r;)me.push(Le),Le=Ua();return me!==r&&(Rt=$,me=h(me)),$=me,$}function Ua(){var $,me,Le,ft,pt,Tt,er,Zr,qi;if($=Ce,me=Pn(),me===r&&(me=null),me!==r){if(Le=Ce,t.charCodeAt(Ce)===35?(ft=C,Ce++):(ft=r,Yt===0&&Ze(I)),ft!==r){if(pt=[],Tt=Ce,er=Ce,Yt++,Zr=tt(),Yt--,Zr===r?er=void 0:(Ce=er,er=r),er!==r?(t.length>Ce?(Zr=t.charAt(Ce),Ce++):(Zr=r,Yt===0&&Ze(v)),Zr!==r?(er=[er,Zr],Tt=er):(Ce=Tt,Tt=r)):(Ce=Tt,Tt=r),Tt!==r)for(;Tt!==r;)pt.push(Tt),Tt=Ce,er=Ce,Yt++,Zr=tt(),Yt--,Zr===r?er=void 0:(Ce=er,er=r),er!==r?(t.length>Ce?(Zr=t.charAt(Ce),Ce++):(Zr=r,Yt===0&&Ze(v)),Zr!==r?(er=[er,Zr],Tt=er):(Ce=Tt,Tt=r)):(Ce=Tt,Tt=r);else pt=r;pt!==r?(ft=[ft,pt],Le=ft):(Ce=Le,Le=r)}else Ce=Le,Le=r;if(Le===r&&(Le=null),Le!==r){if(ft=[],pt=We(),pt!==r)for(;pt!==r;)ft.push(pt),pt=We();else ft=r;ft!==r?(Rt=$,me=x(),$=me):(Ce=$,$=r)}else Ce=$,$=r}else Ce=$,$=r;if($===r&&($=Ce,me=hs(),me!==r?(Le=oa(),Le!==r?(ft=Pn(),ft===r&&(ft=null),ft!==r?(t.charCodeAt(Ce)===58?(pt=E,Ce++):(pt=r,Yt===0&&Ze(R)),pt!==r?(Tt=Pn(),Tt===r&&(Tt=null),Tt!==r?(er=dc(),er!==r?(Rt=$,me=L(Le,er),$=me):(Ce=$,$=r)):(Ce=$,$=r)):(Ce=$,$=r)):(Ce=$,$=r)):(Ce=$,$=r)):(Ce=$,$=r),$===r&&($=Ce,me=hs(),me!==r?(Le=co(),Le!==r?(ft=Pn(),ft===r&&(ft=null),ft!==r?(t.charCodeAt(Ce)===58?(pt=E,Ce++):(pt=r,Yt===0&&Ze(R)),pt!==r?(Tt=Pn(),Tt===r&&(Tt=null),Tt!==r?(er=dc(),er!==r?(Rt=$,me=L(Le,er),$=me):(Ce=$,$=r)):(Ce=$,$=r)):(Ce=$,$=r)):(Ce=$,$=r)):(Ce=$,$=r)):(Ce=$,$=r),$===r))){if($=Ce,me=hs(),me!==r)if(Le=co(),Le!==r)if(ft=Pn(),ft!==r)if(pt=aa(),pt!==r){if(Tt=[],er=We(),er!==r)for(;er!==r;)Tt.push(er),er=We();else Tt=r;Tt!==r?(Rt=$,me=L(Le,pt),$=me):(Ce=$,$=r)}else Ce=$,$=r;else Ce=$,$=r;else Ce=$,$=r;else Ce=$,$=r;if($===r)if($=Ce,me=hs(),me!==r)if(Le=co(),Le!==r){if(ft=[],pt=Ce,Tt=Pn(),Tt===r&&(Tt=null),Tt!==r?(t.charCodeAt(Ce)===44?(er=U,Ce++):(er=r,Yt===0&&Ze(z)),er!==r?(Zr=Pn(),Zr===r&&(Zr=null),Zr!==r?(qi=co(),qi!==r?(Rt=pt,Tt=te(Le,qi),pt=Tt):(Ce=pt,pt=r)):(Ce=pt,pt=r)):(Ce=pt,pt=r)):(Ce=pt,pt=r),pt!==r)for(;pt!==r;)ft.push(pt),pt=Ce,Tt=Pn(),Tt===r&&(Tt=null),Tt!==r?(t.charCodeAt(Ce)===44?(er=U,Ce++):(er=r,Yt===0&&Ze(z)),er!==r?(Zr=Pn(),Zr===r&&(Zr=null),Zr!==r?(qi=co(),qi!==r?(Rt=pt,Tt=te(Le,qi),pt=Tt):(Ce=pt,pt=r)):(Ce=pt,pt=r)):(Ce=pt,pt=r)):(Ce=pt,pt=r);else ft=r;ft!==r?(pt=Pn(),pt===r&&(pt=null),pt!==r?(t.charCodeAt(Ce)===58?(Tt=E,Ce++):(Tt=r,Yt===0&&Ze(R)),Tt!==r?(er=Pn(),er===r&&(er=null),er!==r?(Zr=dc(),Zr!==r?(Rt=$,me=le(Le,ft,Zr),$=me):(Ce=$,$=r)):(Ce=$,$=r)):(Ce=$,$=r)):(Ce=$,$=r)):(Ce=$,$=r)}else Ce=$,$=r;else Ce=$,$=r}return $}function dc(){var $,me,Le,ft,pt,Tt,er;if($=Ce,me=Ce,Yt++,Le=Ce,ft=tt(),ft!==r?(pt=_t(),pt!==r?(t.charCodeAt(Ce)===45?(Tt=u,Ce++):(Tt=r,Yt===0&&Ze(A)),Tt!==r?(er=Pn(),er!==r?(ft=[ft,pt,Tt,er],Le=ft):(Ce=Le,Le=r)):(Ce=Le,Le=r)):(Ce=Le,Le=r)):(Ce=Le,Le=r),Yt--,Le!==r?(Ce=me,me=void 0):me=r,me!==r?(Le=We(),Le!==r?(ft=Fn(),ft!==r?(pt=ji(),pt!==r?(Tt=Ci(),Tt!==r?(Rt=$,me=he(pt),$=me):(Ce=$,$=r)):(Ce=$,$=r)):(Ce=$,$=r)):(Ce=$,$=r)):(Ce=$,$=r),$===r&&($=Ce,me=tt(),me!==r?(Le=Fn(),Le!==r?(ft=bA(),ft!==r?(pt=Ci(),pt!==r?(Rt=$,me=he(ft),$=me):(Ce=$,$=r)):(Ce=$,$=r)):(Ce=$,$=r)):(Ce=$,$=r),$===r))if($=Ce,me=Us(),me!==r){if(Le=[],ft=We(),ft!==r)for(;ft!==r;)Le.push(ft),ft=We();else Le=r;Le!==r?(Rt=$,me=Ae(me),$=me):(Ce=$,$=r)}else Ce=$,$=r;return $}function hs(){var $,me,Le;for(Yt++,$=Ce,me=[],t.charCodeAt(Ce)===32?(Le=ae,Ce++):(Le=r,Yt===0&&Ze(Ie));Le!==r;)me.push(Le),t.charCodeAt(Ce)===32?(Le=ae,Ce++):(Le=r,Yt===0&&Ze(Ie));return me!==r?(Rt=Ce,Le=Fe(me),Le?Le=void 0:Le=r,Le!==r?(me=[me,Le],$=me):(Ce=$,$=r)):(Ce=$,$=r),Yt--,$===r&&(me=r,Yt===0&&Ze(ye)),$}function _t(){var $,me,Le;for($=Ce,me=[],t.charCodeAt(Ce)===32?(Le=ae,Ce++):(Le=r,Yt===0&&Ze(Ie));Le!==r;)me.push(Le),t.charCodeAt(Ce)===32?(Le=ae,Ce++):(Le=r,Yt===0&&Ze(Ie));return me!==r?(Rt=Ce,Le=g(me),Le?Le=void 0:Le=r,Le!==r?(me=[me,Le],$=me):(Ce=$,$=r)):(Ce=$,$=r),$}function Fn(){var $;return Rt=Ce,$=Ee(),$?$=void 0:$=r,$}function Ci(){var $;return Rt=Ce,$=De(),$?$=void 0:$=r,$}function oa(){var $;return $=ds(),$===r&&($=la()),$}function co(){var $,me,Le;if($=ds(),$===r){if($=Ce,me=[],Le=Ho(),Le!==r)for(;Le!==r;)me.push(Le),Le=Ho();else me=r;me!==r&&(Rt=$,me=ce()),$=me}return $}function Us(){var $;return $=wi(),$===r&&($=gs(),$===r&&($=ds(),$===r&&($=la()))),$}function aa(){var $;return $=wi(),$===r&&($=ds(),$===r&&($=Ho())),$}function la(){var $,me,Le,ft,pt,Tt;if(Yt++,$=Ce,ee.test(t.charAt(Ce))?(me=t.charAt(Ce),Ce++):(me=r,Yt===0&&Ze(we)),me!==r){for(Le=[],ft=Ce,pt=Pn(),pt===r&&(pt=null),pt!==r?(xe.test(t.charAt(Ce))?(Tt=t.charAt(Ce),Ce++):(Tt=r,Yt===0&&Ze(ht)),Tt!==r?(pt=[pt,Tt],ft=pt):(Ce=ft,ft=r)):(Ce=ft,ft=r);ft!==r;)Le.push(ft),ft=Ce,pt=Pn(),pt===r&&(pt=null),pt!==r?(xe.test(t.charAt(Ce))?(Tt=t.charAt(Ce),Ce++):(Tt=r,Yt===0&&Ze(ht)),Tt!==r?(pt=[pt,Tt],ft=pt):(Ce=ft,ft=r)):(Ce=ft,ft=r);Le!==r?(Rt=$,me=H(),$=me):(Ce=$,$=r)}else Ce=$,$=r;return Yt--,$===r&&(me=r,Yt===0&&Ze(ne)),$}function Ho(){var $,me,Le,ft,pt;if($=Ce,t.substr(Ce,2)===lt?(me=lt,Ce+=2):(me=r,Yt===0&&Ze(Te)),me===r&&(me=null),me!==r)if(ke.test(t.charAt(Ce))?(Le=t.charAt(Ce),Ce++):(Le=r,Yt===0&&Ze(be)),Le!==r){for(ft=[],_e.test(t.charAt(Ce))?(pt=t.charAt(Ce),Ce++):(pt=r,Yt===0&&Ze(Re));pt!==r;)ft.push(pt),_e.test(t.charAt(Ce))?(pt=t.charAt(Ce),Ce++):(pt=r,Yt===0&&Ze(Re));ft!==r?(Rt=$,me=H(),$=me):(Ce=$,$=r)}else Ce=$,$=r;else Ce=$,$=r;return $}function wi(){var $,me;return $=Ce,t.substr(Ce,4)===ze?(me=ze,Ce+=4):(me=r,Yt===0&&Ze(He)),me!==r&&(Rt=$,me=b()),$=me,$}function gs(){var $,me;return $=Ce,t.substr(Ce,4)===w?(me=w,Ce+=4):(me=r,Yt===0&&Ze(S)),me!==r&&(Rt=$,me=y()),$=me,$===r&&($=Ce,t.substr(Ce,5)===F?(me=F,Ce+=5):(me=r,Yt===0&&Ze(J)),me!==r&&(Rt=$,me=X()),$=me),$}function ds(){var $,me,Le,ft;return Yt++,$=Ce,t.charCodeAt(Ce)===34?(me=ie,Ce++):(me=r,Yt===0&&Ze(Pe)),me!==r?(t.charCodeAt(Ce)===34?(Le=ie,Ce++):(Le=r,Yt===0&&Ze(Pe)),Le!==r?(Rt=$,me=Ne(),$=me):(Ce=$,$=r)):(Ce=$,$=r),$===r&&($=Ce,t.charCodeAt(Ce)===34?(me=ie,Ce++):(me=r,Yt===0&&Ze(Pe)),me!==r?(Le=ms(),Le!==r?(t.charCodeAt(Ce)===34?(ft=ie,Ce++):(ft=r,Yt===0&&Ze(Pe)),ft!==r?(Rt=$,me=ot(Le),$=me):(Ce=$,$=r)):(Ce=$,$=r)):(Ce=$,$=r)),Yt--,$===r&&(me=r,Yt===0&&Ze(Z)),$}function ms(){var $,me,Le;if($=Ce,me=[],Le=_s(),Le!==r)for(;Le!==r;)me.push(Le),Le=_s();else me=r;return me!==r&&(Rt=$,me=dt(me)),$=me,$}function _s(){var $,me,Le,ft,pt,Tt;return jt.test(t.charAt(Ce))?($=t.charAt(Ce),Ce++):($=r,Yt===0&&Ze($t)),$===r&&($=Ce,t.substr(Ce,2)===bt?(me=bt,Ce+=2):(me=r,Yt===0&&Ze(an)),me!==r&&(Rt=$,me=Qr()),$=me,$===r&&($=Ce,t.substr(Ce,2)===mr?(me=mr,Ce+=2):(me=r,Yt===0&&Ze(br)),me!==r&&(Rt=$,me=Wr()),$=me,$===r&&($=Ce,t.substr(Ce,2)===Kn?(me=Kn,Ce+=2):(me=r,Yt===0&&Ze(Ns)),me!==r&&(Rt=$,me=Ti()),$=me,$===r&&($=Ce,t.substr(Ce,2)===ps?(me=ps,Ce+=2):(me=r,Yt===0&&Ze(io)),me!==r&&(Rt=$,me=Si()),$=me,$===r&&($=Ce,t.substr(Ce,2)===Ls?(me=Ls,Ce+=2):(me=r,Yt===0&&Ze(so)),me!==r&&(Rt=$,me=cc()),$=me,$===r&&($=Ce,t.substr(Ce,2)===cu?(me=cu,Ce+=2):(me=r,Yt===0&&Ze(op)),me!==r&&(Rt=$,me=ap()),$=me,$===r&&($=Ce,t.substr(Ce,2)===Os?(me=Os,Ce+=2):(me=r,Yt===0&&Ze(Dn)),me!==r&&(Rt=$,me=oo()),$=me,$===r&&($=Ce,t.substr(Ce,2)===Ms?(me=Ms,Ce+=2):(me=r,Yt===0&&Ze(ml)),me!==r&&(Rt=$,me=yl()),$=me,$===r&&($=Ce,t.substr(Ce,2)===ao?(me=ao,Ce+=2):(me=r,Yt===0&&Ze(Vn)),me!==r?(Le=Un(),Le!==r?(ft=Un(),ft!==r?(pt=Un(),pt!==r?(Tt=Un(),Tt!==r?(Rt=$,me=On(Le,ft,pt,Tt),$=me):(Ce=$,$=r)):(Ce=$,$=r)):(Ce=$,$=r)):(Ce=$,$=r)):(Ce=$,$=r)))))))))),$}function Un(){var $;return Ni.test(t.charAt(Ce))?($=t.charAt(Ce),Ce++):($=r,Yt===0&&Ze(Mn)),$}function Pn(){var $,me;if(Yt++,$=[],tr.test(t.charAt(Ce))?(me=t.charAt(Ce),Ce++):(me=r,Yt===0&&Ze(Oe)),me!==r)for(;me!==r;)$.push(me),tr.test(t.charAt(Ce))?(me=t.charAt(Ce),Ce++):(me=r,Yt===0&&Ze(Oe));else $=r;return Yt--,$===r&&(me=r,Yt===0&&Ze(_i)),$}function ys(){var $,me;if(Yt++,$=[],Ma.test(t.charAt(Ce))?(me=t.charAt(Ce),Ce++):(me=r,Yt===0&&Ze(hr)),me!==r)for(;me!==r;)$.push(me),Ma.test(t.charAt(Ce))?(me=t.charAt(Ce),Ce++):(me=r,Yt===0&&Ze(hr));else $=r;return Yt--,$===r&&(me=r,Yt===0&&Ze(ii)),$}function We(){var $,me,Le,ft,pt,Tt;if($=Ce,me=tt(),me!==r){for(Le=[],ft=Ce,pt=Pn(),pt===r&&(pt=null),pt!==r?(Tt=tt(),Tt!==r?(pt=[pt,Tt],ft=pt):(Ce=ft,ft=r)):(Ce=ft,ft=r);ft!==r;)Le.push(ft),ft=Ce,pt=Pn(),pt===r&&(pt=null),pt!==r?(Tt=tt(),Tt!==r?(pt=[pt,Tt],ft=pt):(Ce=ft,ft=r)):(Ce=ft,ft=r);Le!==r?(me=[me,Le],$=me):(Ce=$,$=r)}else Ce=$,$=r;return $}function tt(){var $;return t.substr(Ce,2)===uc?($=uc,Ce+=2):($=r,Yt===0&&Ze(uu)),$===r&&(t.charCodeAt(Ce)===10?($=Ac,Ce++):($=r,Yt===0&&Ze(El)),$===r&&(t.charCodeAt(Ce)===13?($=vA,Ce++):($=r,Yt===0&&Ze(Au)))),$}let It=2,nr=0;if(Cl=a(),Cl!==r&&Ce===t.length)return Cl;throw Cl!==r&&Ce"u"?!0:typeof t=="object"&&t!==null&&!Array.isArray(t)?Object.keys(t).every(e=>sV(t[e])):!1}function DT(t,e,r){if(t===null)return`null +`;if(typeof t=="number"||typeof t=="boolean")return`${t.toString()} +`;if(typeof t=="string")return`${nV(t)} +`;if(Array.isArray(t)){if(t.length===0)return`[] +`;let o=" ".repeat(e);return` +${t.map(n=>`${o}- ${DT(n,e+1,!1)}`).join("")}`}if(typeof t=="object"&&t){let[o,a]=t instanceof XD?[t.data,!1]:[t,!0],n=" ".repeat(e),u=Object.keys(o);a&&u.sort((p,h)=>{let C=rV.indexOf(p),I=rV.indexOf(h);return C===-1&&I===-1?ph?1:0:C!==-1&&I===-1?-1:C===-1&&I!==-1?1:C-I});let A=u.filter(p=>!sV(o[p])).map((p,h)=>{let C=o[p],I=nV(p),v=DT(C,e+1,!0),x=h>0||r?n:"",E=I.length>1024?`? ${I} +${x}:`:`${I}:`,R=v.startsWith(` +`)?v:` ${v}`;return`${x}${E}${R}`}).join(e===0?` +`:"")||` +`;return r?` +${A}`:`${A}`}throw new Error(`Unsupported value type (${t})`)}function Ba(t){try{let e=DT(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}}function $6e(t){return t.endsWith(` +`)||(t+=` +`),(0,iV.parse)(t)}function tje(t){if(eje.test(t))return $6e(t);let e=(0,ZD.safeLoad)(t,{schema:ZD.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 Ki(t){return tje(t)}var ZD,iV,Z6e,rV,XD,eje,oV=Et(()=>{ZD=$e($K()),iV=$e(tV()),Z6e=/^(?![-?:,\][{}#&*!|>'"%@` \t\r\n]).([ \t]*(?![,\][{}:# \t\r\n]).)*$/,rV=["__metadata","version","resolution","dependencies","peerDependencies","dependenciesMeta","peerDependenciesMeta","binaries"],XD=class{constructor(e){this.data=e}};Ba.PreserveOrdering=XD;eje=/^(#.*(\r?\n))*?#\s+yarn\s+lockfile\s+v1\r?\n/i});var eI={};Vt(eI,{parseResolution:()=>UD,parseShell:()=>LD,parseSyml:()=>Ki,stringifyArgument:()=>AT,stringifyArgumentSegment:()=>fT,stringifyArithmeticExpression:()=>MD,stringifyCommand:()=>uT,stringifyCommandChain:()=>ly,stringifyCommandChainThen:()=>cT,stringifyCommandLine:()=>OD,stringifyCommandLineThen:()=>lT,stringifyEnvSegment:()=>ND,stringifyRedirectArgument:()=>Kw,stringifyResolution:()=>_D,stringifyShell:()=>ay,stringifyShellLine:()=>ay,stringifySyml:()=>Ba,stringifyValueArgument:()=>qg});var Nl=Et(()=>{sW();cW();oV()});var lV=_((yxt,PT)=>{"use strict";var rje=t=>{let e=!1,r=!1,o=!1;for(let a=0;a{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=a=>e.pascalCase?a.charAt(0).toUpperCase()+a.slice(1):a;return Array.isArray(t)?t=t.map(a=>a.trim()).filter(a=>a.length).join("-"):t=t.trim(),t.length===0?"":t.length===1?e.pascalCase?t.toUpperCase():t.toLowerCase():(t!==t.toLowerCase()&&(t=rje(t)),t=t.replace(/^[_.\- ]+/,"").toLowerCase().replace(/[_.\- ]+(\w|$)/g,(a,n)=>n.toUpperCase()).replace(/\d+(\w|$)/g,a=>a.toUpperCase()),r(t))};PT.exports=aV;PT.exports.default=aV});var cV=_((Ext,nje)=>{nje.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:"Appcircle",constant:"APPCIRCLE",env:"AC_APPCIRCLE"},{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:"Codefresh",constant:"CODEFRESH",env:"CF_BUILD_ID",pr:{any:["CF_PULL_REQUEST_NUMBER","CF_PULL_REQUEST_ID"]}},{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:"GitHub Actions",constant:"GITHUB_ACTIONS",env:"GITHUB_ACTIONS",pr:{GITHUB_EVENT_NAME:"pull_request"}},{name:"GitLab CI",constant:"GITLAB",env:"GITLAB_CI",pr:"CI_MERGE_REQUEST_ID"},{name:"GoCD",constant:"GOCD",env:"GO_PIPELINE_LABEL"},{name:"LayerCI",constant:"LAYERCI",env:"LAYERCI",pr:"LAYERCI_PULL_REQUEST"},{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",pr:{env:"PULL_REQUEST",ne:"false"}},{name:"Nevercode",constant:"NEVERCODE",env:"NEVERCODE",pr:{env:"NEVERCODE_PULL_REQUEST",ne:"false"}},{name:"Render",constant:"RENDER",env:"RENDER",pr:{IS_PULL_REQUEST:"true"}},{name:"Sail CI",constant:"SAIL",env:"SAILCI",pr:"SAIL_PULL_REQUEST_NUMBER"},{name:"Semaphore",constant:"SEMAPHORE",env:"SEMAPHORE",pr:"PULL_REQUEST_NUMBER"},{name:"Screwdriver",constant:"SCREWDRIVER",env:"SCREWDRIVER",pr:{env:"SD_PULL_REQUEST",ne:"false"}},{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"}},{name:"Vercel",constant:"VERCEL",env:"NOW_BUILDER"},{name:"Visual Studio App Center",constant:"APPCENTER",env:"APPCENTER_BUILD_ID"}]});var $g=_(Xa=>{"use strict";var AV=cV(),ju=process.env;Object.defineProperty(Xa,"_vendors",{value:AV.map(function(t){return t.constant})});Xa.name=null;Xa.isPR=null;AV.forEach(function(t){let r=(Array.isArray(t.env)?t.env:[t.env]).every(function(o){return uV(o)});if(Xa[t.constant]=r,r)switch(Xa.name=t.name,typeof t.pr){case"string":Xa.isPR=!!ju[t.pr];break;case"object":"env"in t.pr?Xa.isPR=t.pr.env in ju&&ju[t.pr.env]!==t.pr.ne:"any"in t.pr?Xa.isPR=t.pr.any.some(function(o){return!!ju[o]}):Xa.isPR=uV(t.pr);break;default:Xa.isPR=null}});Xa.isCI=!!(ju.CI||ju.CONTINUOUS_INTEGRATION||ju.BUILD_NUMBER||ju.RUN_ID||Xa.name);function uV(t){return typeof t=="string"?!!ju[t]:Object.keys(t).every(function(e){return ju[e]===t[e]})}});var Hn,cn,ed,ST,$D,fV,bT,xT,eP=Et(()=>{(function(t){t.StartOfInput="\0",t.EndOfInput="",t.EndOfPartialInput=""})(Hn||(Hn={}));(function(t){t[t.InitialNode=0]="InitialNode",t[t.SuccessNode=1]="SuccessNode",t[t.ErrorNode=2]="ErrorNode",t[t.CustomNode=3]="CustomNode"})(cn||(cn={}));ed=-1,ST=/^(-h|--help)(?:=([0-9]+))?$/,$D=/^(--[a-z]+(?:-[a-z]+)*|-[a-zA-Z]+)$/,fV=/^-[a-zA-Z]{2,}$/,bT=/^([^=]+)=([\s\S]*)$/,xT=process.env.DEBUG_CLI==="1"});var it,dy,tP,kT,rP=Et(()=>{eP();it=class extends Error{constructor(e){super(e),this.clipanion={type:"usage"},this.name="UsageError"}},dy=class extends Error{constructor(e,r){if(super(),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(o=>o.reason!==null&&o.reason===r[0].reason)){let[{reason:o}]=this.candidates;this.message=`${o} + +${this.candidates.map(({usage:a})=>`$ ${a}`).join(` +`)}`}else if(this.candidates.length===1){let[{usage:o}]=this.candidates;this.message=`Command not found; did you mean: + +$ ${o} +${kT(e)}`}else this.message=`Command not found; did you mean one of: + +${this.candidates.map(({usage:o},a)=>`${`${a}.`.padStart(4)} ${o}`).join(` +`)} + +${kT(e)}`}},tP=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((o,a)=>`${`${a}.`.padStart(4)} ${o}`).join(` +`)} + +${kT(e)}`}},kT=t=>`While running ${t.filter(e=>e!==Hn.EndOfInput&&e!==Hn.EndOfPartialInput).map(e=>{let r=JSON.stringify(e);return e.match(/\s/)||e.length===0||r!==`"${e}"`?r:e}).join(" ")}`});function ije(t){let e=t.split(` +`),r=e.filter(a=>a.match(/\S/)),o=r.length>0?r.reduce((a,n)=>Math.min(a,n.length-n.trimStart().length),Number.MAX_VALUE):0;return e.map(a=>a.slice(o).trimRight()).join(` +`)}function Do(t,{format:e,paragraphs:r}){return t=t.replace(/\r\n?/g,` +`),t=ije(t),t=t.replace(/^\n+|\n+$/g,""),t=t.replace(/^(\s*)-([^\n]*?)\n+/gm,`$1-$2 + +`),t=t.replace(/\n(\n)?\n*/g,(o,a)=>a||" "),r&&(t=t.split(/\n/).map(o=>{let a=o.match(/^\s*[*-][\t ]+(.*)/);if(!a)return o.match(/(.{1,80})(?: |$)/g).join(` +`);let n=o.length-o.trimStart().length;return a[1].match(new RegExp(`(.{1,${78-n}})(?: |$)`,"g")).map((u,A)=>" ".repeat(n)+(A===0?"- ":" ")+u).join(` +`)}).join(` + +`)),t=t.replace(/(`+)((?:.|[\n])*?)\1/g,(o,a,n)=>e.code(a+n+a)),t=t.replace(/(\*\*)((?:.|[\n])*?)\1/g,(o,a,n)=>e.bold(a+n+a)),t?`${t} +`:""}var QT,pV,hV,FT=Et(()=>{QT=Array(80).fill("\u2501");for(let t=0;t<=24;++t)QT[QT.length-t]=`\x1B[38;5;${232+t}m\u2501`;pV={header:t=>`\x1B[1m\u2501\u2501\u2501 ${t}${t.length<80-5?` ${QT.slice(t.length+5).join("")}`:":"}\x1B[0m`,bold:t=>`\x1B[1m${t}\x1B[22m`,error:t=>`\x1B[31m\x1B[1m${t}\x1B[22m\x1B[39m`,code:t=>`\x1B[36m${t}\x1B[39m`},hV={header:t=>t,bold:t=>t,error:t=>t,code:t=>t}});function Ko(t){return{...t,[tI]:!0}}function qu(t,e){return typeof t>"u"?[t,e]:typeof t=="object"&&t!==null&&!Array.isArray(t)?[void 0,t]:[t,e]}function nP(t,{mergeName:e=!1}={}){let r=t.match(/^([^:]+): (.*)$/m);if(!r)return"validation failed";let[,o,a]=r;return e&&(a=a[0].toLowerCase()+a.slice(1)),a=o!=="."||!e?`${o.replace(/^\.(\[|$)/,"$1")}: ${a}`:`: ${a}`,a}function rI(t,e){return e.length===1?new it(`${t}${nP(e[0],{mergeName:!0})}`):new it(`${t}: +${e.map(r=>` +- ${nP(r)}`).join("")}`)}function td(t,e,r){if(typeof r>"u")return e;let o=[],a=[],n=A=>{let p=e;return e=A,n.bind(null,p)};if(!r(e,{errors:o,coercions:a,coercion:n}))throw rI(`Invalid value for ${t}`,o);for(let[,A]of a)A();return e}var tI,yf=Et(()=>{rP();tI=Symbol("clipanion/isOption")});var Vo={};Vt(Vo,{KeyRelationship:()=>Gu,TypeAssertionError:()=>Yp,applyCascade:()=>sI,as:()=>Bje,assert:()=>Cje,assertWithErrors:()=>wje,cascade:()=>aP,fn:()=>vje,hasAtLeastOneKey:()=>UT,hasExactLength:()=>EV,hasForbiddenKeys:()=>qje,hasKeyRelationship:()=>aI,hasMaxLength:()=>Pje,hasMinLength:()=>Dje,hasMutuallyExclusiveKeys:()=>Gje,hasRequiredKeys:()=>jje,hasUniqueItems:()=>Sje,isArray:()=>iP,isAtLeast:()=>OT,isAtMost:()=>kje,isBase64:()=>Mje,isBoolean:()=>fje,isDate:()=>hje,isDict:()=>mje,isEnum:()=>Ks,isHexColor:()=>Oje,isISO8601:()=>Lje,isInExclusiveRange:()=>Fje,isInInclusiveRange:()=>Qje,isInstanceOf:()=>Eje,isInteger:()=>MT,isJSON:()=>Uje,isLiteral:()=>dV,isLowerCase:()=>Rje,isMap:()=>dje,isNegative:()=>bje,isNullable:()=>Hje,isNumber:()=>NT,isObject:()=>mV,isOneOf:()=>LT,isOptional:()=>_je,isPartial:()=>yje,isPayload:()=>pje,isPositive:()=>xje,isRecord:()=>oP,isSet:()=>gje,isString:()=>yy,isTuple:()=>sP,isUUID4:()=>Nje,isUnknown:()=>TT,isUpperCase:()=>Tje,makeTrait:()=>yV,makeValidator:()=>Hr,matchesRegExp:()=>iI,softAssert:()=>Ije});function jn(t){return t===null?"null":t===void 0?"undefined":t===""?"an empty string":typeof t=="symbol"?`<${t.toString()}>`:Array.isArray(t)?"an array":JSON.stringify(t)}function my(t,e){if(t.length===0)return"nothing";if(t.length===1)return jn(t[0]);let r=t.slice(0,-1),o=t[t.length-1],a=t.length>2?`, ${e} `:` ${e} `;return`${r.map(n=>jn(n)).join(", ")}${a}${jn(o)}`}function Gp(t,e){var r,o,a;return typeof e=="number"?`${(r=t?.p)!==null&&r!==void 0?r:"."}[${e}]`:sje.test(e)?`${(o=t?.p)!==null&&o!==void 0?o:""}.${e}`:`${(a=t?.p)!==null&&a!==void 0?a:"."}[${JSON.stringify(e)}]`}function RT(t,e,r){return t===1?e:r}function pr({errors:t,p:e}={},r){return t?.push(`${e??"."}: ${r}`),!1}function uje(t,e){return r=>{t[e]=r}}function Yu(t,e){return r=>{let o=t[e];return t[e]=r,Yu(t,e).bind(null,o)}}function nI(t,e,r){let o=()=>(t(r()),a),a=()=>(t(e),o);return o}function TT(){return Hr({test:(t,e)=>!0})}function dV(t){return Hr({test:(e,r)=>e!==t?pr(r,`Expected ${jn(t)} (got ${jn(e)})`):!0})}function yy(){return Hr({test:(t,e)=>typeof t!="string"?pr(e,`Expected a string (got ${jn(t)})`):!0})}function Ks(t){let e=Array.isArray(t)?t:Object.values(t),r=e.every(a=>typeof a=="string"||typeof a=="number"),o=new Set(e);return o.size===1?dV([...o][0]):Hr({test:(a,n)=>o.has(a)?!0:r?pr(n,`Expected one of ${my(e,"or")} (got ${jn(a)})`):pr(n,`Expected a valid enumeration value (got ${jn(a)})`)})}function fje(){return Hr({test:(t,e)=>{var r;if(typeof t!="boolean"){if(typeof e?.coercions<"u"){if(typeof e?.coercion>"u")return pr(e,"Unbound coercion result");let o=Aje.get(t);if(typeof o<"u")return e.coercions.push([(r=e.p)!==null&&r!==void 0?r:".",e.coercion.bind(null,o)]),!0}return pr(e,`Expected a boolean (got ${jn(t)})`)}return!0}})}function NT(){return Hr({test:(t,e)=>{var r;if(typeof t!="number"){if(typeof e?.coercions<"u"){if(typeof e?.coercion>"u")return pr(e,"Unbound coercion result");let o;if(typeof t=="string"){let a;try{a=JSON.parse(t)}catch{}if(typeof a=="number")if(JSON.stringify(a)===t)o=a;else return pr(e,`Received a number that can't be safely represented by the runtime (${t})`)}if(typeof o<"u")return e.coercions.push([(r=e.p)!==null&&r!==void 0?r:".",e.coercion.bind(null,o)]),!0}return pr(e,`Expected a number (got ${jn(t)})`)}return!0}})}function pje(t){return Hr({test:(e,r)=>{var o;if(typeof r?.coercions>"u")return pr(r,"The isPayload predicate can only be used with coercion enabled");if(typeof r.coercion>"u")return pr(r,"Unbound coercion result");if(typeof e!="string")return pr(r,`Expected a string (got ${jn(e)})`);let a;try{a=JSON.parse(e)}catch{return pr(r,`Expected a JSON string (got ${jn(e)})`)}let n={value:a};return t(a,Object.assign(Object.assign({},r),{coercion:Yu(n,"value")}))?(r.coercions.push([(o=r.p)!==null&&o!==void 0?o:".",r.coercion.bind(null,n.value)]),!0):!1}})}function hje(){return Hr({test:(t,e)=>{var r;if(!(t instanceof Date)){if(typeof e?.coercions<"u"){if(typeof e?.coercion>"u")return pr(e,"Unbound coercion result");let o;if(typeof t=="string"&&gV.test(t))o=new Date(t);else{let a;if(typeof t=="string"){let n;try{n=JSON.parse(t)}catch{}typeof n=="number"&&(a=n)}else typeof t=="number"&&(a=t);if(typeof a<"u")if(Number.isSafeInteger(a)||!Number.isSafeInteger(a*1e3))o=new Date(a*1e3);else return pr(e,`Received a timestamp that can't be safely represented by the runtime (${t})`)}if(typeof o<"u")return e.coercions.push([(r=e.p)!==null&&r!==void 0?r:".",e.coercion.bind(null,o)]),!0}return pr(e,`Expected a date (got ${jn(t)})`)}return!0}})}function iP(t,{delimiter:e}={}){return Hr({test:(r,o)=>{var a;let n=r;if(typeof r=="string"&&typeof e<"u"&&typeof o?.coercions<"u"){if(typeof o?.coercion>"u")return pr(o,"Unbound coercion result");r=r.split(e)}if(!Array.isArray(r))return pr(o,`Expected an array (got ${jn(r)})`);let u=!0;for(let A=0,p=r.length;A{var n,u;if(Object.getPrototypeOf(o).toString()==="[object Set]")if(typeof a?.coercions<"u"){if(typeof a?.coercion>"u")return pr(a,"Unbound coercion result");let A=[...o],p=[...o];if(!r(p,Object.assign(Object.assign({},a),{coercion:void 0})))return!1;let h=()=>p.some((C,I)=>C!==A[I])?new Set(p):o;return a.coercions.push([(n=a.p)!==null&&n!==void 0?n:".",nI(a.coercion,o,h)]),!0}else{let A=!0;for(let p of o)if(A=t(p,Object.assign({},a))&&A,!A&&a?.errors==null)break;return A}if(typeof a?.coercions<"u"){if(typeof a?.coercion>"u")return pr(a,"Unbound coercion result");let A={value:o};return r(o,Object.assign(Object.assign({},a),{coercion:Yu(A,"value")}))?(a.coercions.push([(u=a.p)!==null&&u!==void 0?u:".",nI(a.coercion,o,()=>new Set(A.value))]),!0):!1}return pr(a,`Expected a set (got ${jn(o)})`)}})}function dje(t,e){let r=iP(sP([t,e])),o=oP(e,{keys:t});return Hr({test:(a,n)=>{var u,A,p;if(Object.getPrototypeOf(a).toString()==="[object Map]")if(typeof n?.coercions<"u"){if(typeof n?.coercion>"u")return pr(n,"Unbound coercion result");let h=[...a],C=[...a];if(!r(C,Object.assign(Object.assign({},n),{coercion:void 0})))return!1;let I=()=>C.some((v,x)=>v[0]!==h[x][0]||v[1]!==h[x][1])?new Map(C):a;return n.coercions.push([(u=n.p)!==null&&u!==void 0?u:".",nI(n.coercion,a,I)]),!0}else{let h=!0;for(let[C,I]of a)if(h=t(C,Object.assign({},n))&&h,!h&&n?.errors==null||(h=e(I,Object.assign(Object.assign({},n),{p:Gp(n,C)}))&&h,!h&&n?.errors==null))break;return h}if(typeof n?.coercions<"u"){if(typeof n?.coercion>"u")return pr(n,"Unbound coercion result");let h={value:a};return Array.isArray(a)?r(a,Object.assign(Object.assign({},n),{coercion:void 0}))?(n.coercions.push([(A=n.p)!==null&&A!==void 0?A:".",nI(n.coercion,a,()=>new Map(h.value))]),!0):!1:o(a,Object.assign(Object.assign({},n),{coercion:Yu(h,"value")}))?(n.coercions.push([(p=n.p)!==null&&p!==void 0?p:".",nI(n.coercion,a,()=>new Map(Object.entries(h.value)))]),!0):!1}return pr(n,`Expected a map (got ${jn(a)})`)}})}function sP(t,{delimiter:e}={}){let r=EV(t.length);return Hr({test:(o,a)=>{var n;if(typeof o=="string"&&typeof e<"u"&&typeof a?.coercions<"u"){if(typeof a?.coercion>"u")return pr(a,"Unbound coercion result");o=o.split(e),a.coercions.push([(n=a.p)!==null&&n!==void 0?n:".",a.coercion.bind(null,o)])}if(!Array.isArray(o))return pr(a,`Expected a tuple (got ${jn(o)})`);let u=r(o,Object.assign({},a));for(let A=0,p=o.length;A{var n;if(Array.isArray(o)&&typeof a?.coercions<"u")return typeof a?.coercion>"u"?pr(a,"Unbound coercion result"):r(o,Object.assign(Object.assign({},a),{coercion:void 0}))?(o=Object.fromEntries(o),a.coercions.push([(n=a.p)!==null&&n!==void 0?n:".",a.coercion.bind(null,o)]),!0):!1;if(typeof o!="object"||o===null)return pr(a,`Expected an object (got ${jn(o)})`);let u=Object.keys(o),A=!0;for(let p=0,h=u.length;p{if(typeof a!="object"||a===null)return pr(n,`Expected an object (got ${jn(a)})`);let u=new Set([...r,...Object.keys(a)]),A={},p=!0;for(let h of u){if(h==="constructor"||h==="__proto__")p=pr(Object.assign(Object.assign({},n),{p:Gp(n,h)}),"Unsafe property name");else{let C=Object.prototype.hasOwnProperty.call(t,h)?t[h]:void 0,I=Object.prototype.hasOwnProperty.call(a,h)?a[h]:void 0;typeof C<"u"?p=C(I,Object.assign(Object.assign({},n),{p:Gp(n,h),coercion:Yu(a,h)}))&&p:e===null?p=pr(Object.assign(Object.assign({},n),{p:Gp(n,h)}),`Extraneous property (got ${jn(I)})`):Object.defineProperty(A,h,{enumerable:!0,get:()=>I,set:uje(a,h)})}if(!p&&n?.errors==null)break}return e!==null&&(p||n?.errors!=null)&&(p=e(A,n)&&p),p}});return Object.assign(o,{properties:t})}function yje(t){return mV(t,{extra:oP(TT())})}function yV(t){return()=>t}function Hr({test:t}){return yV(t)()}function Cje(t,e){if(!e(t))throw new Yp}function wje(t,e){let r=[];if(!e(t,{errors:r}))throw new Yp({errors:r})}function Ije(t,e){}function Bje(t,e,{coerce:r=!1,errors:o,throw:a}={}){let n=o?[]:void 0;if(!r){if(e(t,{errors:n}))return a?t:{value:t,errors:void 0};if(a)throw new Yp({errors:n});return{value:void 0,errors:n??!0}}let u={value:t},A=Yu(u,"value"),p=[];if(!e(t,{errors:n,coercion:A,coercions:p})){if(a)throw new Yp({errors:n});return{value:void 0,errors:n??!0}}for(let[,h]of p)h();return a?u.value:{value:u.value,errors:void 0}}function vje(t,e){let r=sP(t);return(...o)=>{if(!r(o))throw new Yp;return e(...o)}}function Dje(t){return Hr({test:(e,r)=>e.length>=t?!0:pr(r,`Expected to have a length of at least ${t} elements (got ${e.length})`)})}function Pje(t){return Hr({test:(e,r)=>e.length<=t?!0:pr(r,`Expected to have a length of at most ${t} elements (got ${e.length})`)})}function EV(t){return Hr({test:(e,r)=>e.length!==t?pr(r,`Expected to have a length of exactly ${t} elements (got ${e.length})`):!0})}function Sje({map:t}={}){return Hr({test:(e,r)=>{let o=new Set,a=new Set;for(let n=0,u=e.length;nt<=0?!0:pr(e,`Expected to be negative (got ${t})`)})}function xje(){return Hr({test:(t,e)=>t>=0?!0:pr(e,`Expected to be positive (got ${t})`)})}function OT(t){return Hr({test:(e,r)=>e>=t?!0:pr(r,`Expected to be at least ${t} (got ${e})`)})}function kje(t){return Hr({test:(e,r)=>e<=t?!0:pr(r,`Expected to be at most ${t} (got ${e})`)})}function Qje(t,e){return Hr({test:(r,o)=>r>=t&&r<=e?!0:pr(o,`Expected to be in the [${t}; ${e}] range (got ${r})`)})}function Fje(t,e){return Hr({test:(r,o)=>r>=t&&re!==Math.round(e)?pr(r,`Expected to be an integer (got ${e})`):!t&&!Number.isSafeInteger(e)?pr(r,`Expected to be a safe integer (got ${e})`):!0})}function iI(t){return Hr({test:(e,r)=>t.test(e)?!0:pr(r,`Expected to match the pattern ${t.toString()} (got ${jn(e)})`)})}function Rje(){return Hr({test:(t,e)=>t!==t.toLowerCase()?pr(e,`Expected to be all-lowercase (got ${t})`):!0})}function Tje(){return Hr({test:(t,e)=>t!==t.toUpperCase()?pr(e,`Expected to be all-uppercase (got ${t})`):!0})}function Nje(){return Hr({test:(t,e)=>cje.test(t)?!0:pr(e,`Expected to be a valid UUID v4 (got ${jn(t)})`)})}function Lje(){return Hr({test:(t,e)=>gV.test(t)?!0:pr(e,`Expected to be a valid ISO 8601 date string (got ${jn(t)})`)})}function Oje({alpha:t=!1}){return Hr({test:(e,r)=>(t?oje.test(e):aje.test(e))?!0:pr(r,`Expected to be a valid hexadecimal color string (got ${jn(e)})`)})}function Mje(){return Hr({test:(t,e)=>lje.test(t)?!0:pr(e,`Expected to be a valid base 64 string (got ${jn(t)})`)})}function Uje(t=TT()){return Hr({test:(e,r)=>{let o;try{o=JSON.parse(e)}catch{return pr(r,`Expected to be a valid JSON string (got ${jn(e)})`)}return t(o,r)}})}function aP(t,...e){let r=Array.isArray(e[0])?e[0]:e;return Hr({test:(o,a)=>{var n,u;let A={value:o},p=typeof a?.coercions<"u"?Yu(A,"value"):void 0,h=typeof a?.coercions<"u"?[]:void 0;if(!t(o,Object.assign(Object.assign({},a),{coercion:p,coercions:h})))return!1;let C=[];if(typeof h<"u")for(let[,I]of h)C.push(I());try{if(typeof a?.coercions<"u"){if(A.value!==o){if(typeof a?.coercion>"u")return pr(a,"Unbound coercion result");a.coercions.push([(n=a.p)!==null&&n!==void 0?n:".",a.coercion.bind(null,A.value)])}(u=a?.coercions)===null||u===void 0||u.push(...h)}return r.every(I=>I(A.value,a))}finally{for(let I of C)I()}}})}function sI(t,...e){let r=Array.isArray(e[0])?e[0]:e;return aP(t,r)}function _je(t){return Hr({test:(e,r)=>typeof e>"u"?!0:t(e,r)})}function Hje(t){return Hr({test:(e,r)=>e===null?!0:t(e,r)})}function jje(t,e){var r;let o=new Set(t),a=oI[(r=e?.missingIf)!==null&&r!==void 0?r:"missing"];return Hr({test:(n,u)=>{let A=new Set(Object.keys(n)),p=[];for(let h of o)a(A,h,n)||p.push(h);return p.length>0?pr(u,`Missing required ${RT(p.length,"property","properties")} ${my(p,"and")}`):!0}})}function UT(t,e){var r;let o=new Set(t),a=oI[(r=e?.missingIf)!==null&&r!==void 0?r:"missing"];return Hr({test:(n,u)=>Object.keys(n).some(h=>a(o,h,n))?!0:pr(u,`Missing at least one property from ${my(Array.from(o),"or")}`)})}function qje(t,e){var r;let o=new Set(t),a=oI[(r=e?.missingIf)!==null&&r!==void 0?r:"missing"];return Hr({test:(n,u)=>{let A=new Set(Object.keys(n)),p=[];for(let h of o)a(A,h,n)&&p.push(h);return p.length>0?pr(u,`Forbidden ${RT(p.length,"property","properties")} ${my(p,"and")}`):!0}})}function Gje(t,e){var r;let o=new Set(t),a=oI[(r=e?.missingIf)!==null&&r!==void 0?r:"missing"];return Hr({test:(n,u)=>{let A=new Set(Object.keys(n)),p=[];for(let h of o)a(A,h,n)&&p.push(h);return p.length>1?pr(u,`Mutually exclusive properties ${my(p,"and")}`):!0}})}function aI(t,e,r,o){var a,n;let u=new Set((a=o?.ignore)!==null&&a!==void 0?a:[]),A=oI[(n=o?.missingIf)!==null&&n!==void 0?n:"missing"],p=new Set(r),h=Yje[e],C=e===Gu.Forbids?"or":"and";return Hr({test:(I,v)=>{let x=new Set(Object.keys(I));if(!A(x,t,I)||u.has(I[t]))return!0;let E=[];for(let R of p)(A(x,R,I)&&!u.has(I[R]))!==h.expect&&E.push(R);return E.length>=1?pr(v,`Property "${t}" ${h.message} ${RT(E.length,"property","properties")} ${my(E,C)}`):!0}})}var sje,oje,aje,lje,cje,gV,Aje,Eje,LT,Yp,oI,Gu,Yje,Za=Et(()=>{sje=/^[a-zA-Z_][a-zA-Z0-9_]*$/;oje=/^#[0-9a-f]{6}$/i,aje=/^#[0-9a-f]{6}([0-9a-f]{2})?$/i,lje=/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/,cje=/^[a-f0-9]{8}-[a-f0-9]{4}-4[a-f0-9]{3}-[89aAbB][a-f0-9]{3}-[a-f0-9]{12}$/i,gV=/^(?:[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)?)$/;Aje=new Map([["true",!0],["True",!0],["1",!0],[1,!0],["false",!1],["False",!1],["0",!1],[0,!1]]);Eje=t=>Hr({test:(e,r)=>e instanceof t?!0:pr(r,`Expected an instance of ${t.name} (got ${jn(e)})`)}),LT=(t,{exclusive:e=!1}={})=>Hr({test:(r,o)=>{var a,n,u;let A=[],p=typeof o?.errors<"u"?[]:void 0;for(let h=0,C=t.length;h1?pr(o,`Expected to match exactly a single predicate (matched ${A.join(", ")})`):(u=o?.errors)===null||u===void 0||u.push(...p),!1}});Yp=class extends Error{constructor({errors:e}={}){let r="Type mismatch";if(e&&e.length>0){r+=` +`;for(let o of e)r+=` +- ${o}`}super(r)}};oI={missing:(t,e)=>t.has(e),undefined:(t,e,r)=>t.has(e)&&typeof r[e]<"u",nil:(t,e,r)=>t.has(e)&&r[e]!=null,falsy:(t,e,r)=>t.has(e)&&!!r[e]};(function(t){t.Forbids="Forbids",t.Requires="Requires"})(Gu||(Gu={}));Yje={[Gu.Forbids]:{expect:!1,message:"forbids using"},[Gu.Requires]:{expect:!0,message:"requires using"}}});var nt,Wp=Et(()=>{yf();nt=class{constructor(){this.help=!1}static Usage(e){return e}async catch(e){throw e}async validateAndExecute(){let r=this.constructor.schema;if(Array.isArray(r)){let{isDict:a,isUnknown:n,applyCascade:u}=await Promise.resolve().then(()=>(Za(),Vo)),A=u(a(n()),r),p=[],h=[];if(!A(this,{errors:p,coercions:h}))throw rI("Invalid option schema",p);for(let[,I]of h)I()}else if(r!=null)throw new Error("Invalid command schema");let o=await this.execute();return typeof o<"u"?o:0}};nt.isOption=tI;nt.Default=[]});function va(t){xT&&console.log(t)}function wV(){let t={nodes:[]};for(let e=0;e{if(e.has(o))return;e.add(o);let a=t.nodes[o];for(let u of Object.values(a.statics))for(let{to:A}of u)r(A);for(let[,{to:u}]of a.dynamics)r(u);for(let{to:u}of a.shortcuts)r(u);let n=new Set(a.shortcuts.map(({to:u})=>u));for(;a.shortcuts.length>0;){let{to:u}=a.shortcuts.shift(),A=t.nodes[u];for(let[p,h]of Object.entries(A.statics)){let C=Object.prototype.hasOwnProperty.call(a.statics,p)?a.statics[p]:a.statics[p]=[];for(let I of h)C.some(({to:v})=>I.to===v)||C.push(I)}for(let[p,h]of A.dynamics)a.dynamics.some(([C,{to:I}])=>p===C&&h.to===I)||a.dynamics.push([p,h]);for(let p of A.shortcuts)n.has(p.to)||(a.shortcuts.push(p),n.add(p.to))}};r(cn.InitialNode)}function Vje(t,{prefix:e=""}={}){if(xT){va(`${e}Nodes are:`);for(let r=0;rC!==cn.ErrorNode).map(({state:C})=>({usage:C.candidateUsage,reason:null})));if(h.every(({node:C})=>C===cn.ErrorNode))throw new dy(e,h.map(({state:C})=>({usage:C.candidateUsage,reason:C.errorMessage})));o=Xje(h)}if(o.length>0){va(" Results:");for(let n of o)va(` - ${n.node} -> ${JSON.stringify(n.state)}`)}else va(" No results");return o}function Jje(t,e,{endToken:r=Hn.EndOfInput}={}){let o=zje(t,[...e,r]);return Zje(e,o.map(({state:a})=>a))}function Xje(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 Zje(t,e){let r=e.filter(v=>v.selectedIndex!==null),o=r.filter(v=>!v.partial);if(o.length>0&&(r=o),r.length===0)throw new Error;let a=r.filter(v=>v.selectedIndex===ed||v.requiredOptions.every(x=>x.some(E=>v.options.find(R=>R.name===E))));if(a.length===0)throw new dy(t,r.map(v=>({usage:v.candidateUsage,reason:null})));let n=0;for(let v of a)v.path.length>n&&(n=v.path.length);let u=a.filter(v=>v.path.length===n),A=v=>v.positionals.filter(({extra:x})=>!x).length+v.options.length,p=u.map(v=>({state:v,positionalCount:A(v)})),h=0;for(let{positionalCount:v}of p)v>h&&(h=v);let C=p.filter(({positionalCount:v})=>v===h).map(({state:v})=>v),I=$je(C);if(I.length>1)throw new tP(t,I.map(v=>v.candidateUsage));return I[0]}function $je(t){let e=[],r=[];for(let o of t)o.selectedIndex===ed?r.push(o):e.push(o);return r.length>0&&e.push({...CV,path:IV(...r.map(o=>o.path)),options:r.reduce((o,a)=>o.concat(a.options),[])}),e}function IV(t,e,...r){return e===void 0?Array.from(t):IV(t.filter((o,a)=>o===e[a]),...r)}function $a(){return{dynamics:[],shortcuts:[],statics:{}}}function BV(t){return t===cn.SuccessNode||t===cn.ErrorNode}function _T(t,e=0){return{to:BV(t.to)?t.to:t.to>=cn.CustomNode?t.to+e-cn.CustomNode+1:t.to+e,reducer:t.reducer}}function eqe(t,e=0){let r=$a();for(let[o,a]of t.dynamics)r.dynamics.push([o,_T(a,e)]);for(let o of t.shortcuts)r.shortcuts.push(_T(o,e));for(let[o,a]of Object.entries(t.statics))r.statics[o]=a.map(n=>_T(n,e));return r}function Ss(t,e,r,o,a){t.nodes[e].dynamics.push([r,{to:o,reducer:a}])}function Ey(t,e,r,o){t.nodes[e].shortcuts.push({to:r,reducer:o})}function zo(t,e,r,o,a){(Object.prototype.hasOwnProperty.call(t.nodes[e].statics,r)?t.nodes[e].statics[r]:t.nodes[e].statics[r]=[]).push({to:o,reducer:a})}function lP(t,e,r,o,a){if(Array.isArray(e)){let[n,...u]=e;return t[n](r,o,a,...u)}else return t[e](r,o,a)}var CV,tqe,HT,el,jT,Cy,cP=Et(()=>{eP();rP();CV={candidateUsage:null,requiredOptions:[],errorMessage:null,ignoreOptions:!1,path:[],positionals:[],options:[],remainder:null,selectedIndex:ed,partial:!1,tokens:[]};tqe={always:()=>!0,isOptionLike:(t,e)=>!t.ignoreOptions&&e!=="-"&&e.startsWith("-"),isNotOptionLike:(t,e)=>t.ignoreOptions||e==="-"||!e.startsWith("-"),isOption:(t,e,r,o)=>!t.ignoreOptions&&e===o,isBatchOption:(t,e,r,o)=>!t.ignoreOptions&&fV.test(e)&&[...e.slice(1)].every(a=>o.has(`-${a}`)),isBoundOption:(t,e,r,o,a)=>{let n=e.match(bT);return!t.ignoreOptions&&!!n&&$D.test(n[1])&&o.has(n[1])&&a.filter(u=>u.nameSet.includes(n[1])).every(u=>u.allowBinding)},isNegatedOption:(t,e,r,o)=>!t.ignoreOptions&&e===`--no-${o.slice(2)}`,isHelp:(t,e)=>!t.ignoreOptions&&ST.test(e),isUnsupportedOption:(t,e,r,o)=>!t.ignoreOptions&&e.startsWith("-")&&$D.test(e)&&!o.has(e),isInvalidOption:(t,e)=>!t.ignoreOptions&&e.startsWith("-")&&!$D.test(e)},HT={setCandidateState:(t,e,r,o)=>({...t,...o}),setSelectedIndex:(t,e,r,o)=>({...t,selectedIndex:o}),setPartialIndex:(t,e,r,o)=>({...t,selectedIndex:o,partial:!0}),pushBatch:(t,e,r,o)=>{let a=t.options.slice(),n=t.tokens.slice();for(let u=1;u{let[,o,a]=e.match(bT),n=t.options.concat({name:o,value:a}),u=t.tokens.concat([{segmentIndex:r,type:"option",slice:[0,o.length],option:o},{segmentIndex:r,type:"assign",slice:[o.length,o.length+1]},{segmentIndex:r,type:"value",slice:[o.length+1,o.length+a.length+1]}]);return{...t,options:n,tokens:u}},pushPath:(t,e,r)=>{let o=t.path.concat(e),a=t.tokens.concat({segmentIndex:r,type:"path"});return{...t,path:o,tokens:a}},pushPositional:(t,e,r)=>{let o=t.positionals.concat({value:e,extra:!1}),a=t.tokens.concat({segmentIndex:r,type:"positional"});return{...t,positionals:o,tokens:a}},pushExtra:(t,e,r)=>{let o=t.positionals.concat({value:e,extra:!0}),a=t.tokens.concat({segmentIndex:r,type:"positional"});return{...t,positionals:o,tokens:a}},pushExtraNoLimits:(t,e,r)=>{let o=t.positionals.concat({value:e,extra:el}),a=t.tokens.concat({segmentIndex:r,type:"positional"});return{...t,positionals:o,tokens:a}},pushTrue:(t,e,r,o)=>{let a=t.options.concat({name:o,value:!0}),n=t.tokens.concat({segmentIndex:r,type:"option",option:o});return{...t,options:a,tokens:n}},pushFalse:(t,e,r,o)=>{let a=t.options.concat({name:o,value:!1}),n=t.tokens.concat({segmentIndex:r,type:"option",option:o});return{...t,options:a,tokens:n}},pushUndefined:(t,e,r,o)=>{let a=t.options.concat({name:e,value:void 0}),n=t.tokens.concat({segmentIndex:r,type:"option",option:e});return{...t,options:a,tokens:n}},pushStringValue:(t,e,r)=>{var o;let a=t.options[t.options.length-1],n=t.options.slice(),u=t.tokens.concat({segmentIndex:r,type:"value"});return a.value=((o=a.value)!==null&&o!==void 0?o:[]).concat([e]),{...t,options:n,tokens:u}},setStringValue:(t,e,r)=>{let o=t.options[t.options.length-1],a=t.options.slice(),n=t.tokens.concat({segmentIndex:r,type:"value"});return o.value=e,{...t,options:a,tokens:n}},inhibateOptions:t=>({...t,ignoreOptions:!0}),useHelp:(t,e,r,o)=>{let[,,a]=e.match(ST);return typeof a<"u"?{...t,options:[{name:"-c",value:String(o)},{name:"-i",value:a}]}:{...t,options:[{name:"-c",value:String(o)}]}},setError:(t,e,r,o)=>e===Hn.EndOfInput||e===Hn.EndOfPartialInput?{...t,errorMessage:`${o}.`}:{...t,errorMessage:`${o} ("${e}").`},setOptionArityError:(t,e)=>{let r=t.options[t.options.length-1];return{...t,errorMessage:`Not enough arguments to option ${r.name}.`}}},el=Symbol(),jT=class{constructor(e,r){this.allOptionNames=new Map,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:o=this.arity.extra,proxy:a=this.arity.proxy}){Object.assign(this.arity,{leading:e,trailing:r,extra:o,proxy:a})}addPositional({name:e="arg",required:r=!0}={}){if(!r&&this.arity.extra===el)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!==el?this.arity.extra.push(e):this.arity.extra!==el&&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===el)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 o=0;o1)throw new Error("The arity cannot be higher than 1 when the option only supports the --arg=value syntax");if(!Number.isInteger(o))throw new Error(`The arity must be an integer, got ${o}`);if(o<0)throw new Error(`The arity must be positive, got ${o}`);let A=e.reduce((p,h)=>h.length>p.length?h:p,"");for(let p of e)this.allOptionNames.set(p,A);this.options.push({preferredName:A,nameSet:e,description:r,arity:o,hidden:a,required:n,allowBinding:u})}setContext(e){this.context=e}usage({detailed:e=!0,inlineOptions:r=!0}={}){let o=[this.cliOpts.binaryName],a=[];if(this.paths.length>0&&o.push(...this.paths[0]),e){for(let{preferredName:u,nameSet:A,arity:p,hidden:h,description:C,required:I}of this.options){if(h)continue;let v=[];for(let E=0;E`:`[${x}]`)}o.push(...this.arity.leading.map(u=>`<${u}>`)),this.arity.extra===el?o.push("..."):o.push(...this.arity.extra.map(u=>`[${u}]`)),o.push(...this.arity.trailing.map(u=>`<${u}>`))}return{usage:o.join(" "),options:a}}compile(){if(typeof this.context>"u")throw new Error("Assertion failed: No context attached");let e=wV(),r=cn.InitialNode,o=this.usage().usage,a=this.options.filter(A=>A.required).map(A=>A.nameSet);r=Oc(e,$a()),zo(e,cn.InitialNode,Hn.StartOfInput,r,["setCandidateState",{candidateUsage:o,requiredOptions:a}]);let n=this.arity.proxy?"always":"isNotOptionLike",u=this.paths.length>0?this.paths:[[]];for(let A of u){let p=r;if(A.length>0){let v=Oc(e,$a());Ey(e,p,v),this.registerOptions(e,v),p=v}for(let v=0;v0||!this.arity.proxy){let v=Oc(e,$a());Ss(e,p,"isHelp",v,["useHelp",this.cliIndex]),Ss(e,v,"always",v,"pushExtra"),zo(e,v,Hn.EndOfInput,cn.SuccessNode,["setSelectedIndex",ed]),this.registerOptions(e,p)}this.arity.leading.length>0&&(zo(e,p,Hn.EndOfInput,cn.ErrorNode,["setError","Not enough positional arguments"]),zo(e,p,Hn.EndOfPartialInput,cn.SuccessNode,["setPartialIndex",this.cliIndex]));let h=p;for(let v=0;v0||v+1!==this.arity.leading.length)&&(zo(e,x,Hn.EndOfInput,cn.ErrorNode,["setError","Not enough positional arguments"]),zo(e,x,Hn.EndOfPartialInput,cn.SuccessNode,["setPartialIndex",this.cliIndex])),Ss(e,h,"isNotOptionLike",x,"pushPositional"),h=x}let C=h;if(this.arity.extra===el||this.arity.extra.length>0){let v=Oc(e,$a());if(Ey(e,h,v),this.arity.extra===el){let x=Oc(e,$a());this.arity.proxy||this.registerOptions(e,x),Ss(e,h,n,x,"pushExtraNoLimits"),Ss(e,x,n,x,"pushExtraNoLimits"),Ey(e,x,v)}else for(let x=0;x0)&&this.registerOptions(e,E),Ss(e,C,n,E,"pushExtra"),Ey(e,E,v),C=E}C=v}this.arity.trailing.length>0&&(zo(e,C,Hn.EndOfInput,cn.ErrorNode,["setError","Not enough positional arguments"]),zo(e,C,Hn.EndOfPartialInput,cn.SuccessNode,["setPartialIndex",this.cliIndex]));let I=C;for(let v=0;v=0&&e{let u=n?Hn.EndOfPartialInput:Hn.EndOfInput;return Jje(o,a,{endToken:u})}}}}});function DV(){return uP.default&&"getColorDepth"in uP.default.WriteStream.prototype?uP.default.WriteStream.prototype.getColorDepth():process.env.FORCE_COLOR==="0"?1:process.env.FORCE_COLOR==="1"||typeof process.stdout<"u"&&process.stdout.isTTY?8:1}function PV(t){let e=vV;if(typeof e>"u"){if(t.stdout===process.stdout&&t.stderr===process.stderr)return null;let{AsyncLocalStorage:r}=Be("async_hooks");e=vV=new r;let o=process.stdout._write;process.stdout._write=function(n,u,A){let p=e.getStore();return typeof p>"u"?o.call(this,n,u,A):p.stdout.write(n,u,A)};let a=process.stderr._write;process.stderr._write=function(n,u,A){let p=e.getStore();return typeof p>"u"?a.call(this,n,u,A):p.stderr.write(n,u,A)}}return r=>e.run(t,r)}var uP,vV,SV=Et(()=>{uP=$e(Be("tty"),1)});var wy,bV=Et(()=>{Wp();wy=class extends nt{constructor(e){super(),this.contexts=e,this.commands=[]}static from(e,r){let o=new wy(r);o.path=e.path;for(let a of e.options)switch(a.name){case"-c":o.commands.push(Number(a.value));break;case"-i":o.index=Number(a.value);break}return o}async execute(){let e=this.commands;if(typeof this.index<"u"&&this.index>=0&&this.index1){this.context.stdout.write(`Multiple commands match your selection: +`),this.context.stdout.write(` +`);let r=0;for(let o of this.commands)this.context.stdout.write(this.cli.usage(this.contexts[o].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. +`)}}}});async function QV(...t){let{resolvedOptions:e,resolvedCommandClasses:r,resolvedArgv:o,resolvedContext:a}=RV(t);return as.from(r,e).runExit(o,a)}async function FV(...t){let{resolvedOptions:e,resolvedCommandClasses:r,resolvedArgv:o,resolvedContext:a}=RV(t);return as.from(r,e).run(o,a)}function RV(t){let e,r,o,a;switch(typeof process<"u"&&typeof process.argv<"u"&&(o=process.argv.slice(2)),t.length){case 1:r=t[0];break;case 2:t[0]&&t[0].prototype instanceof nt||Array.isArray(t[0])?(r=t[0],Array.isArray(t[1])?o=t[1]:a=t[1]):(e=t[0],r=t[1]);break;case 3:Array.isArray(t[2])?(e=t[0],r=t[1],o=t[2]):t[0]&&t[0].prototype instanceof nt||Array.isArray(t[0])?(r=t[0],o=t[1],a=t[2]):(e=t[0],r=t[1],a=t[2]);break;default:e=t[0],r=t[1],o=t[2],a=t[3];break}if(typeof o>"u")throw new Error("The argv parameter must be provided when running Clipanion outside of a Node context");return{resolvedOptions:e,resolvedCommandClasses:r,resolvedArgv:o,resolvedContext:a}}function kV(t){return t()}var xV,as,TV=Et(()=>{eP();cP();FT();SV();Wp();bV();xV=Symbol("clipanion/errorCommand");as=class{constructor({binaryLabel:e,binaryName:r="...",binaryVersion:o,enableCapture:a=!1,enableColors:n}={}){this.registrations=new Map,this.builder=new Cy({binaryName:r}),this.binaryLabel=e,this.binaryName=r,this.binaryVersion=o,this.enableCapture=a,this.enableColors=n}static from(e,r={}){let o=new as(r),a=Array.isArray(e)?e:[e];for(let n of a)o.register(n);return o}register(e){var r;let o=new Map,a=new e;for(let p in a){let h=a[p];typeof h=="object"&&h!==null&&h[nt.isOption]&&o.set(p,h)}let n=this.builder.command(),u=n.cliIndex,A=(r=e.paths)!==null&&r!==void 0?r:a.paths;if(typeof A<"u")for(let p of A)n.addPath(p);this.registrations.set(e,{specs:o,builder:n,index:u});for(let[p,{definition:h}]of o.entries())h(n,p);n.setContext({commandClass:e})}process(e,r){let{input:o,context:a,partial:n}=typeof e=="object"&&Array.isArray(e)?{input:e,context:r}:e,{contexts:u,process:A}=this.builder.compile(),p=A(o,{partial:n}),h={...as.defaultContext,...a};switch(p.selectedIndex){case ed:{let C=wy.from(p,u);return C.context=h,C.tokens=p.tokens,C}default:{let{commandClass:C}=u[p.selectedIndex],I=this.registrations.get(C);if(typeof I>"u")throw new Error("Assertion failed: Expected the command class to have been registered.");let v=new C;v.context=h,v.tokens=p.tokens,v.path=p.path;try{for(let[x,{transformer:E}]of I.specs.entries())v[x]=E(I.builder,x,p,h);return v}catch(x){throw x[xV]=v,x}}break}}async run(e,r){var o,a;let n,u={...as.defaultContext,...r},A=(o=this.enableColors)!==null&&o!==void 0?o:u.colorDepth>1;if(!Array.isArray(e))n=e;else try{n=this.process(e,u)}catch(C){return u.stdout.write(this.error(C,{colored:A})),1}if(n.help)return u.stdout.write(this.usage(n,{colored:A,detailed:!0})),0;n.context=u,n.cli={binaryLabel:this.binaryLabel,binaryName:this.binaryName,binaryVersion:this.binaryVersion,enableCapture:this.enableCapture,enableColors:this.enableColors,definitions:()=>this.definitions(),definition:C=>this.definition(C),error:(C,I)=>this.error(C,I),format:C=>this.format(C),process:(C,I)=>this.process(C,{...u,...I}),run:(C,I)=>this.run(C,{...u,...I}),usage:(C,I)=>this.usage(C,I)};let p=this.enableCapture&&(a=PV(u))!==null&&a!==void 0?a:kV,h;try{h=await p(()=>n.validateAndExecute().catch(C=>n.catch(C).then(()=>0)))}catch(C){return u.stdout.write(this.error(C,{colored:A,command:n})),1}return h}async runExit(e,r){process.exitCode=await this.run(e,r)}definition(e,{colored:r=!1}={}){if(!e.usage)return null;let{usage:o}=this.getUsageByRegistration(e,{detailed:!1}),{usage:a,options:n}=this.getUsageByRegistration(e,{detailed:!0,inlineOptions:!1}),u=typeof e.usage.category<"u"?Do(e.usage.category,{format:this.format(r),paragraphs:!1}):void 0,A=typeof e.usage.description<"u"?Do(e.usage.description,{format:this.format(r),paragraphs:!1}):void 0,p=typeof e.usage.details<"u"?Do(e.usage.details,{format:this.format(r),paragraphs:!0}):void 0,h=typeof e.usage.examples<"u"?e.usage.examples.map(([C,I])=>[Do(C,{format:this.format(r),paragraphs:!1}),I.replace(/\$0/g,this.binaryName)]):void 0;return{path:o,usage:a,category:u,description:A,details:p,examples:h,options:n}}definitions({colored:e=!1}={}){let r=[];for(let o of this.registrations.keys()){let a=this.definition(o,{colored:e});!a||r.push(a)}return r}usage(e=null,{colored:r,detailed:o=!1,prefix:a="$ "}={}){var n;if(e===null){for(let p of this.registrations.keys()){let h=p.paths,C=typeof p.usage<"u";if(!h||h.length===0||h.length===1&&h[0].length===0||((n=h?.some(x=>x.length===0))!==null&&n!==void 0?n:!1))if(e){e=null;break}else e=p;else if(C){e=null;continue}}e&&(o=!0)}let u=e!==null&&e instanceof nt?e.constructor:e,A="";if(u)if(o){let{description:p="",details:h="",examples:C=[]}=u.usage||{};p!==""&&(A+=Do(p,{format:this.format(r),paragraphs:!1}).replace(/^./,x=>x.toUpperCase()),A+=` +`),(h!==""||C.length>0)&&(A+=`${this.format(r).header("Usage")} +`,A+=` +`);let{usage:I,options:v}=this.getUsageByRegistration(u,{inlineOptions:!1});if(A+=`${this.format(r).bold(a)}${I} +`,v.length>0){A+=` +`,A+=`${this.format(r).header("Options")} +`;let x=v.reduce((E,R)=>Math.max(E,R.definition.length),0);A+=` +`;for(let{definition:E,description:R}of v)A+=` ${this.format(r).bold(E.padEnd(x))} ${Do(R,{format:this.format(r),paragraphs:!1})}`}if(h!==""&&(A+=` +`,A+=`${this.format(r).header("Details")} +`,A+=` +`,A+=Do(h,{format:this.format(r),paragraphs:!0})),C.length>0){A+=` +`,A+=`${this.format(r).header("Examples")} +`;for(let[x,E]of C)A+=` +`,A+=Do(x,{format:this.format(r),paragraphs:!1}),A+=`${E.replace(/^/m,` ${this.format(r).bold(a)}`).replace(/\$0/g,this.binaryName)} +`}}else{let{usage:p}=this.getUsageByRegistration(u);A+=`${this.format(r).bold(a)}${p} +`}else{let p=new Map;for(let[v,{index:x}]of this.registrations.entries()){if(typeof v.usage>"u")continue;let E=typeof v.usage.category<"u"?Do(v.usage.category,{format:this.format(r),paragraphs:!1}):null,R=p.get(E);typeof R>"u"&&p.set(E,R=[]);let{usage:L}=this.getUsageByIndex(x);R.push({commandClass:v,usage:L})}let h=Array.from(p.keys()).sort((v,x)=>v===null?-1:x===null?1:v.localeCompare(x,"en",{usage:"sort",caseFirst:"upper"})),C=typeof this.binaryLabel<"u",I=typeof this.binaryVersion<"u";C||I?(C&&I?A+=`${this.format(r).header(`${this.binaryLabel} - ${this.binaryVersion}`)} + +`:C?A+=`${this.format(r).header(`${this.binaryLabel}`)} +`:A+=`${this.format(r).header(`${this.binaryVersion}`)} +`,A+=` ${this.format(r).bold(a)}${this.binaryName} +`):A+=`${this.format(r).bold(a)}${this.binaryName} +`;for(let v of h){let x=p.get(v).slice().sort((R,L)=>R.usage.localeCompare(L.usage,"en",{usage:"sort",caseFirst:"upper"})),E=v!==null?v.trim():"General commands";A+=` +`,A+=`${this.format(r).header(`${E}`)} +`;for(let{commandClass:R,usage:L}of x){let U=R.usage.description||"undocumented";A+=` +`,A+=` ${this.format(r).bold(L)} +`,A+=` ${Do(U,{format:this.format(r),paragraphs:!1})}`}}A+=` +`,A+=Do("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 o,{colored:a,command:n=(o=e[xV])!==null&&o!==void 0?o:null}=r===void 0?{}:r;(!e||typeof e!="object"||!("stack"in e))&&(e=new Error(`Execution failed with a non-error rejection (rejected value: ${JSON.stringify(e)})`));let u="",A=e.name.replace(/([a-z])([A-Z])/g,"$1 $2");A==="Error"&&(A="Internal Error"),u+=`${this.format(a).error(A)}: ${e.message} +`;let p=e.clipanion;return typeof p<"u"?p.type==="usage"&&(u+=` +`,u+=this.usage(n)):e.stack&&(u+=`${e.stack.replace(/^.*\n/,"")} +`),u}format(e){var r;return((r=e??this.enableColors)!==null&&r!==void 0?r:as.defaultContext.colorDepth>1)?pV:hV}getUsageByRegistration(e,r){let o=this.registrations.get(e);if(typeof o>"u")throw new Error("Assertion failed: Unregistered command");return this.getUsageByIndex(o.index,r)}getUsageByIndex(e,r){return this.builder.getBuilderByIndex(e).usage(r)}};as.defaultContext={env:process.env,stdin:process.stdin,stdout:process.stdout,stderr:process.stderr,colorDepth:DV()}});var lI,NV=Et(()=>{Wp();lI=class extends nt{async execute(){this.context.stdout.write(`${JSON.stringify(this.cli.definitions(),null,2)} +`)}};lI.paths=[["--clipanion=definitions"]]});var cI,LV=Et(()=>{Wp();cI=class extends nt{async execute(){this.context.stdout.write(this.cli.usage())}};cI.paths=[["-h"],["--help"]]});function AP(t={}){return Ko({definition(e,r){var o;e.addProxy({name:(o=t.name)!==null&&o!==void 0?o:r,required:t.required})},transformer(e,r,o){return o.positionals.map(({value:a})=>a)}})}var qT=Et(()=>{yf()});var uI,OV=Et(()=>{Wp();qT();uI=class extends nt{constructor(){super(...arguments),this.args=AP()}async execute(){this.context.stdout.write(`${JSON.stringify(this.cli.process(this.args).tokens,null,2)} +`)}};uI.paths=[["--clipanion=tokens"]]});var AI,MV=Et(()=>{Wp();AI=class extends nt{async execute(){var e;this.context.stdout.write(`${(e=this.cli.binaryVersion)!==null&&e!==void 0?e:""} +`)}};AI.paths=[["-v"],["--version"]]});var GT={};Vt(GT,{DefinitionsCommand:()=>lI,HelpCommand:()=>cI,TokensCommand:()=>uI,VersionCommand:()=>AI});var UV=Et(()=>{NV();LV();OV();MV()});function _V(t,e,r){let[o,a]=qu(e,r??{}),{arity:n=1}=a,u=t.split(","),A=new Set(u);return Ko({definition(p){p.addOption({names:u,arity:n,hidden:a?.hidden,description:a?.description,required:a.required})},transformer(p,h,C){let I,v=typeof o<"u"?[...o]:void 0;for(let{name:x,value:E}of C.options)!A.has(x)||(I=x,v=v??[],v.push(E));return typeof v<"u"?td(I??h,v,a.validator):v}})}var HV=Et(()=>{yf()});function jV(t,e,r){let[o,a]=qu(e,r??{}),n=t.split(","),u=new Set(n);return Ko({definition(A){A.addOption({names:n,allowBinding:!1,arity:0,hidden:a.hidden,description:a.description,required:a.required})},transformer(A,p,h){let C=o;for(let{name:I,value:v}of h.options)!u.has(I)||(C=v);return C}})}var qV=Et(()=>{yf()});function GV(t,e,r){let[o,a]=qu(e,r??{}),n=t.split(","),u=new Set(n);return Ko({definition(A){A.addOption({names:n,allowBinding:!1,arity:0,hidden:a.hidden,description:a.description,required:a.required})},transformer(A,p,h){let C=o;for(let{name:I,value:v}of h.options)!u.has(I)||(C??(C=0),v?C+=1:C=0);return C}})}var YV=Et(()=>{yf()});function WV(t={}){return Ko({definition(e,r){var o;e.addRest({name:(o=t.name)!==null&&o!==void 0?o:r,required:t.required})},transformer(e,r,o){let a=u=>{let A=o.positionals[u];return A.extra===el||A.extra===!1&&uu)}})}var KV=Et(()=>{cP();yf()});function rqe(t,e,r){let[o,a]=qu(e,r??{}),{arity:n=1}=a,u=t.split(","),A=new Set(u);return Ko({definition(p){p.addOption({names:u,arity:a.tolerateBoolean?0:n,hidden:a.hidden,description:a.description,required:a.required})},transformer(p,h,C,I){let v,x=o;typeof a.env<"u"&&I.env[a.env]&&(v=a.env,x=I.env[a.env]);for(let{name:E,value:R}of C.options)!A.has(E)||(v=E,x=R);return typeof x=="string"?td(v??h,x,a.validator):x}})}function nqe(t={}){let{required:e=!0}=t;return Ko({definition(r,o){var a;r.addPositional({name:(a=t.name)!==null&&a!==void 0?a:o,required:t.required})},transformer(r,o,a){var n;for(let u=0;u{cP();yf()});var ge={};Vt(ge,{Array:()=>_V,Boolean:()=>jV,Counter:()=>GV,Proxy:()=>AP,Rest:()=>WV,String:()=>VV,applyValidator:()=>td,cleanValidationError:()=>nP,formatError:()=>rI,isOptionSymbol:()=>tI,makeCommandOption:()=>Ko,rerouteArguments:()=>qu});var JV=Et(()=>{yf();qT();HV();qV();YV();KV();zV()});var fI={};Vt(fI,{Builtins:()=>GT,Cli:()=>as,Command:()=>nt,Option:()=>ge,UsageError:()=>it,formatMarkdownish:()=>Do,run:()=>FV,runExit:()=>QV});var qt=Et(()=>{rP();FT();Wp();TV();UV();JV()});var XV=_((Pkt,iqe)=>{iqe.exports={name:"dotenv",version:"16.3.1",description:"Loads environment variables from .env file",main:"lib/main.js",types:"lib/main.d.ts",exports:{".":{types:"./lib/main.d.ts",require:"./lib/main.js",default:"./lib/main.js"},"./config":"./config.js","./config.js":"./config.js","./lib/env-options":"./lib/env-options.js","./lib/env-options.js":"./lib/env-options.js","./lib/cli-options":"./lib/cli-options.js","./lib/cli-options.js":"./lib/cli-options.js","./package.json":"./package.json"},scripts:{"dts-check":"tsc --project tests/types/tsconfig.json",lint:"standard","lint-readme":"standard-markdown",pretest:"npm run lint && npm run dts-check",test:"tap tests/*.js --100 -Rspec",prerelease:"npm test",release:"standard-version"},repository:{type:"git",url:"git://github.com/motdotla/dotenv.git"},funding:"https://github.com/motdotla/dotenv?sponsor=1",keywords:["dotenv","env",".env","environment","variables","config","settings"],readmeFilename:"README.md",license:"BSD-2-Clause",devDependencies:{"@definitelytyped/dtslint":"^0.0.133","@types/node":"^18.11.3",decache:"^4.6.1",sinon:"^14.0.1",standard:"^17.0.0","standard-markdown":"^7.1.0","standard-version":"^9.5.0",tap:"^16.3.0",tar:"^6.1.11",typescript:"^4.8.4"},engines:{node:">=12"},browser:{fs:!1}}});var tz=_((Skt,Ef)=>{var ZV=Be("fs"),WT=Be("path"),sqe=Be("os"),oqe=Be("crypto"),aqe=XV(),KT=aqe.version,lqe=/(?:^|^)\s*(?:export\s+)?([\w.-]+)(?:\s*=\s*?|:\s+?)(\s*'(?:\\'|[^'])*'|\s*"(?:\\"|[^"])*"|\s*`(?:\\`|[^`])*`|[^#\r\n]+)?\s*(?:#.*)?(?:$|$)/mg;function cqe(t){let e={},r=t.toString();r=r.replace(/\r\n?/mg,` +`);let o;for(;(o=lqe.exec(r))!=null;){let a=o[1],n=o[2]||"";n=n.trim();let u=n[0];n=n.replace(/^(['"`])([\s\S]*)\1$/mg,"$2"),u==='"'&&(n=n.replace(/\\n/g,` +`),n=n.replace(/\\r/g,"\r")),e[a]=n}return e}function uqe(t){let e=ez(t),r=bs.configDotenv({path:e});if(!r.parsed)throw new Error(`MISSING_DATA: Cannot parse ${e} for an unknown reason`);let o=$V(t).split(","),a=o.length,n;for(let u=0;u=a)throw A}return bs.parse(n)}function Aqe(t){console.log(`[dotenv@${KT}][INFO] ${t}`)}function fqe(t){console.log(`[dotenv@${KT}][WARN] ${t}`)}function YT(t){console.log(`[dotenv@${KT}][DEBUG] ${t}`)}function $V(t){return t&&t.DOTENV_KEY&&t.DOTENV_KEY.length>0?t.DOTENV_KEY:process.env.DOTENV_KEY&&process.env.DOTENV_KEY.length>0?process.env.DOTENV_KEY:""}function pqe(t,e){let r;try{r=new URL(e)}catch(A){throw A.code==="ERR_INVALID_URL"?new Error("INVALID_DOTENV_KEY: Wrong format. Must be in valid uri format like dotenv://:key_1234@dotenv.org/vault/.env.vault?environment=development"):A}let o=r.password;if(!o)throw new Error("INVALID_DOTENV_KEY: Missing key part");let a=r.searchParams.get("environment");if(!a)throw new Error("INVALID_DOTENV_KEY: Missing environment part");let n=`DOTENV_VAULT_${a.toUpperCase()}`,u=t.parsed[n];if(!u)throw new Error(`NOT_FOUND_DOTENV_ENVIRONMENT: Cannot locate environment ${n} in your .env.vault file.`);return{ciphertext:u,key:o}}function ez(t){let e=WT.resolve(process.cwd(),".env");return t&&t.path&&t.path.length>0&&(e=t.path),e.endsWith(".vault")?e:`${e}.vault`}function hqe(t){return t[0]==="~"?WT.join(sqe.homedir(),t.slice(1)):t}function gqe(t){Aqe("Loading env from encrypted .env.vault");let e=bs._parseVault(t),r=process.env;return t&&t.processEnv!=null&&(r=t.processEnv),bs.populate(r,e,t),{parsed:e}}function dqe(t){let e=WT.resolve(process.cwd(),".env"),r="utf8",o=Boolean(t&&t.debug);t&&(t.path!=null&&(e=hqe(t.path)),t.encoding!=null&&(r=t.encoding));try{let a=bs.parse(ZV.readFileSync(e,{encoding:r})),n=process.env;return t&&t.processEnv!=null&&(n=t.processEnv),bs.populate(n,a,t),{parsed:a}}catch(a){return o&&YT(`Failed to load ${e} ${a.message}`),{error:a}}}function mqe(t){let e=ez(t);return $V(t).length===0?bs.configDotenv(t):ZV.existsSync(e)?bs._configVault(t):(fqe(`You set DOTENV_KEY but you are missing a .env.vault file at ${e}. Did you forget to build it?`),bs.configDotenv(t))}function yqe(t,e){let r=Buffer.from(e.slice(-64),"hex"),o=Buffer.from(t,"base64"),a=o.slice(0,12),n=o.slice(-16);o=o.slice(12,-16);try{let u=oqe.createDecipheriv("aes-256-gcm",r,a);return u.setAuthTag(n),`${u.update(o)}${u.final()}`}catch(u){let A=u instanceof RangeError,p=u.message==="Invalid key length",h=u.message==="Unsupported state or unable to authenticate data";if(A||p){let C="INVALID_DOTENV_KEY: It must be 64 characters long (or more)";throw new Error(C)}else if(h){let C="DECRYPTION_FAILED: Please check your DOTENV_KEY";throw new Error(C)}else throw console.error("Error: ",u.code),console.error("Error: ",u.message),u}}function Eqe(t,e,r={}){let o=Boolean(r&&r.debug),a=Boolean(r&&r.override);if(typeof e!="object")throw new Error("OBJECT_REQUIRED: Please check the processEnv argument being passed to populate");for(let n of Object.keys(e))Object.prototype.hasOwnProperty.call(t,n)?(a===!0&&(t[n]=e[n]),o&&YT(a===!0?`"${n}" is already defined and WAS overwritten`:`"${n}" is already defined and was NOT overwritten`)):t[n]=e[n]}var bs={configDotenv:dqe,_configVault:gqe,_parseVault:uqe,config:mqe,decrypt:yqe,parse:cqe,populate:Eqe};Ef.exports.configDotenv=bs.configDotenv;Ef.exports._configVault=bs._configVault;Ef.exports._parseVault=bs._parseVault;Ef.exports.config=bs.config;Ef.exports.decrypt=bs.decrypt;Ef.exports.parse=bs.parse;Ef.exports.populate=bs.populate;Ef.exports=bs});var nz=_((bkt,rz)=>{"use strict";rz.exports=(t,...e)=>new Promise(r=>{r(t(...e))})});var rd=_((xkt,VT)=>{"use strict";var Cqe=nz(),iz=t=>{if(t<1)throw new TypeError("Expected `concurrency` to be a number from 1 and up");let e=[],r=0,o=()=>{r--,e.length>0&&e.shift()()},a=(A,p,...h)=>{r++;let C=Cqe(A,...h);p(C),C.then(o,o)},n=(A,p,...h)=>{rnew Promise(h=>n(A,h,...p));return Object.defineProperties(u,{activeCount:{get:()=>r},pendingCount:{get:()=>e.length}}),u};VT.exports=iz;VT.exports.default=iz});function Wu(t){return`YN${t.toString(10).padStart(4,"0")}`}function fP(t){let e=Number(t.slice(2));if(typeof wr[e]>"u")throw new Error(`Unknown message name: "${t}"`);return e}var wr,pP=Et(()=>{wr=(Oe=>(Oe[Oe.UNNAMED=0]="UNNAMED",Oe[Oe.EXCEPTION=1]="EXCEPTION",Oe[Oe.MISSING_PEER_DEPENDENCY=2]="MISSING_PEER_DEPENDENCY",Oe[Oe.CYCLIC_DEPENDENCIES=3]="CYCLIC_DEPENDENCIES",Oe[Oe.DISABLED_BUILD_SCRIPTS=4]="DISABLED_BUILD_SCRIPTS",Oe[Oe.BUILD_DISABLED=5]="BUILD_DISABLED",Oe[Oe.SOFT_LINK_BUILD=6]="SOFT_LINK_BUILD",Oe[Oe.MUST_BUILD=7]="MUST_BUILD",Oe[Oe.MUST_REBUILD=8]="MUST_REBUILD",Oe[Oe.BUILD_FAILED=9]="BUILD_FAILED",Oe[Oe.RESOLVER_NOT_FOUND=10]="RESOLVER_NOT_FOUND",Oe[Oe.FETCHER_NOT_FOUND=11]="FETCHER_NOT_FOUND",Oe[Oe.LINKER_NOT_FOUND=12]="LINKER_NOT_FOUND",Oe[Oe.FETCH_NOT_CACHED=13]="FETCH_NOT_CACHED",Oe[Oe.YARN_IMPORT_FAILED=14]="YARN_IMPORT_FAILED",Oe[Oe.REMOTE_INVALID=15]="REMOTE_INVALID",Oe[Oe.REMOTE_NOT_FOUND=16]="REMOTE_NOT_FOUND",Oe[Oe.RESOLUTION_PACK=17]="RESOLUTION_PACK",Oe[Oe.CACHE_CHECKSUM_MISMATCH=18]="CACHE_CHECKSUM_MISMATCH",Oe[Oe.UNUSED_CACHE_ENTRY=19]="UNUSED_CACHE_ENTRY",Oe[Oe.MISSING_LOCKFILE_ENTRY=20]="MISSING_LOCKFILE_ENTRY",Oe[Oe.WORKSPACE_NOT_FOUND=21]="WORKSPACE_NOT_FOUND",Oe[Oe.TOO_MANY_MATCHING_WORKSPACES=22]="TOO_MANY_MATCHING_WORKSPACES",Oe[Oe.CONSTRAINTS_MISSING_DEPENDENCY=23]="CONSTRAINTS_MISSING_DEPENDENCY",Oe[Oe.CONSTRAINTS_INCOMPATIBLE_DEPENDENCY=24]="CONSTRAINTS_INCOMPATIBLE_DEPENDENCY",Oe[Oe.CONSTRAINTS_EXTRANEOUS_DEPENDENCY=25]="CONSTRAINTS_EXTRANEOUS_DEPENDENCY",Oe[Oe.CONSTRAINTS_INVALID_DEPENDENCY=26]="CONSTRAINTS_INVALID_DEPENDENCY",Oe[Oe.CANT_SUGGEST_RESOLUTIONS=27]="CANT_SUGGEST_RESOLUTIONS",Oe[Oe.FROZEN_LOCKFILE_EXCEPTION=28]="FROZEN_LOCKFILE_EXCEPTION",Oe[Oe.CROSS_DRIVE_VIRTUAL_LOCAL=29]="CROSS_DRIVE_VIRTUAL_LOCAL",Oe[Oe.FETCH_FAILED=30]="FETCH_FAILED",Oe[Oe.DANGEROUS_NODE_MODULES=31]="DANGEROUS_NODE_MODULES",Oe[Oe.NODE_GYP_INJECTED=32]="NODE_GYP_INJECTED",Oe[Oe.AUTHENTICATION_NOT_FOUND=33]="AUTHENTICATION_NOT_FOUND",Oe[Oe.INVALID_CONFIGURATION_KEY=34]="INVALID_CONFIGURATION_KEY",Oe[Oe.NETWORK_ERROR=35]="NETWORK_ERROR",Oe[Oe.LIFECYCLE_SCRIPT=36]="LIFECYCLE_SCRIPT",Oe[Oe.CONSTRAINTS_MISSING_FIELD=37]="CONSTRAINTS_MISSING_FIELD",Oe[Oe.CONSTRAINTS_INCOMPATIBLE_FIELD=38]="CONSTRAINTS_INCOMPATIBLE_FIELD",Oe[Oe.CONSTRAINTS_EXTRANEOUS_FIELD=39]="CONSTRAINTS_EXTRANEOUS_FIELD",Oe[Oe.CONSTRAINTS_INVALID_FIELD=40]="CONSTRAINTS_INVALID_FIELD",Oe[Oe.AUTHENTICATION_INVALID=41]="AUTHENTICATION_INVALID",Oe[Oe.PROLOG_UNKNOWN_ERROR=42]="PROLOG_UNKNOWN_ERROR",Oe[Oe.PROLOG_SYNTAX_ERROR=43]="PROLOG_SYNTAX_ERROR",Oe[Oe.PROLOG_EXISTENCE_ERROR=44]="PROLOG_EXISTENCE_ERROR",Oe[Oe.STACK_OVERFLOW_RESOLUTION=45]="STACK_OVERFLOW_RESOLUTION",Oe[Oe.AUTOMERGE_FAILED_TO_PARSE=46]="AUTOMERGE_FAILED_TO_PARSE",Oe[Oe.AUTOMERGE_IMMUTABLE=47]="AUTOMERGE_IMMUTABLE",Oe[Oe.AUTOMERGE_SUCCESS=48]="AUTOMERGE_SUCCESS",Oe[Oe.AUTOMERGE_REQUIRED=49]="AUTOMERGE_REQUIRED",Oe[Oe.DEPRECATED_CLI_SETTINGS=50]="DEPRECATED_CLI_SETTINGS",Oe[Oe.PLUGIN_NAME_NOT_FOUND=51]="PLUGIN_NAME_NOT_FOUND",Oe[Oe.INVALID_PLUGIN_REFERENCE=52]="INVALID_PLUGIN_REFERENCE",Oe[Oe.CONSTRAINTS_AMBIGUITY=53]="CONSTRAINTS_AMBIGUITY",Oe[Oe.CACHE_OUTSIDE_PROJECT=54]="CACHE_OUTSIDE_PROJECT",Oe[Oe.IMMUTABLE_INSTALL=55]="IMMUTABLE_INSTALL",Oe[Oe.IMMUTABLE_CACHE=56]="IMMUTABLE_CACHE",Oe[Oe.INVALID_MANIFEST=57]="INVALID_MANIFEST",Oe[Oe.PACKAGE_PREPARATION_FAILED=58]="PACKAGE_PREPARATION_FAILED",Oe[Oe.INVALID_RANGE_PEER_DEPENDENCY=59]="INVALID_RANGE_PEER_DEPENDENCY",Oe[Oe.INCOMPATIBLE_PEER_DEPENDENCY=60]="INCOMPATIBLE_PEER_DEPENDENCY",Oe[Oe.DEPRECATED_PACKAGE=61]="DEPRECATED_PACKAGE",Oe[Oe.INCOMPATIBLE_OS=62]="INCOMPATIBLE_OS",Oe[Oe.INCOMPATIBLE_CPU=63]="INCOMPATIBLE_CPU",Oe[Oe.FROZEN_ARTIFACT_EXCEPTION=64]="FROZEN_ARTIFACT_EXCEPTION",Oe[Oe.TELEMETRY_NOTICE=65]="TELEMETRY_NOTICE",Oe[Oe.PATCH_HUNK_FAILED=66]="PATCH_HUNK_FAILED",Oe[Oe.INVALID_CONFIGURATION_VALUE=67]="INVALID_CONFIGURATION_VALUE",Oe[Oe.UNUSED_PACKAGE_EXTENSION=68]="UNUSED_PACKAGE_EXTENSION",Oe[Oe.REDUNDANT_PACKAGE_EXTENSION=69]="REDUNDANT_PACKAGE_EXTENSION",Oe[Oe.AUTO_NM_SUCCESS=70]="AUTO_NM_SUCCESS",Oe[Oe.NM_CANT_INSTALL_EXTERNAL_SOFT_LINK=71]="NM_CANT_INSTALL_EXTERNAL_SOFT_LINK",Oe[Oe.NM_PRESERVE_SYMLINKS_REQUIRED=72]="NM_PRESERVE_SYMLINKS_REQUIRED",Oe[Oe.UPDATE_LOCKFILE_ONLY_SKIP_LINK=73]="UPDATE_LOCKFILE_ONLY_SKIP_LINK",Oe[Oe.NM_HARDLINKS_MODE_DOWNGRADED=74]="NM_HARDLINKS_MODE_DOWNGRADED",Oe[Oe.PROLOG_INSTANTIATION_ERROR=75]="PROLOG_INSTANTIATION_ERROR",Oe[Oe.INCOMPATIBLE_ARCHITECTURE=76]="INCOMPATIBLE_ARCHITECTURE",Oe[Oe.GHOST_ARCHITECTURE=77]="GHOST_ARCHITECTURE",Oe[Oe.RESOLUTION_MISMATCH=78]="RESOLUTION_MISMATCH",Oe[Oe.PROLOG_LIMIT_EXCEEDED=79]="PROLOG_LIMIT_EXCEEDED",Oe[Oe.NETWORK_DISABLED=80]="NETWORK_DISABLED",Oe[Oe.NETWORK_UNSAFE_HTTP=81]="NETWORK_UNSAFE_HTTP",Oe[Oe.RESOLUTION_FAILED=82]="RESOLUTION_FAILED",Oe[Oe.AUTOMERGE_GIT_ERROR=83]="AUTOMERGE_GIT_ERROR",Oe[Oe.CONSTRAINTS_CHECK_FAILED=84]="CONSTRAINTS_CHECK_FAILED",Oe[Oe.UPDATED_RESOLUTION_RECORD=85]="UPDATED_RESOLUTION_RECORD",Oe[Oe.EXPLAIN_PEER_DEPENDENCIES_CTA=86]="EXPLAIN_PEER_DEPENDENCIES_CTA",Oe[Oe.MIGRATION_SUCCESS=87]="MIGRATION_SUCCESS",Oe[Oe.VERSION_NOTICE=88]="VERSION_NOTICE",Oe[Oe.TIPS_NOTICE=89]="TIPS_NOTICE",Oe[Oe.OFFLINE_MODE_ENABLED=90]="OFFLINE_MODE_ENABLED",Oe))(wr||{})});var pI=_((Qkt,sz)=>{var wqe="2.0.0",Iqe=Number.MAX_SAFE_INTEGER||9007199254740991,Bqe=16,vqe=256-6,Dqe=["major","premajor","minor","preminor","patch","prepatch","prerelease"];sz.exports={MAX_LENGTH:256,MAX_SAFE_COMPONENT_LENGTH:Bqe,MAX_SAFE_BUILD_LENGTH:vqe,MAX_SAFE_INTEGER:Iqe,RELEASE_TYPES:Dqe,SEMVER_SPEC_VERSION:wqe,FLAG_INCLUDE_PRERELEASE:1,FLAG_LOOSE:2}});var hI=_((Fkt,oz)=>{var Pqe=typeof process=="object"&&process.env&&process.env.NODE_DEBUG&&/\bsemver\b/i.test(process.env.NODE_DEBUG)?(...t)=>console.error("SEMVER",...t):()=>{};oz.exports=Pqe});var Iy=_((Cf,az)=>{var{MAX_SAFE_COMPONENT_LENGTH:zT,MAX_SAFE_BUILD_LENGTH:Sqe,MAX_LENGTH:bqe}=pI(),xqe=hI();Cf=az.exports={};var kqe=Cf.re=[],Qqe=Cf.safeRe=[],lr=Cf.src=[],cr=Cf.t={},Fqe=0,JT="[a-zA-Z0-9-]",Rqe=[["\\s",1],["\\d",bqe],[JT,Sqe]],Tqe=t=>{for(let[e,r]of Rqe)t=t.split(`${e}*`).join(`${e}{0,${r}}`).split(`${e}+`).join(`${e}{1,${r}}`);return t},zr=(t,e,r)=>{let o=Tqe(e),a=Fqe++;xqe(t,a,e),cr[t]=a,lr[a]=e,kqe[a]=new RegExp(e,r?"g":void 0),Qqe[a]=new RegExp(o,r?"g":void 0)};zr("NUMERICIDENTIFIER","0|[1-9]\\d*");zr("NUMERICIDENTIFIERLOOSE","\\d+");zr("NONNUMERICIDENTIFIER",`\\d*[a-zA-Z-]${JT}*`);zr("MAINVERSION",`(${lr[cr.NUMERICIDENTIFIER]})\\.(${lr[cr.NUMERICIDENTIFIER]})\\.(${lr[cr.NUMERICIDENTIFIER]})`);zr("MAINVERSIONLOOSE",`(${lr[cr.NUMERICIDENTIFIERLOOSE]})\\.(${lr[cr.NUMERICIDENTIFIERLOOSE]})\\.(${lr[cr.NUMERICIDENTIFIERLOOSE]})`);zr("PRERELEASEIDENTIFIER",`(?:${lr[cr.NUMERICIDENTIFIER]}|${lr[cr.NONNUMERICIDENTIFIER]})`);zr("PRERELEASEIDENTIFIERLOOSE",`(?:${lr[cr.NUMERICIDENTIFIERLOOSE]}|${lr[cr.NONNUMERICIDENTIFIER]})`);zr("PRERELEASE",`(?:-(${lr[cr.PRERELEASEIDENTIFIER]}(?:\\.${lr[cr.PRERELEASEIDENTIFIER]})*))`);zr("PRERELEASELOOSE",`(?:-?(${lr[cr.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${lr[cr.PRERELEASEIDENTIFIERLOOSE]})*))`);zr("BUILDIDENTIFIER",`${JT}+`);zr("BUILD",`(?:\\+(${lr[cr.BUILDIDENTIFIER]}(?:\\.${lr[cr.BUILDIDENTIFIER]})*))`);zr("FULLPLAIN",`v?${lr[cr.MAINVERSION]}${lr[cr.PRERELEASE]}?${lr[cr.BUILD]}?`);zr("FULL",`^${lr[cr.FULLPLAIN]}$`);zr("LOOSEPLAIN",`[v=\\s]*${lr[cr.MAINVERSIONLOOSE]}${lr[cr.PRERELEASELOOSE]}?${lr[cr.BUILD]}?`);zr("LOOSE",`^${lr[cr.LOOSEPLAIN]}$`);zr("GTLT","((?:<|>)?=?)");zr("XRANGEIDENTIFIERLOOSE",`${lr[cr.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`);zr("XRANGEIDENTIFIER",`${lr[cr.NUMERICIDENTIFIER]}|x|X|\\*`);zr("XRANGEPLAIN",`[v=\\s]*(${lr[cr.XRANGEIDENTIFIER]})(?:\\.(${lr[cr.XRANGEIDENTIFIER]})(?:\\.(${lr[cr.XRANGEIDENTIFIER]})(?:${lr[cr.PRERELEASE]})?${lr[cr.BUILD]}?)?)?`);zr("XRANGEPLAINLOOSE",`[v=\\s]*(${lr[cr.XRANGEIDENTIFIERLOOSE]})(?:\\.(${lr[cr.XRANGEIDENTIFIERLOOSE]})(?:\\.(${lr[cr.XRANGEIDENTIFIERLOOSE]})(?:${lr[cr.PRERELEASELOOSE]})?${lr[cr.BUILD]}?)?)?`);zr("XRANGE",`^${lr[cr.GTLT]}\\s*${lr[cr.XRANGEPLAIN]}$`);zr("XRANGELOOSE",`^${lr[cr.GTLT]}\\s*${lr[cr.XRANGEPLAINLOOSE]}$`);zr("COERCE",`(^|[^\\d])(\\d{1,${zT}})(?:\\.(\\d{1,${zT}}))?(?:\\.(\\d{1,${zT}}))?(?:$|[^\\d])`);zr("COERCERTL",lr[cr.COERCE],!0);zr("LONETILDE","(?:~>?)");zr("TILDETRIM",`(\\s*)${lr[cr.LONETILDE]}\\s+`,!0);Cf.tildeTrimReplace="$1~";zr("TILDE",`^${lr[cr.LONETILDE]}${lr[cr.XRANGEPLAIN]}$`);zr("TILDELOOSE",`^${lr[cr.LONETILDE]}${lr[cr.XRANGEPLAINLOOSE]}$`);zr("LONECARET","(?:\\^)");zr("CARETTRIM",`(\\s*)${lr[cr.LONECARET]}\\s+`,!0);Cf.caretTrimReplace="$1^";zr("CARET",`^${lr[cr.LONECARET]}${lr[cr.XRANGEPLAIN]}$`);zr("CARETLOOSE",`^${lr[cr.LONECARET]}${lr[cr.XRANGEPLAINLOOSE]}$`);zr("COMPARATORLOOSE",`^${lr[cr.GTLT]}\\s*(${lr[cr.LOOSEPLAIN]})$|^$`);zr("COMPARATOR",`^${lr[cr.GTLT]}\\s*(${lr[cr.FULLPLAIN]})$|^$`);zr("COMPARATORTRIM",`(\\s*)${lr[cr.GTLT]}\\s*(${lr[cr.LOOSEPLAIN]}|${lr[cr.XRANGEPLAIN]})`,!0);Cf.comparatorTrimReplace="$1$2$3";zr("HYPHENRANGE",`^\\s*(${lr[cr.XRANGEPLAIN]})\\s+-\\s+(${lr[cr.XRANGEPLAIN]})\\s*$`);zr("HYPHENRANGELOOSE",`^\\s*(${lr[cr.XRANGEPLAINLOOSE]})\\s+-\\s+(${lr[cr.XRANGEPLAINLOOSE]})\\s*$`);zr("STAR","(<|>)?=?\\s*\\*");zr("GTE0","^\\s*>=\\s*0\\.0\\.0\\s*$");zr("GTE0PRE","^\\s*>=\\s*0\\.0\\.0-0\\s*$")});var hP=_((Rkt,lz)=>{var Nqe=Object.freeze({loose:!0}),Lqe=Object.freeze({}),Oqe=t=>t?typeof t!="object"?Nqe:t:Lqe;lz.exports=Oqe});var XT=_((Tkt,Az)=>{var cz=/^[0-9]+$/,uz=(t,e)=>{let r=cz.test(t),o=cz.test(e);return r&&o&&(t=+t,e=+e),t===e?0:r&&!o?-1:o&&!r?1:tuz(e,t);Az.exports={compareIdentifiers:uz,rcompareIdentifiers:Mqe}});var Po=_((Nkt,gz)=>{var gP=hI(),{MAX_LENGTH:fz,MAX_SAFE_INTEGER:dP}=pI(),{safeRe:pz,t:hz}=Iy(),Uqe=hP(),{compareIdentifiers:By}=XT(),tl=class{constructor(e,r){if(r=Uqe(r),e instanceof tl){if(e.loose===!!r.loose&&e.includePrerelease===!!r.includePrerelease)return e;e=e.version}else if(typeof e!="string")throw new TypeError(`Invalid version. Must be a string. Got type "${typeof e}".`);if(e.length>fz)throw new TypeError(`version is longer than ${fz} characters`);gP("SemVer",e,r),this.options=r,this.loose=!!r.loose,this.includePrerelease=!!r.includePrerelease;let o=e.trim().match(r.loose?pz[hz.LOOSE]:pz[hz.FULL]);if(!o)throw new TypeError(`Invalid Version: ${e}`);if(this.raw=e,this.major=+o[1],this.minor=+o[2],this.patch=+o[3],this.major>dP||this.major<0)throw new TypeError("Invalid major version");if(this.minor>dP||this.minor<0)throw new TypeError("Invalid minor version");if(this.patch>dP||this.patch<0)throw new TypeError("Invalid patch version");o[4]?this.prerelease=o[4].split(".").map(a=>{if(/^[0-9]+$/.test(a)){let n=+a;if(n>=0&&n=0;)typeof this.prerelease[n]=="number"&&(this.prerelease[n]++,n=-2);if(n===-1){if(r===this.prerelease.join(".")&&o===!1)throw new Error("invalid increment argument: identifier already exists");this.prerelease.push(a)}}if(r){let n=[r,a];o===!1&&(n=[r]),By(this.prerelease[0],r)===0?isNaN(this.prerelease[1])&&(this.prerelease=n):this.prerelease=n}break}default:throw new Error(`invalid increment argument: ${e}`)}return this.raw=this.format(),this.build.length&&(this.raw+=`+${this.build.join(".")}`),this}};gz.exports=tl});var nd=_((Lkt,mz)=>{var dz=Po(),_qe=(t,e,r=!1)=>{if(t instanceof dz)return t;try{return new dz(t,e)}catch(o){if(!r)return null;throw o}};mz.exports=_qe});var Ez=_((Okt,yz)=>{var Hqe=nd(),jqe=(t,e)=>{let r=Hqe(t,e);return r?r.version:null};yz.exports=jqe});var wz=_((Mkt,Cz)=>{var qqe=nd(),Gqe=(t,e)=>{let r=qqe(t.trim().replace(/^[=v]+/,""),e);return r?r.version:null};Cz.exports=Gqe});var vz=_((Ukt,Bz)=>{var Iz=Po(),Yqe=(t,e,r,o,a)=>{typeof r=="string"&&(a=o,o=r,r=void 0);try{return new Iz(t instanceof Iz?t.version:t,r).inc(e,o,a).version}catch{return null}};Bz.exports=Yqe});var Sz=_((_kt,Pz)=>{var Dz=nd(),Wqe=(t,e)=>{let r=Dz(t,null,!0),o=Dz(e,null,!0),a=r.compare(o);if(a===0)return null;let n=a>0,u=n?r:o,A=n?o:r,p=!!u.prerelease.length;if(!!A.prerelease.length&&!p)return!A.patch&&!A.minor?"major":u.patch?"patch":u.minor?"minor":"major";let C=p?"pre":"";return r.major!==o.major?C+"major":r.minor!==o.minor?C+"minor":r.patch!==o.patch?C+"patch":"prerelease"};Pz.exports=Wqe});var xz=_((Hkt,bz)=>{var Kqe=Po(),Vqe=(t,e)=>new Kqe(t,e).major;bz.exports=Vqe});var Qz=_((jkt,kz)=>{var zqe=Po(),Jqe=(t,e)=>new zqe(t,e).minor;kz.exports=Jqe});var Rz=_((qkt,Fz)=>{var Xqe=Po(),Zqe=(t,e)=>new Xqe(t,e).patch;Fz.exports=Zqe});var Nz=_((Gkt,Tz)=>{var $qe=nd(),eGe=(t,e)=>{let r=$qe(t,e);return r&&r.prerelease.length?r.prerelease:null};Tz.exports=eGe});var Ll=_((Ykt,Oz)=>{var Lz=Po(),tGe=(t,e,r)=>new Lz(t,r).compare(new Lz(e,r));Oz.exports=tGe});var Uz=_((Wkt,Mz)=>{var rGe=Ll(),nGe=(t,e,r)=>rGe(e,t,r);Mz.exports=nGe});var Hz=_((Kkt,_z)=>{var iGe=Ll(),sGe=(t,e)=>iGe(t,e,!0);_z.exports=sGe});var mP=_((Vkt,qz)=>{var jz=Po(),oGe=(t,e,r)=>{let o=new jz(t,r),a=new jz(e,r);return o.compare(a)||o.compareBuild(a)};qz.exports=oGe});var Yz=_((zkt,Gz)=>{var aGe=mP(),lGe=(t,e)=>t.sort((r,o)=>aGe(r,o,e));Gz.exports=lGe});var Kz=_((Jkt,Wz)=>{var cGe=mP(),uGe=(t,e)=>t.sort((r,o)=>cGe(o,r,e));Wz.exports=uGe});var gI=_((Xkt,Vz)=>{var AGe=Ll(),fGe=(t,e,r)=>AGe(t,e,r)>0;Vz.exports=fGe});var yP=_((Zkt,zz)=>{var pGe=Ll(),hGe=(t,e,r)=>pGe(t,e,r)<0;zz.exports=hGe});var ZT=_(($kt,Jz)=>{var gGe=Ll(),dGe=(t,e,r)=>gGe(t,e,r)===0;Jz.exports=dGe});var $T=_((eQt,Xz)=>{var mGe=Ll(),yGe=(t,e,r)=>mGe(t,e,r)!==0;Xz.exports=yGe});var EP=_((tQt,Zz)=>{var EGe=Ll(),CGe=(t,e,r)=>EGe(t,e,r)>=0;Zz.exports=CGe});var CP=_((rQt,$z)=>{var wGe=Ll(),IGe=(t,e,r)=>wGe(t,e,r)<=0;$z.exports=IGe});var eN=_((nQt,eJ)=>{var BGe=ZT(),vGe=$T(),DGe=gI(),PGe=EP(),SGe=yP(),bGe=CP(),xGe=(t,e,r,o)=>{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 BGe(t,r,o);case"!=":return vGe(t,r,o);case">":return DGe(t,r,o);case">=":return PGe(t,r,o);case"<":return SGe(t,r,o);case"<=":return bGe(t,r,o);default:throw new TypeError(`Invalid operator: ${e}`)}};eJ.exports=xGe});var rJ=_((iQt,tJ)=>{var kGe=Po(),QGe=nd(),{safeRe:wP,t:IP}=Iy(),FGe=(t,e)=>{if(t instanceof kGe)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(wP[IP.COERCE]);else{let o;for(;(o=wP[IP.COERCERTL].exec(t))&&(!r||r.index+r[0].length!==t.length);)(!r||o.index+o[0].length!==r.index+r[0].length)&&(r=o),wP[IP.COERCERTL].lastIndex=o.index+o[1].length+o[2].length;wP[IP.COERCERTL].lastIndex=-1}return r===null?null:QGe(`${r[2]}.${r[3]||"0"}.${r[4]||"0"}`,e)};tJ.exports=FGe});var iJ=_((sQt,nJ)=>{"use strict";nJ.exports=function(t){t.prototype[Symbol.iterator]=function*(){for(let e=this.head;e;e=e.next)yield e.value}}});var BP=_((oQt,sJ)=>{"use strict";sJ.exports=Cn;Cn.Node=id;Cn.create=Cn;function Cn(t){var e=this;if(e instanceof Cn||(e=new Cn),e.tail=null,e.head=null,e.length=0,t&&typeof t.forEach=="function")t.forEach(function(a){e.push(a)});else if(arguments.length>0)for(var r=0,o=arguments.length;r1)r=e;else if(this.head)o=this.head.next,r=this.head.value;else throw new TypeError("Reduce of empty list with no initial value");for(var a=0;o!==null;a++)r=t(r,o.value,a),o=o.next;return r};Cn.prototype.reduceReverse=function(t,e){var r,o=this.tail;if(arguments.length>1)r=e;else if(this.tail)o=this.tail.prev,r=this.tail.value;else throw new TypeError("Reduce of empty list with no initial value");for(var a=this.length-1;o!==null;a--)r=t(r,o.value,a),o=o.prev;return r};Cn.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};Cn.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};Cn.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 Cn;if(ethis.length&&(e=this.length);for(var o=0,a=this.head;a!==null&&othis.length&&(e=this.length);for(var o=this.length,a=this.tail;a!==null&&o>e;o--)a=a.prev;for(;a!==null&&o>t;o--,a=a.prev)r.push(a.value);return r};Cn.prototype.splice=function(t,e,...r){t>this.length&&(t=this.length-1),t<0&&(t=this.length+t);for(var o=0,a=this.head;a!==null&&o{"use strict";var LGe=BP(),sd=Symbol("max"),If=Symbol("length"),vy=Symbol("lengthCalculator"),mI=Symbol("allowStale"),od=Symbol("maxAge"),wf=Symbol("dispose"),oJ=Symbol("noDisposeOnSet"),xs=Symbol("lruList"),Mc=Symbol("cache"),lJ=Symbol("updateAgeOnGet"),tN=()=>1,nN=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[sd]=e.max||1/0,o=e.length||tN;if(this[vy]=typeof o!="function"?tN:o,this[mI]=e.stale||!1,e.maxAge&&typeof e.maxAge!="number")throw new TypeError("maxAge must be a number");this[od]=e.maxAge||0,this[wf]=e.dispose,this[oJ]=e.noDisposeOnSet||!1,this[lJ]=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[sd]=e||1/0,dI(this)}get max(){return this[sd]}set allowStale(e){this[mI]=!!e}get allowStale(){return this[mI]}set maxAge(e){if(typeof e!="number")throw new TypeError("maxAge must be a non-negative number");this[od]=e,dI(this)}get maxAge(){return this[od]}set lengthCalculator(e){typeof e!="function"&&(e=tN),e!==this[vy]&&(this[vy]=e,this[If]=0,this[xs].forEach(r=>{r.length=this[vy](r.value,r.key),this[If]+=r.length})),dI(this)}get lengthCalculator(){return this[vy]}get length(){return this[If]}get itemCount(){return this[xs].length}rforEach(e,r){r=r||this;for(let o=this[xs].tail;o!==null;){let a=o.prev;aJ(this,e,o,r),o=a}}forEach(e,r){r=r||this;for(let o=this[xs].head;o!==null;){let a=o.next;aJ(this,e,o,r),o=a}}keys(){return this[xs].toArray().map(e=>e.key)}values(){return this[xs].toArray().map(e=>e.value)}reset(){this[wf]&&this[xs]&&this[xs].length&&this[xs].forEach(e=>this[wf](e.key,e.value)),this[Mc]=new Map,this[xs]=new LGe,this[If]=0}dump(){return this[xs].map(e=>vP(this,e)?!1:{k:e.key,v:e.value,e:e.now+(e.maxAge||0)}).toArray().filter(e=>e)}dumpLru(){return this[xs]}set(e,r,o){if(o=o||this[od],o&&typeof o!="number")throw new TypeError("maxAge must be a number");let a=o?Date.now():0,n=this[vy](r,e);if(this[Mc].has(e)){if(n>this[sd])return Dy(this,this[Mc].get(e)),!1;let p=this[Mc].get(e).value;return this[wf]&&(this[oJ]||this[wf](e,p.value)),p.now=a,p.maxAge=o,p.value=r,this[If]+=n-p.length,p.length=n,this.get(e),dI(this),!0}let u=new iN(e,r,n,a,o);return u.length>this[sd]?(this[wf]&&this[wf](e,r),!1):(this[If]+=u.length,this[xs].unshift(u),this[Mc].set(e,this[xs].head),dI(this),!0)}has(e){if(!this[Mc].has(e))return!1;let r=this[Mc].get(e).value;return!vP(this,r)}get(e){return rN(this,e,!0)}peek(e){return rN(this,e,!1)}pop(){let e=this[xs].tail;return e?(Dy(this,e),e.value):null}del(e){Dy(this,this[Mc].get(e))}load(e){this.reset();let r=Date.now();for(let o=e.length-1;o>=0;o--){let a=e[o],n=a.e||0;if(n===0)this.set(a.k,a.v);else{let u=n-r;u>0&&this.set(a.k,a.v,u)}}}prune(){this[Mc].forEach((e,r)=>rN(this,r,!1))}},rN=(t,e,r)=>{let o=t[Mc].get(e);if(o){let a=o.value;if(vP(t,a)){if(Dy(t,o),!t[mI])return}else r&&(t[lJ]&&(o.value.now=Date.now()),t[xs].unshiftNode(o));return a.value}},vP=(t,e)=>{if(!e||!e.maxAge&&!t[od])return!1;let r=Date.now()-e.now;return e.maxAge?r>e.maxAge:t[od]&&r>t[od]},dI=t=>{if(t[If]>t[sd])for(let e=t[xs].tail;t[If]>t[sd]&&e!==null;){let r=e.prev;Dy(t,e),e=r}},Dy=(t,e)=>{if(e){let r=e.value;t[wf]&&t[wf](r.key,r.value),t[If]-=r.length,t[Mc].delete(r.key),t[xs].removeNode(e)}},iN=class{constructor(e,r,o,a,n){this.key=e,this.value=r,this.length=o,this.now=a,this.maxAge=n||0}},aJ=(t,e,r,o)=>{let a=r.value;vP(t,a)&&(Dy(t,r),t[mI]||(a=void 0)),a&&e.call(o,a.value,a.key,t)};cJ.exports=nN});var Ol=_((lQt,hJ)=>{var ad=class{constructor(e,r){if(r=MGe(r),e instanceof ad)return e.loose===!!r.loose&&e.includePrerelease===!!r.includePrerelease?e:new ad(e.raw,r);if(e instanceof sN)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.trim().split(/\s+/).join(" "),this.set=this.raw.split("||").map(o=>this.parseRange(o.trim())).filter(o=>o.length),!this.set.length)throw new TypeError(`Invalid SemVer Range: ${this.raw}`);if(this.set.length>1){let o=this.set[0];if(this.set=this.set.filter(a=>!fJ(a[0])),this.set.length===0)this.set=[o];else if(this.set.length>1){for(let a of this.set)if(a.length===1&&YGe(a[0])){this.set=[a];break}}}this.format()}format(){return this.range=this.set.map(e=>e.join(" ").trim()).join("||").trim(),this.range}toString(){return this.range}parseRange(e){let o=((this.options.includePrerelease&&qGe)|(this.options.loose&&GGe))+":"+e,a=AJ.get(o);if(a)return a;let n=this.options.loose,u=n?Da[Jo.HYPHENRANGELOOSE]:Da[Jo.HYPHENRANGE];e=e.replace(u,t5e(this.options.includePrerelease)),ci("hyphen replace",e),e=e.replace(Da[Jo.COMPARATORTRIM],_Ge),ci("comparator trim",e),e=e.replace(Da[Jo.TILDETRIM],HGe),ci("tilde trim",e),e=e.replace(Da[Jo.CARETTRIM],jGe),ci("caret trim",e);let A=e.split(" ").map(I=>WGe(I,this.options)).join(" ").split(/\s+/).map(I=>e5e(I,this.options));n&&(A=A.filter(I=>(ci("loose invalid filter",I,this.options),!!I.match(Da[Jo.COMPARATORLOOSE])))),ci("range list",A);let p=new Map,h=A.map(I=>new sN(I,this.options));for(let I of h){if(fJ(I))return[I];p.set(I.value,I)}p.size>1&&p.has("")&&p.delete("");let C=[...p.values()];return AJ.set(o,C),C}intersects(e,r){if(!(e instanceof ad))throw new TypeError("a Range is required");return this.set.some(o=>pJ(o,r)&&e.set.some(a=>pJ(a,r)&&o.every(n=>a.every(u=>n.intersects(u,r)))))}test(e){if(!e)return!1;if(typeof e=="string")try{e=new UGe(e,this.options)}catch{return!1}for(let r=0;rt.value==="<0.0.0-0",YGe=t=>t.value==="",pJ=(t,e)=>{let r=!0,o=t.slice(),a=o.pop();for(;r&&o.length;)r=o.every(n=>a.intersects(n,e)),a=o.pop();return r},WGe=(t,e)=>(ci("comp",t,e),t=zGe(t,e),ci("caret",t),t=KGe(t,e),ci("tildes",t),t=XGe(t,e),ci("xrange",t),t=$Ge(t,e),ci("stars",t),t),Xo=t=>!t||t.toLowerCase()==="x"||t==="*",KGe=(t,e)=>t.trim().split(/\s+/).map(r=>VGe(r,e)).join(" "),VGe=(t,e)=>{let r=e.loose?Da[Jo.TILDELOOSE]:Da[Jo.TILDE];return t.replace(r,(o,a,n,u,A)=>{ci("tilde",t,o,a,n,u,A);let p;return Xo(a)?p="":Xo(n)?p=`>=${a}.0.0 <${+a+1}.0.0-0`:Xo(u)?p=`>=${a}.${n}.0 <${a}.${+n+1}.0-0`:A?(ci("replaceTilde pr",A),p=`>=${a}.${n}.${u}-${A} <${a}.${+n+1}.0-0`):p=`>=${a}.${n}.${u} <${a}.${+n+1}.0-0`,ci("tilde return",p),p})},zGe=(t,e)=>t.trim().split(/\s+/).map(r=>JGe(r,e)).join(" "),JGe=(t,e)=>{ci("caret",t,e);let r=e.loose?Da[Jo.CARETLOOSE]:Da[Jo.CARET],o=e.includePrerelease?"-0":"";return t.replace(r,(a,n,u,A,p)=>{ci("caret",t,a,n,u,A,p);let h;return Xo(n)?h="":Xo(u)?h=`>=${n}.0.0${o} <${+n+1}.0.0-0`:Xo(A)?n==="0"?h=`>=${n}.${u}.0${o} <${n}.${+u+1}.0-0`:h=`>=${n}.${u}.0${o} <${+n+1}.0.0-0`:p?(ci("replaceCaret pr",p),n==="0"?u==="0"?h=`>=${n}.${u}.${A}-${p} <${n}.${u}.${+A+1}-0`:h=`>=${n}.${u}.${A}-${p} <${n}.${+u+1}.0-0`:h=`>=${n}.${u}.${A}-${p} <${+n+1}.0.0-0`):(ci("no pr"),n==="0"?u==="0"?h=`>=${n}.${u}.${A}${o} <${n}.${u}.${+A+1}-0`:h=`>=${n}.${u}.${A}${o} <${n}.${+u+1}.0-0`:h=`>=${n}.${u}.${A} <${+n+1}.0.0-0`),ci("caret return",h),h})},XGe=(t,e)=>(ci("replaceXRanges",t,e),t.split(/\s+/).map(r=>ZGe(r,e)).join(" ")),ZGe=(t,e)=>{t=t.trim();let r=e.loose?Da[Jo.XRANGELOOSE]:Da[Jo.XRANGE];return t.replace(r,(o,a,n,u,A,p)=>{ci("xRange",t,o,a,n,u,A,p);let h=Xo(n),C=h||Xo(u),I=C||Xo(A),v=I;return a==="="&&v&&(a=""),p=e.includePrerelease?"-0":"",h?a===">"||a==="<"?o="<0.0.0-0":o="*":a&&v?(C&&(u=0),A=0,a===">"?(a=">=",C?(n=+n+1,u=0,A=0):(u=+u+1,A=0)):a==="<="&&(a="<",C?n=+n+1:u=+u+1),a==="<"&&(p="-0"),o=`${a+n}.${u}.${A}${p}`):C?o=`>=${n}.0.0${p} <${+n+1}.0.0-0`:I&&(o=`>=${n}.${u}.0${p} <${n}.${+u+1}.0-0`),ci("xRange return",o),o})},$Ge=(t,e)=>(ci("replaceStars",t,e),t.trim().replace(Da[Jo.STAR],"")),e5e=(t,e)=>(ci("replaceGTE0",t,e),t.trim().replace(Da[e.includePrerelease?Jo.GTE0PRE:Jo.GTE0],"")),t5e=t=>(e,r,o,a,n,u,A,p,h,C,I,v,x)=>(Xo(o)?r="":Xo(a)?r=`>=${o}.0.0${t?"-0":""}`:Xo(n)?r=`>=${o}.${a}.0${t?"-0":""}`:u?r=`>=${r}`:r=`>=${r}${t?"-0":""}`,Xo(h)?p="":Xo(C)?p=`<${+h+1}.0.0-0`:Xo(I)?p=`<${h}.${+C+1}.0-0`:v?p=`<=${h}.${C}.${I}-${v}`:t?p=`<${h}.${C}.${+I+1}-0`:p=`<=${p}`,`${r} ${p}`.trim()),r5e=(t,e,r)=>{for(let o=0;o0){let a=t[o].semver;if(a.major===e.major&&a.minor===e.minor&&a.patch===e.patch)return!0}return!1}return!0}});var yI=_((cQt,CJ)=>{var EI=Symbol("SemVer ANY"),Py=class{static get ANY(){return EI}constructor(e,r){if(r=gJ(r),e instanceof Py){if(e.loose===!!r.loose)return e;e=e.value}e=e.trim().split(/\s+/).join(" "),aN("comparator",e,r),this.options=r,this.loose=!!r.loose,this.parse(e),this.semver===EI?this.value="":this.value=this.operator+this.semver.version,aN("comp",this)}parse(e){let r=this.options.loose?dJ[mJ.COMPARATORLOOSE]:dJ[mJ.COMPARATOR],o=e.match(r);if(!o)throw new TypeError(`Invalid comparator: ${e}`);this.operator=o[1]!==void 0?o[1]:"",this.operator==="="&&(this.operator=""),o[2]?this.semver=new yJ(o[2],this.options.loose):this.semver=EI}toString(){return this.value}test(e){if(aN("Comparator.test",e,this.options.loose),this.semver===EI||e===EI)return!0;if(typeof e=="string")try{e=new yJ(e,this.options)}catch{return!1}return oN(e,this.operator,this.semver,this.options)}intersects(e,r){if(!(e instanceof Py))throw new TypeError("a Comparator is required");return this.operator===""?this.value===""?!0:new EJ(e.value,r).test(this.value):e.operator===""?e.value===""?!0:new EJ(this.value,r).test(e.semver):(r=gJ(r),r.includePrerelease&&(this.value==="<0.0.0-0"||e.value==="<0.0.0-0")||!r.includePrerelease&&(this.value.startsWith("<0.0.0")||e.value.startsWith("<0.0.0"))?!1:!!(this.operator.startsWith(">")&&e.operator.startsWith(">")||this.operator.startsWith("<")&&e.operator.startsWith("<")||this.semver.version===e.semver.version&&this.operator.includes("=")&&e.operator.includes("=")||oN(this.semver,"<",e.semver,r)&&this.operator.startsWith(">")&&e.operator.startsWith("<")||oN(this.semver,">",e.semver,r)&&this.operator.startsWith("<")&&e.operator.startsWith(">")))}};CJ.exports=Py;var gJ=hP(),{safeRe:dJ,t:mJ}=Iy(),oN=eN(),aN=hI(),yJ=Po(),EJ=Ol()});var CI=_((uQt,wJ)=>{var n5e=Ol(),i5e=(t,e,r)=>{try{e=new n5e(e,r)}catch{return!1}return e.test(t)};wJ.exports=i5e});var BJ=_((AQt,IJ)=>{var s5e=Ol(),o5e=(t,e)=>new s5e(t,e).set.map(r=>r.map(o=>o.value).join(" ").trim().split(" "));IJ.exports=o5e});var DJ=_((fQt,vJ)=>{var a5e=Po(),l5e=Ol(),c5e=(t,e,r)=>{let o=null,a=null,n=null;try{n=new l5e(e,r)}catch{return null}return t.forEach(u=>{n.test(u)&&(!o||a.compare(u)===-1)&&(o=u,a=new a5e(o,r))}),o};vJ.exports=c5e});var SJ=_((pQt,PJ)=>{var u5e=Po(),A5e=Ol(),f5e=(t,e,r)=>{let o=null,a=null,n=null;try{n=new A5e(e,r)}catch{return null}return t.forEach(u=>{n.test(u)&&(!o||a.compare(u)===1)&&(o=u,a=new u5e(o,r))}),o};PJ.exports=f5e});var kJ=_((hQt,xJ)=>{var lN=Po(),p5e=Ol(),bJ=gI(),h5e=(t,e)=>{t=new p5e(t,e);let r=new lN("0.0.0");if(t.test(r)||(r=new lN("0.0.0-0"),t.test(r)))return r;r=null;for(let o=0;o{let A=new lN(u.semver.version);switch(u.operator){case">":A.prerelease.length===0?A.patch++:A.prerelease.push(0),A.raw=A.format();case"":case">=":(!n||bJ(A,n))&&(n=A);break;case"<":case"<=":break;default:throw new Error(`Unexpected operation: ${u.operator}`)}}),n&&(!r||bJ(r,n))&&(r=n)}return r&&t.test(r)?r:null};xJ.exports=h5e});var FJ=_((gQt,QJ)=>{var g5e=Ol(),d5e=(t,e)=>{try{return new g5e(t,e).range||"*"}catch{return null}};QJ.exports=d5e});var DP=_((dQt,LJ)=>{var m5e=Po(),NJ=yI(),{ANY:y5e}=NJ,E5e=Ol(),C5e=CI(),RJ=gI(),TJ=yP(),w5e=CP(),I5e=EP(),B5e=(t,e,r,o)=>{t=new m5e(t,o),e=new E5e(e,o);let a,n,u,A,p;switch(r){case">":a=RJ,n=w5e,u=TJ,A=">",p=">=";break;case"<":a=TJ,n=I5e,u=RJ,A="<",p="<=";break;default:throw new TypeError('Must provide a hilo val of "<" or ">"')}if(C5e(t,e,o))return!1;for(let h=0;h{x.semver===y5e&&(x=new NJ(">=0.0.0")),I=I||x,v=v||x,a(x.semver,I.semver,o)?I=x:u(x.semver,v.semver,o)&&(v=x)}),I.operator===A||I.operator===p||(!v.operator||v.operator===A)&&n(t,v.semver))return!1;if(v.operator===p&&u(t,v.semver))return!1}return!0};LJ.exports=B5e});var MJ=_((mQt,OJ)=>{var v5e=DP(),D5e=(t,e,r)=>v5e(t,e,">",r);OJ.exports=D5e});var _J=_((yQt,UJ)=>{var P5e=DP(),S5e=(t,e,r)=>P5e(t,e,"<",r);UJ.exports=S5e});var qJ=_((EQt,jJ)=>{var HJ=Ol(),b5e=(t,e,r)=>(t=new HJ(t,r),e=new HJ(e,r),t.intersects(e,r));jJ.exports=b5e});var YJ=_((CQt,GJ)=>{var x5e=CI(),k5e=Ll();GJ.exports=(t,e,r)=>{let o=[],a=null,n=null,u=t.sort((C,I)=>k5e(C,I,r));for(let C of u)x5e(C,e,r)?(n=C,a||(a=C)):(n&&o.push([a,n]),n=null,a=null);a&&o.push([a,null]);let A=[];for(let[C,I]of o)C===I?A.push(C):!I&&C===u[0]?A.push("*"):I?C===u[0]?A.push(`<=${I}`):A.push(`${C} - ${I}`):A.push(`>=${C}`);let p=A.join(" || "),h=typeof e.raw=="string"?e.raw:String(e);return p.length{var WJ=Ol(),uN=yI(),{ANY:cN}=uN,wI=CI(),AN=Ll(),Q5e=(t,e,r={})=>{if(t===e)return!0;t=new WJ(t,r),e=new WJ(e,r);let o=!1;e:for(let a of t.set){for(let n of e.set){let u=R5e(a,n,r);if(o=o||u!==null,u)continue e}if(o)return!1}return!0},F5e=[new uN(">=0.0.0-0")],KJ=[new uN(">=0.0.0")],R5e=(t,e,r)=>{if(t===e)return!0;if(t.length===1&&t[0].semver===cN){if(e.length===1&&e[0].semver===cN)return!0;r.includePrerelease?t=F5e:t=KJ}if(e.length===1&&e[0].semver===cN){if(r.includePrerelease)return!0;e=KJ}let o=new Set,a,n;for(let x of t)x.operator===">"||x.operator===">="?a=VJ(a,x,r):x.operator==="<"||x.operator==="<="?n=zJ(n,x,r):o.add(x.semver);if(o.size>1)return null;let u;if(a&&n){if(u=AN(a.semver,n.semver,r),u>0)return null;if(u===0&&(a.operator!==">="||n.operator!=="<="))return null}for(let x of o){if(a&&!wI(x,String(a),r)||n&&!wI(x,String(n),r))return null;for(let E of e)if(!wI(x,String(E),r))return!1;return!0}let A,p,h,C,I=n&&!r.includePrerelease&&n.semver.prerelease.length?n.semver:!1,v=a&&!r.includePrerelease&&a.semver.prerelease.length?a.semver:!1;I&&I.prerelease.length===1&&n.operator==="<"&&I.prerelease[0]===0&&(I=!1);for(let x of e){if(C=C||x.operator===">"||x.operator===">=",h=h||x.operator==="<"||x.operator==="<=",a){if(v&&x.semver.prerelease&&x.semver.prerelease.length&&x.semver.major===v.major&&x.semver.minor===v.minor&&x.semver.patch===v.patch&&(v=!1),x.operator===">"||x.operator===">="){if(A=VJ(a,x,r),A===x&&A!==a)return!1}else if(a.operator===">="&&!wI(a.semver,String(x),r))return!1}if(n){if(I&&x.semver.prerelease&&x.semver.prerelease.length&&x.semver.major===I.major&&x.semver.minor===I.minor&&x.semver.patch===I.patch&&(I=!1),x.operator==="<"||x.operator==="<="){if(p=zJ(n,x,r),p===x&&p!==n)return!1}else if(n.operator==="<="&&!wI(n.semver,String(x),r))return!1}if(!x.operator&&(n||a)&&u!==0)return!1}return!(a&&h&&!n&&u!==0||n&&C&&!a&&u!==0||v||I)},VJ=(t,e,r)=>{if(!t)return e;let o=AN(t.semver,e.semver,r);return o>0?t:o<0||e.operator===">"&&t.operator===">="?e:t},zJ=(t,e,r)=>{if(!t)return e;let o=AN(t.semver,e.semver,r);return o<0?t:o>0||e.operator==="<"&&t.operator==="<="?e:t};JJ.exports=Q5e});var Jn=_((IQt,eX)=>{var fN=Iy(),ZJ=pI(),T5e=Po(),$J=XT(),N5e=nd(),L5e=Ez(),O5e=wz(),M5e=vz(),U5e=Sz(),_5e=xz(),H5e=Qz(),j5e=Rz(),q5e=Nz(),G5e=Ll(),Y5e=Uz(),W5e=Hz(),K5e=mP(),V5e=Yz(),z5e=Kz(),J5e=gI(),X5e=yP(),Z5e=ZT(),$5e=$T(),e9e=EP(),t9e=CP(),r9e=eN(),n9e=rJ(),i9e=yI(),s9e=Ol(),o9e=CI(),a9e=BJ(),l9e=DJ(),c9e=SJ(),u9e=kJ(),A9e=FJ(),f9e=DP(),p9e=MJ(),h9e=_J(),g9e=qJ(),d9e=YJ(),m9e=XJ();eX.exports={parse:N5e,valid:L5e,clean:O5e,inc:M5e,diff:U5e,major:_5e,minor:H5e,patch:j5e,prerelease:q5e,compare:G5e,rcompare:Y5e,compareLoose:W5e,compareBuild:K5e,sort:V5e,rsort:z5e,gt:J5e,lt:X5e,eq:Z5e,neq:$5e,gte:e9e,lte:t9e,cmp:r9e,coerce:n9e,Comparator:i9e,Range:s9e,satisfies:o9e,toComparators:a9e,maxSatisfying:l9e,minSatisfying:c9e,minVersion:u9e,validRange:A9e,outside:f9e,gtr:p9e,ltr:h9e,intersects:g9e,simplifyRange:d9e,subset:m9e,SemVer:T5e,re:fN.re,src:fN.src,tokens:fN.t,SEMVER_SPEC_VERSION:ZJ.SEMVER_SPEC_VERSION,RELEASE_TYPES:ZJ.RELEASE_TYPES,compareIdentifiers:$J.compareIdentifiers,rcompareIdentifiers:$J.rcompareIdentifiers}});var rX=_((BQt,tX)=>{"use strict";function y9e(t,e){function r(){this.constructor=t}r.prototype=e.prototype,t.prototype=new r}function ld(t,e,r,o){this.message=t,this.expected=e,this.found=r,this.location=o,this.name="SyntaxError",typeof Error.captureStackTrace=="function"&&Error.captureStackTrace(this,ld)}y9e(ld,Error);ld.buildMessage=function(t,e){var r={literal:function(h){return'"'+a(h.text)+'"'},class:function(h){var C="",I;for(I=0;I0){for(I=1,v=1;I{switch(Ne[1]){case"|":return Pe|Ne[3];case"&":return Pe&Ne[3];case"^":return Pe^Ne[3]}},Z)},v="!",x=Te("!",!1),E=function(Z){return!Z},R="(",L=Te("(",!1),U=")",z=Te(")",!1),te=function(Z){return Z},le=/^[^ \t\n\r()!|&\^]/,he=ke([" "," ",` +`,"\r","(",")","!","|","&","^"],!0,!1),Ae=function(Z){return e.queryPattern.test(Z)},ye=function(Z){return e.checkFn(Z)},ae=Re("whitespace"),Ie=/^[ \t\n\r]/,Fe=ke([" "," ",` +`,"\r"],!1,!1),g=0,Ee=0,De=[{line:1,column:1}],ce=0,ne=[],ee=0,we;if("startRule"in e){if(!(e.startRule in o))throw new Error(`Can't start parsing from rule "`+e.startRule+'".');a=o[e.startRule]}function xe(){return t.substring(Ee,g)}function ht(){return He(Ee,g)}function H(Z,ie){throw ie=ie!==void 0?ie:He(Ee,g),S([Re(Z)],t.substring(Ee,g),ie)}function lt(Z,ie){throw ie=ie!==void 0?ie:He(Ee,g),w(Z,ie)}function Te(Z,ie){return{type:"literal",text:Z,ignoreCase:ie}}function ke(Z,ie,Pe){return{type:"class",parts:Z,inverted:ie,ignoreCase:Pe}}function be(){return{type:"any"}}function _e(){return{type:"end"}}function Re(Z){return{type:"other",description:Z}}function ze(Z){var ie=De[Z],Pe;if(ie)return ie;for(Pe=Z-1;!De[Pe];)Pe--;for(ie=De[Pe],ie={line:ie.line,column:ie.column};Pece&&(ce=g,ne=[]),ne.push(Z))}function w(Z,ie){return new ld(Z,null,null,ie)}function S(Z,ie,Pe){return new ld(ld.buildMessage(Z,ie),Z,ie,Pe)}function y(){var Z,ie,Pe,Ne,ot,dt,jt,$t;if(Z=g,ie=F(),ie!==r){for(Pe=[],Ne=g,ot=X(),ot!==r?(t.charCodeAt(g)===124?(dt=n,g++):(dt=r,ee===0&&b(u)),dt===r&&(t.charCodeAt(g)===38?(dt=A,g++):(dt=r,ee===0&&b(p)),dt===r&&(t.charCodeAt(g)===94?(dt=h,g++):(dt=r,ee===0&&b(C)))),dt!==r?(jt=X(),jt!==r?($t=F(),$t!==r?(ot=[ot,dt,jt,$t],Ne=ot):(g=Ne,Ne=r)):(g=Ne,Ne=r)):(g=Ne,Ne=r)):(g=Ne,Ne=r);Ne!==r;)Pe.push(Ne),Ne=g,ot=X(),ot!==r?(t.charCodeAt(g)===124?(dt=n,g++):(dt=r,ee===0&&b(u)),dt===r&&(t.charCodeAt(g)===38?(dt=A,g++):(dt=r,ee===0&&b(p)),dt===r&&(t.charCodeAt(g)===94?(dt=h,g++):(dt=r,ee===0&&b(C)))),dt!==r?(jt=X(),jt!==r?($t=F(),$t!==r?(ot=[ot,dt,jt,$t],Ne=ot):(g=Ne,Ne=r)):(g=Ne,Ne=r)):(g=Ne,Ne=r)):(g=Ne,Ne=r);Pe!==r?(Ee=Z,ie=I(ie,Pe),Z=ie):(g=Z,Z=r)}else g=Z,Z=r;return Z}function F(){var Z,ie,Pe,Ne,ot,dt;return Z=g,t.charCodeAt(g)===33?(ie=v,g++):(ie=r,ee===0&&b(x)),ie!==r?(Pe=F(),Pe!==r?(Ee=Z,ie=E(Pe),Z=ie):(g=Z,Z=r)):(g=Z,Z=r),Z===r&&(Z=g,t.charCodeAt(g)===40?(ie=R,g++):(ie=r,ee===0&&b(L)),ie!==r?(Pe=X(),Pe!==r?(Ne=y(),Ne!==r?(ot=X(),ot!==r?(t.charCodeAt(g)===41?(dt=U,g++):(dt=r,ee===0&&b(z)),dt!==r?(Ee=Z,ie=te(Ne),Z=ie):(g=Z,Z=r)):(g=Z,Z=r)):(g=Z,Z=r)):(g=Z,Z=r)):(g=Z,Z=r),Z===r&&(Z=J())),Z}function J(){var Z,ie,Pe,Ne,ot;if(Z=g,ie=X(),ie!==r){if(Pe=g,Ne=[],le.test(t.charAt(g))?(ot=t.charAt(g),g++):(ot=r,ee===0&&b(he)),ot!==r)for(;ot!==r;)Ne.push(ot),le.test(t.charAt(g))?(ot=t.charAt(g),g++):(ot=r,ee===0&&b(he));else Ne=r;Ne!==r?Pe=t.substring(Pe,g):Pe=Ne,Pe!==r?(Ee=g,Ne=Ae(Pe),Ne?Ne=void 0:Ne=r,Ne!==r?(Ee=Z,ie=ye(Pe),Z=ie):(g=Z,Z=r)):(g=Z,Z=r)}else g=Z,Z=r;return Z}function X(){var Z,ie;for(ee++,Z=[],Ie.test(t.charAt(g))?(ie=t.charAt(g),g++):(ie=r,ee===0&&b(Fe));ie!==r;)Z.push(ie),Ie.test(t.charAt(g))?(ie=t.charAt(g),g++):(ie=r,ee===0&&b(Fe));return ee--,Z===r&&(ie=r,ee===0&&b(ae)),Z}if(we=a(),we!==r&&g===t.length)return we;throw we!==r&&g{var{parse:C9e}=rX();PP.makeParser=(t=/[a-z]+/)=>(e,r)=>C9e(e,{queryPattern:t,checkFn:r});PP.parse=PP.makeParser()});var sX=_((DQt,iX)=>{"use strict";iX.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 pN=_((PQt,aX)=>{var II=sX(),oX={};for(let t of Object.keys(II))oX[II[t]]=t;var Ar={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"]}};aX.exports=Ar;for(let t of Object.keys(Ar)){if(!("channels"in Ar[t]))throw new Error("missing channels property: "+t);if(!("labels"in Ar[t]))throw new Error("missing channel labels property: "+t);if(Ar[t].labels.length!==Ar[t].channels)throw new Error("channel and label counts mismatch: "+t);let{channels:e,labels:r}=Ar[t];delete Ar[t].channels,delete Ar[t].labels,Object.defineProperty(Ar[t],"channels",{value:e}),Object.defineProperty(Ar[t],"labels",{value:r})}Ar.rgb.hsl=function(t){let e=t[0]/255,r=t[1]/255,o=t[2]/255,a=Math.min(e,r,o),n=Math.max(e,r,o),u=n-a,A,p;n===a?A=0:e===n?A=(r-o)/u:r===n?A=2+(o-e)/u:o===n&&(A=4+(e-r)/u),A=Math.min(A*60,360),A<0&&(A+=360);let h=(a+n)/2;return n===a?p=0:h<=.5?p=u/(n+a):p=u/(2-n-a),[A,p*100,h*100]};Ar.rgb.hsv=function(t){let e,r,o,a,n,u=t[0]/255,A=t[1]/255,p=t[2]/255,h=Math.max(u,A,p),C=h-Math.min(u,A,p),I=function(v){return(h-v)/6/C+1/2};return C===0?(a=0,n=0):(n=C/h,e=I(u),r=I(A),o=I(p),u===h?a=o-r:A===h?a=1/3+e-o:p===h&&(a=2/3+r-e),a<0?a+=1:a>1&&(a-=1)),[a*360,n*100,h*100]};Ar.rgb.hwb=function(t){let e=t[0],r=t[1],o=t[2],a=Ar.rgb.hsl(t)[0],n=1/255*Math.min(e,Math.min(r,o));return o=1-1/255*Math.max(e,Math.max(r,o)),[a,n*100,o*100]};Ar.rgb.cmyk=function(t){let e=t[0]/255,r=t[1]/255,o=t[2]/255,a=Math.min(1-e,1-r,1-o),n=(1-e-a)/(1-a)||0,u=(1-r-a)/(1-a)||0,A=(1-o-a)/(1-a)||0;return[n*100,u*100,A*100,a*100]};function w9e(t,e){return(t[0]-e[0])**2+(t[1]-e[1])**2+(t[2]-e[2])**2}Ar.rgb.keyword=function(t){let e=oX[t];if(e)return e;let r=1/0,o;for(let a of Object.keys(II)){let n=II[a],u=w9e(t,n);u.04045?((e+.055)/1.055)**2.4:e/12.92,r=r>.04045?((r+.055)/1.055)**2.4:r/12.92,o=o>.04045?((o+.055)/1.055)**2.4:o/12.92;let a=e*.4124+r*.3576+o*.1805,n=e*.2126+r*.7152+o*.0722,u=e*.0193+r*.1192+o*.9505;return[a*100,n*100,u*100]};Ar.rgb.lab=function(t){let e=Ar.rgb.xyz(t),r=e[0],o=e[1],a=e[2];r/=95.047,o/=100,a/=108.883,r=r>.008856?r**(1/3):7.787*r+16/116,o=o>.008856?o**(1/3):7.787*o+16/116,a=a>.008856?a**(1/3):7.787*a+16/116;let n=116*o-16,u=500*(r-o),A=200*(o-a);return[n,u,A]};Ar.hsl.rgb=function(t){let e=t[0]/360,r=t[1]/100,o=t[2]/100,a,n,u;if(r===0)return u=o*255,[u,u,u];o<.5?a=o*(1+r):a=o+r-o*r;let A=2*o-a,p=[0,0,0];for(let h=0;h<3;h++)n=e+1/3*-(h-1),n<0&&n++,n>1&&n--,6*n<1?u=A+(a-A)*6*n:2*n<1?u=a:3*n<2?u=A+(a-A)*(2/3-n)*6:u=A,p[h]=u*255;return p};Ar.hsl.hsv=function(t){let e=t[0],r=t[1]/100,o=t[2]/100,a=r,n=Math.max(o,.01);o*=2,r*=o<=1?o:2-o,a*=n<=1?n:2-n;let u=(o+r)/2,A=o===0?2*a/(n+a):2*r/(o+r);return[e,A*100,u*100]};Ar.hsv.rgb=function(t){let e=t[0]/60,r=t[1]/100,o=t[2]/100,a=Math.floor(e)%6,n=e-Math.floor(e),u=255*o*(1-r),A=255*o*(1-r*n),p=255*o*(1-r*(1-n));switch(o*=255,a){case 0:return[o,p,u];case 1:return[A,o,u];case 2:return[u,o,p];case 3:return[u,A,o];case 4:return[p,u,o];case 5:return[o,u,A]}};Ar.hsv.hsl=function(t){let e=t[0],r=t[1]/100,o=t[2]/100,a=Math.max(o,.01),n,u;u=(2-r)*o;let A=(2-r)*a;return n=r*a,n/=A<=1?A:2-A,n=n||0,u/=2,[e,n*100,u*100]};Ar.hwb.rgb=function(t){let e=t[0]/360,r=t[1]/100,o=t[2]/100,a=r+o,n;a>1&&(r/=a,o/=a);let u=Math.floor(6*e),A=1-o;n=6*e-u,(u&1)!==0&&(n=1-n);let p=r+n*(A-r),h,C,I;switch(u){default:case 6:case 0:h=A,C=p,I=r;break;case 1:h=p,C=A,I=r;break;case 2:h=r,C=A,I=p;break;case 3:h=r,C=p,I=A;break;case 4:h=p,C=r,I=A;break;case 5:h=A,C=r,I=p;break}return[h*255,C*255,I*255]};Ar.cmyk.rgb=function(t){let e=t[0]/100,r=t[1]/100,o=t[2]/100,a=t[3]/100,n=1-Math.min(1,e*(1-a)+a),u=1-Math.min(1,r*(1-a)+a),A=1-Math.min(1,o*(1-a)+a);return[n*255,u*255,A*255]};Ar.xyz.rgb=function(t){let e=t[0]/100,r=t[1]/100,o=t[2]/100,a,n,u;return a=e*3.2406+r*-1.5372+o*-.4986,n=e*-.9689+r*1.8758+o*.0415,u=e*.0557+r*-.204+o*1.057,a=a>.0031308?1.055*a**(1/2.4)-.055:a*12.92,n=n>.0031308?1.055*n**(1/2.4)-.055:n*12.92,u=u>.0031308?1.055*u**(1/2.4)-.055:u*12.92,a=Math.min(Math.max(0,a),1),n=Math.min(Math.max(0,n),1),u=Math.min(Math.max(0,u),1),[a*255,n*255,u*255]};Ar.xyz.lab=function(t){let e=t[0],r=t[1],o=t[2];e/=95.047,r/=100,o/=108.883,e=e>.008856?e**(1/3):7.787*e+16/116,r=r>.008856?r**(1/3):7.787*r+16/116,o=o>.008856?o**(1/3):7.787*o+16/116;let a=116*r-16,n=500*(e-r),u=200*(r-o);return[a,n,u]};Ar.lab.xyz=function(t){let e=t[0],r=t[1],o=t[2],a,n,u;n=(e+16)/116,a=r/500+n,u=n-o/200;let A=n**3,p=a**3,h=u**3;return n=A>.008856?A:(n-16/116)/7.787,a=p>.008856?p:(a-16/116)/7.787,u=h>.008856?h:(u-16/116)/7.787,a*=95.047,n*=100,u*=108.883,[a,n,u]};Ar.lab.lch=function(t){let e=t[0],r=t[1],o=t[2],a;a=Math.atan2(o,r)*360/2/Math.PI,a<0&&(a+=360);let u=Math.sqrt(r*r+o*o);return[e,u,a]};Ar.lch.lab=function(t){let e=t[0],r=t[1],a=t[2]/360*2*Math.PI,n=r*Math.cos(a),u=r*Math.sin(a);return[e,n,u]};Ar.rgb.ansi16=function(t,e=null){let[r,o,a]=t,n=e===null?Ar.rgb.hsv(t)[2]:e;if(n=Math.round(n/50),n===0)return 30;let u=30+(Math.round(a/255)<<2|Math.round(o/255)<<1|Math.round(r/255));return n===2&&(u+=60),u};Ar.hsv.ansi16=function(t){return Ar.rgb.ansi16(Ar.hsv.rgb(t),t[2])};Ar.rgb.ansi256=function(t){let e=t[0],r=t[1],o=t[2];return e===r&&r===o?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(o/255*5)};Ar.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,o=(e&1)*r*255,a=(e>>1&1)*r*255,n=(e>>2&1)*r*255;return[o,a,n]};Ar.ansi256.rgb=function(t){if(t>=232){let n=(t-232)*10+8;return[n,n,n]}t-=16;let e,r=Math.floor(t/36)/5*255,o=Math.floor((e=t%36)/6)/5*255,a=e%6/5*255;return[r,o,a]};Ar.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};Ar.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 o=parseInt(r,16),a=o>>16&255,n=o>>8&255,u=o&255;return[a,n,u]};Ar.rgb.hcg=function(t){let e=t[0]/255,r=t[1]/255,o=t[2]/255,a=Math.max(Math.max(e,r),o),n=Math.min(Math.min(e,r),o),u=a-n,A,p;return u<1?A=n/(1-u):A=0,u<=0?p=0:a===e?p=(r-o)/u%6:a===r?p=2+(o-e)/u:p=4+(e-r)/u,p/=6,p%=1,[p*360,u*100,A*100]};Ar.hsl.hcg=function(t){let e=t[1]/100,r=t[2]/100,o=r<.5?2*e*r:2*e*(1-r),a=0;return o<1&&(a=(r-.5*o)/(1-o)),[t[0],o*100,a*100]};Ar.hsv.hcg=function(t){let e=t[1]/100,r=t[2]/100,o=e*r,a=0;return o<1&&(a=(r-o)/(1-o)),[t[0],o*100,a*100]};Ar.hcg.rgb=function(t){let e=t[0]/360,r=t[1]/100,o=t[2]/100;if(r===0)return[o*255,o*255,o*255];let a=[0,0,0],n=e%1*6,u=n%1,A=1-u,p=0;switch(Math.floor(n)){case 0:a[0]=1,a[1]=u,a[2]=0;break;case 1:a[0]=A,a[1]=1,a[2]=0;break;case 2:a[0]=0,a[1]=1,a[2]=u;break;case 3:a[0]=0,a[1]=A,a[2]=1;break;case 4:a[0]=u,a[1]=0,a[2]=1;break;default:a[0]=1,a[1]=0,a[2]=A}return p=(1-r)*o,[(r*a[0]+p)*255,(r*a[1]+p)*255,(r*a[2]+p)*255]};Ar.hcg.hsv=function(t){let e=t[1]/100,r=t[2]/100,o=e+r*(1-e),a=0;return o>0&&(a=e/o),[t[0],a*100,o*100]};Ar.hcg.hsl=function(t){let e=t[1]/100,o=t[2]/100*(1-e)+.5*e,a=0;return o>0&&o<.5?a=e/(2*o):o>=.5&&o<1&&(a=e/(2*(1-o))),[t[0],a*100,o*100]};Ar.hcg.hwb=function(t){let e=t[1]/100,r=t[2]/100,o=e+r*(1-e);return[t[0],(o-e)*100,(1-o)*100]};Ar.hwb.hcg=function(t){let e=t[1]/100,o=1-t[2]/100,a=o-e,n=0;return a<1&&(n=(o-a)/(1-a)),[t[0],a*100,n*100]};Ar.apple.rgb=function(t){return[t[0]/65535*255,t[1]/65535*255,t[2]/65535*255]};Ar.rgb.apple=function(t){return[t[0]/255*65535,t[1]/255*65535,t[2]/255*65535]};Ar.gray.rgb=function(t){return[t[0]/100*255,t[0]/100*255,t[0]/100*255]};Ar.gray.hsl=function(t){return[0,0,t[0]]};Ar.gray.hsv=Ar.gray.hsl;Ar.gray.hwb=function(t){return[0,100,t[0]]};Ar.gray.cmyk=function(t){return[0,0,0,t[0]]};Ar.gray.lab=function(t){return[t[0],0,0]};Ar.gray.hex=function(t){let e=Math.round(t[0]/100*255)&255,o=((e<<16)+(e<<8)+e).toString(16).toUpperCase();return"000000".substring(o.length)+o};Ar.rgb.gray=function(t){return[(t[0]+t[1]+t[2])/3/255*100]}});var cX=_((SQt,lX)=>{var SP=pN();function I9e(){let t={},e=Object.keys(SP);for(let r=e.length,o=0;o{var hN=pN(),P9e=cX(),Sy={},S9e=Object.keys(hN);function b9e(t){let e=function(...r){let o=r[0];return o==null?o:(o.length>1&&(r=o),t(r))};return"conversion"in t&&(e.conversion=t.conversion),e}function x9e(t){let e=function(...r){let o=r[0];if(o==null)return o;o.length>1&&(r=o);let a=t(r);if(typeof a=="object")for(let n=a.length,u=0;u{Sy[t]={},Object.defineProperty(Sy[t],"channels",{value:hN[t].channels}),Object.defineProperty(Sy[t],"labels",{value:hN[t].labels});let e=P9e(t);Object.keys(e).forEach(o=>{let a=e[o];Sy[t][o]=x9e(a),Sy[t][o].raw=b9e(a)})});uX.exports=Sy});var BI=_((xQt,dX)=>{"use strict";var fX=(t,e)=>(...r)=>`\x1B[${t(...r)+e}m`,pX=(t,e)=>(...r)=>{let o=t(...r);return`\x1B[${38+e};5;${o}m`},hX=(t,e)=>(...r)=>{let o=t(...r);return`\x1B[${38+e};2;${o[0]};${o[1]};${o[2]}m`},bP=t=>t,gX=(t,e,r)=>[t,e,r],by=(t,e,r)=>{Object.defineProperty(t,e,{get:()=>{let o=r();return Object.defineProperty(t,e,{value:o,enumerable:!0,configurable:!0}),o},enumerable:!0,configurable:!0})},gN,xy=(t,e,r,o)=>{gN===void 0&&(gN=AX());let a=o?10:0,n={};for(let[u,A]of Object.entries(gN)){let p=u==="ansi16"?"ansi":u;u===e?n[p]=t(r,a):typeof A=="object"&&(n[p]=t(A[e],a))}return n};function k9e(){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,o]of Object.entries(e)){for(let[a,n]of Object.entries(o))e[a]={open:`\x1B[${n[0]}m`,close:`\x1B[${n[1]}m`},o[a]=e[a],t.set(n[0],n[1]);Object.defineProperty(e,r,{value:o,enumerable:!1})}return Object.defineProperty(e,"codes",{value:t,enumerable:!1}),e.color.close="\x1B[39m",e.bgColor.close="\x1B[49m",by(e.color,"ansi",()=>xy(fX,"ansi16",bP,!1)),by(e.color,"ansi256",()=>xy(pX,"ansi256",bP,!1)),by(e.color,"ansi16m",()=>xy(hX,"rgb",gX,!1)),by(e.bgColor,"ansi",()=>xy(fX,"ansi16",bP,!0)),by(e.bgColor,"ansi256",()=>xy(pX,"ansi256",bP,!0)),by(e.bgColor,"ansi16m",()=>xy(hX,"rgb",gX,!0)),e}Object.defineProperty(dX,"exports",{enumerable:!0,get:k9e})});var yX=_((kQt,mX)=>{"use strict";mX.exports=(t,e=process.argv)=>{let r=t.startsWith("-")?"":t.length===1?"-":"--",o=e.indexOf(r+t),a=e.indexOf("--");return o!==-1&&(a===-1||o{"use strict";var Q9e=Be("os"),EX=Be("tty"),Ml=yX(),{env:ls}=process,Kp;Ml("no-color")||Ml("no-colors")||Ml("color=false")||Ml("color=never")?Kp=0:(Ml("color")||Ml("colors")||Ml("color=true")||Ml("color=always"))&&(Kp=1);"FORCE_COLOR"in ls&&(ls.FORCE_COLOR==="true"?Kp=1:ls.FORCE_COLOR==="false"?Kp=0:Kp=ls.FORCE_COLOR.length===0?1:Math.min(parseInt(ls.FORCE_COLOR,10),3));function dN(t){return t===0?!1:{level:t,hasBasic:!0,has256:t>=2,has16m:t>=3}}function mN(t,e){if(Kp===0)return 0;if(Ml("color=16m")||Ml("color=full")||Ml("color=truecolor"))return 3;if(Ml("color=256"))return 2;if(t&&!e&&Kp===void 0)return 0;let r=Kp||0;if(ls.TERM==="dumb")return r;if(process.platform==="win32"){let o=Q9e.release().split(".");return Number(o[0])>=10&&Number(o[2])>=10586?Number(o[2])>=14931?3:2:1}if("CI"in ls)return["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI"].some(o=>o in ls)||ls.CI_NAME==="codeship"?1:r;if("TEAMCITY_VERSION"in ls)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(ls.TEAMCITY_VERSION)?1:0;if("GITHUB_ACTIONS"in ls)return 1;if(ls.COLORTERM==="truecolor")return 3;if("TERM_PROGRAM"in ls){let o=parseInt((ls.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(ls.TERM_PROGRAM){case"iTerm.app":return o>=3?3:2;case"Apple_Terminal":return 2}}return/-256(color)?$/i.test(ls.TERM)?2:/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(ls.TERM)||"COLORTERM"in ls?1:r}function F9e(t){let e=mN(t,t&&t.isTTY);return dN(e)}CX.exports={supportsColor:F9e,stdout:dN(mN(!0,EX.isatty(1))),stderr:dN(mN(!0,EX.isatty(2)))}});var IX=_((FQt,wX)=>{"use strict";var R9e=(t,e,r)=>{let o=t.indexOf(e);if(o===-1)return t;let a=e.length,n=0,u="";do u+=t.substr(n,o-n)+e+r,n=o+a,o=t.indexOf(e,n);while(o!==-1);return u+=t.substr(n),u},T9e=(t,e,r,o)=>{let a=0,n="";do{let u=t[o-1]==="\r";n+=t.substr(a,(u?o-1:o)-a)+e+(u?`\r +`:` +`)+r,a=o+1,o=t.indexOf(` +`,a)}while(o!==-1);return n+=t.substr(a),n};wX.exports={stringReplaceAll:R9e,stringEncaseCRLFWithFirstIndex:T9e}});var SX=_((RQt,PX)=>{"use strict";var N9e=/(?:\\(u(?:[a-f\d]{4}|\{[a-f\d]{1,6}\})|x[a-f\d]{2}|.))|(?:\{(~)?(\w+(?:\([^)]*\))?(?:\.\w+(?:\([^)]*\))?)*)(?:[ \t]|(?=\r?\n)))|(\})|((?:.|[\r\n\f])+?)/gi,BX=/(?:^|\.)(\w+)(?:\(([^)]*)\))?/g,L9e=/^(['"])((?:\\.|(?!\1)[^\\])*)\1$/,O9e=/\\(u(?:[a-f\d]{4}|\{[a-f\d]{1,6}\})|x[a-f\d]{2}|.)|([^\\])/gi,M9e=new Map([["n",` +`],["r","\r"],["t"," "],["b","\b"],["f","\f"],["v","\v"],["0","\0"],["\\","\\"],["e","\x1B"],["a","\x07"]]);function DX(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)):M9e.get(t)||t}function U9e(t,e){let r=[],o=e.trim().split(/\s*,\s*/g),a;for(let n of o){let u=Number(n);if(!Number.isNaN(u))r.push(u);else if(a=n.match(L9e))r.push(a[2].replace(O9e,(A,p,h)=>p?DX(p):h));else throw new Error(`Invalid Chalk template style argument: ${n} (in style '${t}')`)}return r}function _9e(t){BX.lastIndex=0;let e=[],r;for(;(r=BX.exec(t))!==null;){let o=r[1];if(r[2]){let a=U9e(o,r[2]);e.push([o].concat(a))}else e.push([o])}return e}function vX(t,e){let r={};for(let a of e)for(let n of a.styles)r[n[0]]=a.inverse?null:n.slice(1);let o=t;for(let[a,n]of Object.entries(r))if(!!Array.isArray(n)){if(!(a in o))throw new Error(`Unknown Chalk style: ${a}`);o=n.length>0?o[a](...n):o[a]}return o}PX.exports=(t,e)=>{let r=[],o=[],a=[];if(e.replace(N9e,(n,u,A,p,h,C)=>{if(u)a.push(DX(u));else if(p){let I=a.join("");a=[],o.push(r.length===0?I:vX(t,r)(I)),r.push({inverse:A,styles:_9e(p)})}else if(h){if(r.length===0)throw new Error("Found extraneous } in Chalk template literal");o.push(vX(t,r)(a.join(""))),a=[],r.pop()}else a.push(C)}),o.push(a.join("")),r.length>0){let n=`Chalk template literal is missing ${r.length} closing bracket${r.length===1?"":"s"} (\`}\`)`;throw new Error(n)}return o.join("")}});var vN=_((TQt,QX)=>{"use strict";var vI=BI(),{stdout:CN,stderr:wN}=yN(),{stringReplaceAll:H9e,stringEncaseCRLFWithFirstIndex:j9e}=IX(),bX=["ansi","ansi","ansi256","ansi16m"],ky=Object.create(null),q9e=(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=CN?CN.level:0;t.level=e.level===void 0?r:e.level},IN=class{constructor(e){return xX(e)}},xX=t=>{let e={};return q9e(e,t),e.template=(...r)=>W9e(e.template,...r),Object.setPrototypeOf(e,xP.prototype),Object.setPrototypeOf(e.template,e),e.template.constructor=()=>{throw new Error("`chalk.constructor()` is deprecated. Use `new chalk.Instance()` instead.")},e.template.Instance=IN,e.template};function xP(t){return xX(t)}for(let[t,e]of Object.entries(vI))ky[t]={get(){let r=kP(this,BN(e.open,e.close,this._styler),this._isEmpty);return Object.defineProperty(this,t,{value:r}),r}};ky.visible={get(){let t=kP(this,this._styler,!0);return Object.defineProperty(this,"visible",{value:t}),t}};var kX=["rgb","hex","keyword","hsl","hsv","hwb","ansi","ansi256"];for(let t of kX)ky[t]={get(){let{level:e}=this;return function(...r){let o=BN(vI.color[bX[e]][t](...r),vI.color.close,this._styler);return kP(this,o,this._isEmpty)}}};for(let t of kX){let e="bg"+t[0].toUpperCase()+t.slice(1);ky[e]={get(){let{level:r}=this;return function(...o){let a=BN(vI.bgColor[bX[r]][t](...o),vI.bgColor.close,this._styler);return kP(this,a,this._isEmpty)}}}}var G9e=Object.defineProperties(()=>{},{...ky,level:{enumerable:!0,get(){return this._generator.level},set(t){this._generator.level=t}}}),BN=(t,e,r)=>{let o,a;return r===void 0?(o=t,a=e):(o=r.openAll+t,a=e+r.closeAll),{open:t,close:e,openAll:o,closeAll:a,parent:r}},kP=(t,e,r)=>{let o=(...a)=>Y9e(o,a.length===1?""+a[0]:a.join(" "));return o.__proto__=G9e,o._generator=t,o._styler=e,o._isEmpty=r,o},Y9e=(t,e)=>{if(t.level<=0||!e)return t._isEmpty?"":e;let r=t._styler;if(r===void 0)return e;let{openAll:o,closeAll:a}=r;if(e.indexOf("\x1B")!==-1)for(;r!==void 0;)e=H9e(e,r.close,r.open),r=r.parent;let n=e.indexOf(` +`);return n!==-1&&(e=j9e(e,a,o,n)),o+e+a},EN,W9e=(t,...e)=>{let[r]=e;if(!Array.isArray(r))return e.join(" ");let o=e.slice(1),a=[r.raw[0]];for(let n=1;n{"use strict";Ul.isInteger=t=>typeof t=="number"?Number.isInteger(t):typeof t=="string"&&t.trim()!==""?Number.isInteger(Number(t)):!1;Ul.find=(t,e)=>t.nodes.find(r=>r.type===e);Ul.exceedsLimit=(t,e,r=1,o)=>o===!1||!Ul.isInteger(t)||!Ul.isInteger(e)?!1:(Number(e)-Number(t))/Number(r)>=o;Ul.escapeNode=(t,e=0,r)=>{let o=t.nodes[e];!o||(r&&o.type===r||o.type==="open"||o.type==="close")&&o.escaped!==!0&&(o.value="\\"+o.value,o.escaped=!0)};Ul.encloseBrace=t=>t.type!=="brace"?!1:t.commas>>0+t.ranges>>0===0?(t.invalid=!0,!0):!1;Ul.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;Ul.isOpenOrClose=t=>t.type==="open"||t.type==="close"?!0:t.open===!0||t.close===!0;Ul.reduce=t=>t.reduce((e,r)=>(r.type==="text"&&e.push(r.value),r.type==="range"&&(r.type="text"),e),[]);Ul.flatten=(...t)=>{let e=[],r=o=>{for(let a=0;a{"use strict";var FX=QP();RX.exports=(t,e={})=>{let r=(o,a={})=>{let n=e.escapeInvalid&&FX.isInvalidBrace(a),u=o.invalid===!0&&e.escapeInvalid===!0,A="";if(o.value)return(n||u)&&FX.isOpenOrClose(o)?"\\"+o.value:o.value;if(o.value)return o.value;if(o.nodes)for(let p of o.nodes)A+=r(p);return A};return r(t)}});var NX=_((OQt,TX)=>{"use strict";TX.exports=function(t){return typeof t=="number"?t-t===0:typeof t=="string"&&t.trim()!==""?Number.isFinite?Number.isFinite(+t):isFinite(+t):!1}});var GX=_((MQt,qX)=>{"use strict";var LX=NX(),cd=(t,e,r)=>{if(LX(t)===!1)throw new TypeError("toRegexRange: expected the first argument to be a number");if(e===void 0||t===e)return String(t);if(LX(e)===!1)throw new TypeError("toRegexRange: expected the second argument to be a number.");let o={relaxZeros:!0,...r};typeof o.strictZeros=="boolean"&&(o.relaxZeros=o.strictZeros===!1);let a=String(o.relaxZeros),n=String(o.shorthand),u=String(o.capture),A=String(o.wrap),p=t+":"+e+"="+a+n+u+A;if(cd.cache.hasOwnProperty(p))return cd.cache[p].result;let h=Math.min(t,e),C=Math.max(t,e);if(Math.abs(h-C)===1){let R=t+"|"+e;return o.capture?`(${R})`:o.wrap===!1?R:`(?:${R})`}let I=jX(t)||jX(e),v={min:t,max:e,a:h,b:C},x=[],E=[];if(I&&(v.isPadded=I,v.maxLen=String(v.max).length),h<0){let R=C<0?Math.abs(C):1;E=OX(R,Math.abs(h),v,o),h=v.a=0}return C>=0&&(x=OX(h,C,v,o)),v.negatives=E,v.positives=x,v.result=K9e(E,x,o),o.capture===!0?v.result=`(${v.result})`:o.wrap!==!1&&x.length+E.length>1&&(v.result=`(?:${v.result})`),cd.cache[p]=v,v.result};function K9e(t,e,r){let o=DN(t,e,"-",!1,r)||[],a=DN(e,t,"",!1,r)||[],n=DN(t,e,"-?",!0,r)||[];return o.concat(n).concat(a).join("|")}function V9e(t,e){let r=1,o=1,a=UX(t,r),n=new Set([e]);for(;t<=a&&a<=e;)n.add(a),r+=1,a=UX(t,r);for(a=_X(e+1,o)-1;t1&&A.count.pop(),A.count.push(C.count[0]),A.string=A.pattern+HX(A.count),u=h+1;continue}r.isPadded&&(I=$9e(h,r,o)),C.string=I+C.pattern+HX(C.count),n.push(C),u=h+1,A=C}return n}function DN(t,e,r,o,a){let n=[];for(let u of t){let{string:A}=u;!o&&!MX(e,"string",A)&&n.push(r+A),o&&MX(e,"string",A)&&n.push(r+A)}return n}function J9e(t,e){let r=[];for(let o=0;oe?1:e>t?-1:0}function MX(t,e,r){return t.some(o=>o[e]===r)}function UX(t,e){return Number(String(t).slice(0,-e)+"9".repeat(e))}function _X(t,e){return t-t%Math.pow(10,e)}function HX(t){let[e=0,r=""]=t;return r||e>1?`{${e+(r?","+r:"")}}`:""}function Z9e(t,e,r){return`[${t}${e-t===1?"":"-"}${e}]`}function jX(t){return/^-?(0+)\d/.test(t)}function $9e(t,e,r){if(!e.isPadded)return t;let o=Math.abs(e.maxLen-String(t).length),a=r.relaxZeros!==!1;switch(o){case 0:return"";case 1:return a?"0?":"0";case 2:return a?"0{0,2}":"00";default:return a?`0{0,${o}}`:`0{${o}}`}}cd.cache={};cd.clearCache=()=>cd.cache={};qX.exports=cd});var bN=_((UQt,ZX)=>{"use strict";var e7e=Be("util"),KX=GX(),YX=t=>t!==null&&typeof t=="object"&&!Array.isArray(t),t7e=t=>e=>t===!0?Number(e):String(e),PN=t=>typeof t=="number"||typeof t=="string"&&t!=="",PI=t=>Number.isInteger(+t),SN=t=>{let e=`${t}`,r=-1;if(e[0]==="-"&&(e=e.slice(1)),e==="0")return!1;for(;e[++r]==="0";);return r>0},r7e=(t,e,r)=>typeof t=="string"||typeof e=="string"?!0:r.stringify===!0,n7e=(t,e,r)=>{if(e>0){let o=t[0]==="-"?"-":"";o&&(t=t.slice(1)),t=o+t.padStart(o?e-1:e,"0")}return r===!1?String(t):t},WX=(t,e)=>{let r=t[0]==="-"?"-":"";for(r&&(t=t.slice(1),e--);t.length{t.negatives.sort((u,A)=>uA?1:0),t.positives.sort((u,A)=>uA?1:0);let r=e.capture?"":"?:",o="",a="",n;return t.positives.length&&(o=t.positives.join("|")),t.negatives.length&&(a=`-(${r}${t.negatives.join("|")})`),o&&a?n=`${o}|${a}`:n=o||a,e.wrap?`(${r}${n})`:n},VX=(t,e,r,o)=>{if(r)return KX(t,e,{wrap:!1,...o});let a=String.fromCharCode(t);if(t===e)return a;let n=String.fromCharCode(e);return`[${a}-${n}]`},zX=(t,e,r)=>{if(Array.isArray(t)){let o=r.wrap===!0,a=r.capture?"":"?:";return o?`(${a}${t.join("|")})`:t.join("|")}return KX(t,e,r)},JX=(...t)=>new RangeError("Invalid range arguments: "+e7e.inspect(...t)),XX=(t,e,r)=>{if(r.strictRanges===!0)throw JX([t,e]);return[]},s7e=(t,e)=>{if(e.strictRanges===!0)throw new TypeError(`Expected step "${t}" to be a number`);return[]},o7e=(t,e,r=1,o={})=>{let a=Number(t),n=Number(e);if(!Number.isInteger(a)||!Number.isInteger(n)){if(o.strictRanges===!0)throw JX([t,e]);return[]}a===0&&(a=0),n===0&&(n=0);let u=a>n,A=String(t),p=String(e),h=String(r);r=Math.max(Math.abs(r),1);let C=SN(A)||SN(p)||SN(h),I=C?Math.max(A.length,p.length,h.length):0,v=C===!1&&r7e(t,e,o)===!1,x=o.transform||t7e(v);if(o.toRegex&&r===1)return VX(WX(t,I),WX(e,I),!0,o);let E={negatives:[],positives:[]},R=z=>E[z<0?"negatives":"positives"].push(Math.abs(z)),L=[],U=0;for(;u?a>=n:a<=n;)o.toRegex===!0&&r>1?R(a):L.push(n7e(x(a,U),I,v)),a=u?a-r:a+r,U++;return o.toRegex===!0?r>1?i7e(E,o):zX(L,null,{wrap:!1,...o}):L},a7e=(t,e,r=1,o={})=>{if(!PI(t)&&t.length>1||!PI(e)&&e.length>1)return XX(t,e,o);let a=o.transform||(v=>String.fromCharCode(v)),n=`${t}`.charCodeAt(0),u=`${e}`.charCodeAt(0),A=n>u,p=Math.min(n,u),h=Math.max(n,u);if(o.toRegex&&r===1)return VX(p,h,!1,o);let C=[],I=0;for(;A?n>=u:n<=u;)C.push(a(n,I)),n=A?n-r:n+r,I++;return o.toRegex===!0?zX(C,null,{wrap:!1,options:o}):C},RP=(t,e,r,o={})=>{if(e==null&&PN(t))return[t];if(!PN(t)||!PN(e))return XX(t,e,o);if(typeof r=="function")return RP(t,e,1,{transform:r});if(YX(r))return RP(t,e,0,r);let a={...o};return a.capture===!0&&(a.wrap=!0),r=r||a.step||1,PI(r)?PI(t)&&PI(e)?o7e(t,e,r,a):a7e(t,e,Math.max(Math.abs(r),1),a):r!=null&&!YX(r)?s7e(r,a):RP(t,e,1,r)};ZX.exports=RP});var tZ=_((_Qt,eZ)=>{"use strict";var l7e=bN(),$X=QP(),c7e=(t,e={})=>{let r=(o,a={})=>{let n=$X.isInvalidBrace(a),u=o.invalid===!0&&e.escapeInvalid===!0,A=n===!0||u===!0,p=e.escapeInvalid===!0?"\\":"",h="";if(o.isOpen===!0||o.isClose===!0)return p+o.value;if(o.type==="open")return A?p+o.value:"(";if(o.type==="close")return A?p+o.value:")";if(o.type==="comma")return o.prev.type==="comma"?"":A?o.value:"|";if(o.value)return o.value;if(o.nodes&&o.ranges>0){let C=$X.reduce(o.nodes),I=l7e(...C,{...e,wrap:!1,toRegex:!0});if(I.length!==0)return C.length>1&&I.length>1?`(${I})`:I}if(o.nodes)for(let C of o.nodes)h+=r(C,o);return h};return r(t)};eZ.exports=c7e});var iZ=_((HQt,nZ)=>{"use strict";var u7e=bN(),rZ=FP(),Qy=QP(),ud=(t="",e="",r=!1)=>{let o=[];if(t=[].concat(t),e=[].concat(e),!e.length)return t;if(!t.length)return r?Qy.flatten(e).map(a=>`{${a}}`):e;for(let a of t)if(Array.isArray(a))for(let n of a)o.push(ud(n,e,r));else for(let n of e)r===!0&&typeof n=="string"&&(n=`{${n}}`),o.push(Array.isArray(n)?ud(a,n,r):a+n);return Qy.flatten(o)},A7e=(t,e={})=>{let r=e.rangeLimit===void 0?1e3:e.rangeLimit,o=(a,n={})=>{a.queue=[];let u=n,A=n.queue;for(;u.type!=="brace"&&u.type!=="root"&&u.parent;)u=u.parent,A=u.queue;if(a.invalid||a.dollar){A.push(ud(A.pop(),rZ(a,e)));return}if(a.type==="brace"&&a.invalid!==!0&&a.nodes.length===2){A.push(ud(A.pop(),["{}"]));return}if(a.nodes&&a.ranges>0){let I=Qy.reduce(a.nodes);if(Qy.exceedsLimit(...I,e.step,r))throw new RangeError("expanded array length exceeds range limit. Use options.rangeLimit to increase or disable the limit.");let v=u7e(...I,e);v.length===0&&(v=rZ(a,e)),A.push(ud(A.pop(),v)),a.nodes=[];return}let p=Qy.encloseBrace(a),h=a.queue,C=a;for(;C.type!=="brace"&&C.type!=="root"&&C.parent;)C=C.parent,h=C.queue;for(let I=0;I{"use strict";sZ.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 AZ=_((qQt,uZ)=>{"use strict";var f7e=FP(),{MAX_LENGTH:aZ,CHAR_BACKSLASH:xN,CHAR_BACKTICK:p7e,CHAR_COMMA:h7e,CHAR_DOT:g7e,CHAR_LEFT_PARENTHESES:d7e,CHAR_RIGHT_PARENTHESES:m7e,CHAR_LEFT_CURLY_BRACE:y7e,CHAR_RIGHT_CURLY_BRACE:E7e,CHAR_LEFT_SQUARE_BRACKET:lZ,CHAR_RIGHT_SQUARE_BRACKET:cZ,CHAR_DOUBLE_QUOTE:C7e,CHAR_SINGLE_QUOTE:w7e,CHAR_NO_BREAK_SPACE:I7e,CHAR_ZERO_WIDTH_NOBREAK_SPACE:B7e}=oZ(),v7e=(t,e={})=>{if(typeof t!="string")throw new TypeError("Expected a string");let r=e||{},o=typeof r.maxLength=="number"?Math.min(aZ,r.maxLength):aZ;if(t.length>o)throw new SyntaxError(`Input length (${t.length}), exceeds max characters (${o})`);let a={type:"root",input:t,nodes:[]},n=[a],u=a,A=a,p=0,h=t.length,C=0,I=0,v,x={},E=()=>t[C++],R=L=>{if(L.type==="text"&&A.type==="dot"&&(A.type="text"),A&&A.type==="text"&&L.type==="text"){A.value+=L.value;return}return u.nodes.push(L),L.parent=u,L.prev=A,A=L,L};for(R({type:"bos"});C0){if(u.ranges>0){u.ranges=0;let L=u.nodes.shift();u.nodes=[L,{type:"text",value:f7e(u)}]}R({type:"comma",value:v}),u.commas++;continue}if(v===g7e&&I>0&&u.commas===0){let L=u.nodes;if(I===0||L.length===0){R({type:"text",value:v});continue}if(A.type==="dot"){if(u.range=[],A.value+=v,A.type="range",u.nodes.length!==3&&u.nodes.length!==5){u.invalid=!0,u.ranges=0,A.type="text";continue}u.ranges++,u.args=[];continue}if(A.type==="range"){L.pop();let U=L[L.length-1];U.value+=A.value+v,A=U,u.ranges--;continue}R({type:"dot",value:v});continue}R({type:"text",value:v})}do if(u=n.pop(),u.type!=="root"){u.nodes.forEach(z=>{z.nodes||(z.type==="open"&&(z.isOpen=!0),z.type==="close"&&(z.isClose=!0),z.nodes||(z.type="text"),z.invalid=!0)});let L=n[n.length-1],U=L.nodes.indexOf(u);L.nodes.splice(U,1,...u.nodes)}while(n.length>0);return R({type:"eos"}),a};uZ.exports=v7e});var hZ=_((GQt,pZ)=>{"use strict";var fZ=FP(),D7e=tZ(),P7e=iZ(),S7e=AZ(),rl=(t,e={})=>{let r=[];if(Array.isArray(t))for(let o of t){let a=rl.create(o,e);Array.isArray(a)?r.push(...a):r.push(a)}else r=[].concat(rl.create(t,e));return e&&e.expand===!0&&e.nodupes===!0&&(r=[...new Set(r)]),r};rl.parse=(t,e={})=>S7e(t,e);rl.stringify=(t,e={})=>fZ(typeof t=="string"?rl.parse(t,e):t,e);rl.compile=(t,e={})=>(typeof t=="string"&&(t=rl.parse(t,e)),D7e(t,e));rl.expand=(t,e={})=>{typeof t=="string"&&(t=rl.parse(t,e));let r=P7e(t,e);return e.noempty===!0&&(r=r.filter(Boolean)),e.nodupes===!0&&(r=[...new Set(r)]),r};rl.create=(t,e={})=>t===""||t.length<3?[t]:e.expand!==!0?rl.compile(t,e):rl.expand(t,e);pZ.exports=rl});var SI=_((YQt,EZ)=>{"use strict";var b7e=Be("path"),Ku="\\\\/",gZ=`[^${Ku}]`,Bf="\\.",x7e="\\+",k7e="\\?",TP="\\/",Q7e="(?=.)",dZ="[^/]",kN=`(?:${TP}|$)`,mZ=`(?:^|${TP})`,QN=`${Bf}{1,2}${kN}`,F7e=`(?!${Bf})`,R7e=`(?!${mZ}${QN})`,T7e=`(?!${Bf}{0,1}${kN})`,N7e=`(?!${QN})`,L7e=`[^.${TP}]`,O7e=`${dZ}*?`,yZ={DOT_LITERAL:Bf,PLUS_LITERAL:x7e,QMARK_LITERAL:k7e,SLASH_LITERAL:TP,ONE_CHAR:Q7e,QMARK:dZ,END_ANCHOR:kN,DOTS_SLASH:QN,NO_DOT:F7e,NO_DOTS:R7e,NO_DOT_SLASH:T7e,NO_DOTS_SLASH:N7e,QMARK_NO_DOT:L7e,STAR:O7e,START_ANCHOR:mZ},M7e={...yZ,SLASH_LITERAL:`[${Ku}]`,QMARK:gZ,STAR:`${gZ}*?`,DOTS_SLASH:`${Bf}{1,2}(?:[${Ku}]|$)`,NO_DOT:`(?!${Bf})`,NO_DOTS:`(?!(?:^|[${Ku}])${Bf}{1,2}(?:[${Ku}]|$))`,NO_DOT_SLASH:`(?!${Bf}{0,1}(?:[${Ku}]|$))`,NO_DOTS_SLASH:`(?!${Bf}{1,2}(?:[${Ku}]|$))`,QMARK_NO_DOT:`[^.${Ku}]`,START_ANCHOR:`(?:^|[${Ku}])`,END_ANCHOR:`(?:[${Ku}]|$)`},U7e={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"};EZ.exports={MAX_LENGTH:1024*64,POSIX_REGEX_SOURCE:U7e,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:b7e.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?M7e:yZ}}});var bI=_(Pa=>{"use strict";var _7e=Be("path"),H7e=process.platform==="win32",{REGEX_BACKSLASH:j7e,REGEX_REMOVE_BACKSLASH:q7e,REGEX_SPECIAL_CHARS:G7e,REGEX_SPECIAL_CHARS_GLOBAL:Y7e}=SI();Pa.isObject=t=>t!==null&&typeof t=="object"&&!Array.isArray(t);Pa.hasRegexChars=t=>G7e.test(t);Pa.isRegexChar=t=>t.length===1&&Pa.hasRegexChars(t);Pa.escapeRegex=t=>t.replace(Y7e,"\\$1");Pa.toPosixSlashes=t=>t.replace(j7e,"/");Pa.removeBackslashes=t=>t.replace(q7e,e=>e==="\\"?"":e);Pa.supportsLookbehinds=()=>{let t=process.version.slice(1).split(".").map(Number);return t.length===3&&t[0]>=9||t[0]===8&&t[1]>=10};Pa.isWindows=t=>t&&typeof t.windows=="boolean"?t.windows:H7e===!0||_7e.sep==="\\";Pa.escapeLast=(t,e,r)=>{let o=t.lastIndexOf(e,r);return o===-1?t:t[o-1]==="\\"?Pa.escapeLast(t,e,o-1):`${t.slice(0,o)}\\${t.slice(o)}`};Pa.removePrefix=(t,e={})=>{let r=t;return r.startsWith("./")&&(r=r.slice(2),e.prefix="./"),r};Pa.wrapOutput=(t,e={},r={})=>{let o=r.contains?"":"^",a=r.contains?"":"$",n=`${o}(?:${t})${a}`;return e.negated===!0&&(n=`(?:^(?!${n}).*$)`),n}});var SZ=_((KQt,PZ)=>{"use strict";var CZ=bI(),{CHAR_ASTERISK:FN,CHAR_AT:W7e,CHAR_BACKWARD_SLASH:xI,CHAR_COMMA:K7e,CHAR_DOT:RN,CHAR_EXCLAMATION_MARK:TN,CHAR_FORWARD_SLASH:DZ,CHAR_LEFT_CURLY_BRACE:NN,CHAR_LEFT_PARENTHESES:LN,CHAR_LEFT_SQUARE_BRACKET:V7e,CHAR_PLUS:z7e,CHAR_QUESTION_MARK:wZ,CHAR_RIGHT_CURLY_BRACE:J7e,CHAR_RIGHT_PARENTHESES:IZ,CHAR_RIGHT_SQUARE_BRACKET:X7e}=SI(),BZ=t=>t===DZ||t===xI,vZ=t=>{t.isPrefix!==!0&&(t.depth=t.isGlobstar?1/0:1)},Z7e=(t,e)=>{let r=e||{},o=t.length-1,a=r.parts===!0||r.scanToEnd===!0,n=[],u=[],A=[],p=t,h=-1,C=0,I=0,v=!1,x=!1,E=!1,R=!1,L=!1,U=!1,z=!1,te=!1,le=!1,he=!1,Ae=0,ye,ae,Ie={value:"",depth:0,isGlob:!1},Fe=()=>h>=o,g=()=>p.charCodeAt(h+1),Ee=()=>(ye=ae,p.charCodeAt(++h));for(;h0&&(ce=p.slice(0,C),p=p.slice(C),I-=C),De&&E===!0&&I>0?(De=p.slice(0,I),ne=p.slice(I)):E===!0?(De="",ne=p):De=p,De&&De!==""&&De!=="/"&&De!==p&&BZ(De.charCodeAt(De.length-1))&&(De=De.slice(0,-1)),r.unescape===!0&&(ne&&(ne=CZ.removeBackslashes(ne)),De&&z===!0&&(De=CZ.removeBackslashes(De)));let ee={prefix:ce,input:t,start:C,base:De,glob:ne,isBrace:v,isBracket:x,isGlob:E,isExtglob:R,isGlobstar:L,negated:te,negatedExtglob:le};if(r.tokens===!0&&(ee.maxDepth=0,BZ(ae)||u.push(Ie),ee.tokens=u),r.parts===!0||r.tokens===!0){let we;for(let xe=0;xe{"use strict";var NP=SI(),nl=bI(),{MAX_LENGTH:LP,POSIX_REGEX_SOURCE:$7e,REGEX_NON_SPECIAL_CHARS:eYe,REGEX_SPECIAL_CHARS_BACKREF:tYe,REPLACEMENTS:bZ}=NP,rYe=(t,e)=>{if(typeof e.expandRange=="function")return e.expandRange(...t,e);t.sort();let r=`[${t.join("-")}]`;try{new RegExp(r)}catch{return t.map(a=>nl.escapeRegex(a)).join("..")}return r},Fy=(t,e)=>`Missing ${t}: "${e}" - use "\\\\${e}" to match literal characters`,ON=(t,e)=>{if(typeof t!="string")throw new TypeError("Expected a string");t=bZ[t]||t;let r={...e},o=typeof r.maxLength=="number"?Math.min(LP,r.maxLength):LP,a=t.length;if(a>o)throw new SyntaxError(`Input length: ${a}, exceeds maximum allowed length: ${o}`);let n={type:"bos",value:"",output:r.prepend||""},u=[n],A=r.capture?"":"?:",p=nl.isWindows(e),h=NP.globChars(p),C=NP.extglobChars(h),{DOT_LITERAL:I,PLUS_LITERAL:v,SLASH_LITERAL:x,ONE_CHAR:E,DOTS_SLASH:R,NO_DOT:L,NO_DOT_SLASH:U,NO_DOTS_SLASH:z,QMARK:te,QMARK_NO_DOT:le,STAR:he,START_ANCHOR:Ae}=h,ye=b=>`(${A}(?:(?!${Ae}${b.dot?R:I}).)*?)`,ae=r.dot?"":L,Ie=r.dot?te:le,Fe=r.bash===!0?ye(r):he;r.capture&&(Fe=`(${Fe})`),typeof r.noext=="boolean"&&(r.noextglob=r.noext);let g={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:u};t=nl.removePrefix(t,g),a=t.length;let Ee=[],De=[],ce=[],ne=n,ee,we=()=>g.index===a-1,xe=g.peek=(b=1)=>t[g.index+b],ht=g.advance=()=>t[++g.index]||"",H=()=>t.slice(g.index+1),lt=(b="",w=0)=>{g.consumed+=b,g.index+=w},Te=b=>{g.output+=b.output!=null?b.output:b.value,lt(b.value)},ke=()=>{let b=1;for(;xe()==="!"&&(xe(2)!=="("||xe(3)==="?");)ht(),g.start++,b++;return b%2===0?!1:(g.negated=!0,g.start++,!0)},be=b=>{g[b]++,ce.push(b)},_e=b=>{g[b]--,ce.pop()},Re=b=>{if(ne.type==="globstar"){let w=g.braces>0&&(b.type==="comma"||b.type==="brace"),S=b.extglob===!0||Ee.length&&(b.type==="pipe"||b.type==="paren");b.type!=="slash"&&b.type!=="paren"&&!w&&!S&&(g.output=g.output.slice(0,-ne.output.length),ne.type="star",ne.value="*",ne.output=Fe,g.output+=ne.output)}if(Ee.length&&b.type!=="paren"&&(Ee[Ee.length-1].inner+=b.value),(b.value||b.output)&&Te(b),ne&&ne.type==="text"&&b.type==="text"){ne.value+=b.value,ne.output=(ne.output||"")+b.value;return}b.prev=ne,u.push(b),ne=b},ze=(b,w)=>{let S={...C[w],conditions:1,inner:""};S.prev=ne,S.parens=g.parens,S.output=g.output;let y=(r.capture?"(":"")+S.open;be("parens"),Re({type:b,value:w,output:g.output?"":E}),Re({type:"paren",extglob:!0,value:ht(),output:y}),Ee.push(S)},He=b=>{let w=b.close+(r.capture?")":""),S;if(b.type==="negate"){let y=Fe;if(b.inner&&b.inner.length>1&&b.inner.includes("/")&&(y=ye(r)),(y!==Fe||we()||/^\)+$/.test(H()))&&(w=b.close=`)$))${y}`),b.inner.includes("*")&&(S=H())&&/^\.[^\\/.]+$/.test(S)){let F=ON(S,{...e,fastpaths:!1}).output;w=b.close=`)${F})${y})`}b.prev.type==="bos"&&(g.negatedExtglob=!0)}Re({type:"paren",extglob:!0,value:ee,output:w}),_e("parens")};if(r.fastpaths!==!1&&!/(^[*!]|[/()[\]{}"])/.test(t)){let b=!1,w=t.replace(tYe,(S,y,F,J,X,Z)=>J==="\\"?(b=!0,S):J==="?"?y?y+J+(X?te.repeat(X.length):""):Z===0?Ie+(X?te.repeat(X.length):""):te.repeat(F.length):J==="."?I.repeat(F.length):J==="*"?y?y+J+(X?Fe:""):Fe:y?S:`\\${S}`);return b===!0&&(r.unescape===!0?w=w.replace(/\\/g,""):w=w.replace(/\\+/g,S=>S.length%2===0?"\\\\":S?"\\":"")),w===t&&r.contains===!0?(g.output=t,g):(g.output=nl.wrapOutput(w,g,e),g)}for(;!we();){if(ee=ht(),ee==="\0")continue;if(ee==="\\"){let S=xe();if(S==="/"&&r.bash!==!0||S==="."||S===";")continue;if(!S){ee+="\\",Re({type:"text",value:ee});continue}let y=/^\\+/.exec(H()),F=0;if(y&&y[0].length>2&&(F=y[0].length,g.index+=F,F%2!==0&&(ee+="\\")),r.unescape===!0?ee=ht():ee+=ht(),g.brackets===0){Re({type:"text",value:ee});continue}}if(g.brackets>0&&(ee!=="]"||ne.value==="["||ne.value==="[^")){if(r.posix!==!1&&ee===":"){let S=ne.value.slice(1);if(S.includes("[")&&(ne.posix=!0,S.includes(":"))){let y=ne.value.lastIndexOf("["),F=ne.value.slice(0,y),J=ne.value.slice(y+2),X=$7e[J];if(X){ne.value=F+X,g.backtrack=!0,ht(),!n.output&&u.indexOf(ne)===1&&(n.output=E);continue}}}(ee==="["&&xe()!==":"||ee==="-"&&xe()==="]")&&(ee=`\\${ee}`),ee==="]"&&(ne.value==="["||ne.value==="[^")&&(ee=`\\${ee}`),r.posix===!0&&ee==="!"&&ne.value==="["&&(ee="^"),ne.value+=ee,Te({value:ee});continue}if(g.quotes===1&&ee!=='"'){ee=nl.escapeRegex(ee),ne.value+=ee,Te({value:ee});continue}if(ee==='"'){g.quotes=g.quotes===1?0:1,r.keepQuotes===!0&&Re({type:"text",value:ee});continue}if(ee==="("){be("parens"),Re({type:"paren",value:ee});continue}if(ee===")"){if(g.parens===0&&r.strictBrackets===!0)throw new SyntaxError(Fy("opening","("));let S=Ee[Ee.length-1];if(S&&g.parens===S.parens+1){He(Ee.pop());continue}Re({type:"paren",value:ee,output:g.parens?")":"\\)"}),_e("parens");continue}if(ee==="["){if(r.nobracket===!0||!H().includes("]")){if(r.nobracket!==!0&&r.strictBrackets===!0)throw new SyntaxError(Fy("closing","]"));ee=`\\${ee}`}else be("brackets");Re({type:"bracket",value:ee});continue}if(ee==="]"){if(r.nobracket===!0||ne&&ne.type==="bracket"&&ne.value.length===1){Re({type:"text",value:ee,output:`\\${ee}`});continue}if(g.brackets===0){if(r.strictBrackets===!0)throw new SyntaxError(Fy("opening","["));Re({type:"text",value:ee,output:`\\${ee}`});continue}_e("brackets");let S=ne.value.slice(1);if(ne.posix!==!0&&S[0]==="^"&&!S.includes("/")&&(ee=`/${ee}`),ne.value+=ee,Te({value:ee}),r.literalBrackets===!1||nl.hasRegexChars(S))continue;let y=nl.escapeRegex(ne.value);if(g.output=g.output.slice(0,-ne.value.length),r.literalBrackets===!0){g.output+=y,ne.value=y;continue}ne.value=`(${A}${y}|${ne.value})`,g.output+=ne.value;continue}if(ee==="{"&&r.nobrace!==!0){be("braces");let S={type:"brace",value:ee,output:"(",outputIndex:g.output.length,tokensIndex:g.tokens.length};De.push(S),Re(S);continue}if(ee==="}"){let S=De[De.length-1];if(r.nobrace===!0||!S){Re({type:"text",value:ee,output:ee});continue}let y=")";if(S.dots===!0){let F=u.slice(),J=[];for(let X=F.length-1;X>=0&&(u.pop(),F[X].type!=="brace");X--)F[X].type!=="dots"&&J.unshift(F[X].value);y=rYe(J,r),g.backtrack=!0}if(S.comma!==!0&&S.dots!==!0){let F=g.output.slice(0,S.outputIndex),J=g.tokens.slice(S.tokensIndex);S.value=S.output="\\{",ee=y="\\}",g.output=F;for(let X of J)g.output+=X.output||X.value}Re({type:"brace",value:ee,output:y}),_e("braces"),De.pop();continue}if(ee==="|"){Ee.length>0&&Ee[Ee.length-1].conditions++,Re({type:"text",value:ee});continue}if(ee===","){let S=ee,y=De[De.length-1];y&&ce[ce.length-1]==="braces"&&(y.comma=!0,S="|"),Re({type:"comma",value:ee,output:S});continue}if(ee==="/"){if(ne.type==="dot"&&g.index===g.start+1){g.start=g.index+1,g.consumed="",g.output="",u.pop(),ne=n;continue}Re({type:"slash",value:ee,output:x});continue}if(ee==="."){if(g.braces>0&&ne.type==="dot"){ne.value==="."&&(ne.output=I);let S=De[De.length-1];ne.type="dots",ne.output+=ee,ne.value+=ee,S.dots=!0;continue}if(g.braces+g.parens===0&&ne.type!=="bos"&&ne.type!=="slash"){Re({type:"text",value:ee,output:I});continue}Re({type:"dot",value:ee,output:I});continue}if(ee==="?"){if(!(ne&&ne.value==="(")&&r.noextglob!==!0&&xe()==="("&&xe(2)!=="?"){ze("qmark",ee);continue}if(ne&&ne.type==="paren"){let y=xe(),F=ee;if(y==="<"&&!nl.supportsLookbehinds())throw new Error("Node.js v10 or higher is required for regex lookbehinds");(ne.value==="("&&!/[!=<:]/.test(y)||y==="<"&&!/<([!=]|\w+>)/.test(H()))&&(F=`\\${ee}`),Re({type:"text",value:ee,output:F});continue}if(r.dot!==!0&&(ne.type==="slash"||ne.type==="bos")){Re({type:"qmark",value:ee,output:le});continue}Re({type:"qmark",value:ee,output:te});continue}if(ee==="!"){if(r.noextglob!==!0&&xe()==="("&&(xe(2)!=="?"||!/[!=<:]/.test(xe(3)))){ze("negate",ee);continue}if(r.nonegate!==!0&&g.index===0){ke();continue}}if(ee==="+"){if(r.noextglob!==!0&&xe()==="("&&xe(2)!=="?"){ze("plus",ee);continue}if(ne&&ne.value==="("||r.regex===!1){Re({type:"plus",value:ee,output:v});continue}if(ne&&(ne.type==="bracket"||ne.type==="paren"||ne.type==="brace")||g.parens>0){Re({type:"plus",value:ee});continue}Re({type:"plus",value:v});continue}if(ee==="@"){if(r.noextglob!==!0&&xe()==="("&&xe(2)!=="?"){Re({type:"at",extglob:!0,value:ee,output:""});continue}Re({type:"text",value:ee});continue}if(ee!=="*"){(ee==="$"||ee==="^")&&(ee=`\\${ee}`);let S=eYe.exec(H());S&&(ee+=S[0],g.index+=S[0].length),Re({type:"text",value:ee});continue}if(ne&&(ne.type==="globstar"||ne.star===!0)){ne.type="star",ne.star=!0,ne.value+=ee,ne.output=Fe,g.backtrack=!0,g.globstar=!0,lt(ee);continue}let b=H();if(r.noextglob!==!0&&/^\([^?]/.test(b)){ze("star",ee);continue}if(ne.type==="star"){if(r.noglobstar===!0){lt(ee);continue}let S=ne.prev,y=S.prev,F=S.type==="slash"||S.type==="bos",J=y&&(y.type==="star"||y.type==="globstar");if(r.bash===!0&&(!F||b[0]&&b[0]!=="/")){Re({type:"star",value:ee,output:""});continue}let X=g.braces>0&&(S.type==="comma"||S.type==="brace"),Z=Ee.length&&(S.type==="pipe"||S.type==="paren");if(!F&&S.type!=="paren"&&!X&&!Z){Re({type:"star",value:ee,output:""});continue}for(;b.slice(0,3)==="/**";){let ie=t[g.index+4];if(ie&&ie!=="/")break;b=b.slice(3),lt("/**",3)}if(S.type==="bos"&&we()){ne.type="globstar",ne.value+=ee,ne.output=ye(r),g.output=ne.output,g.globstar=!0,lt(ee);continue}if(S.type==="slash"&&S.prev.type!=="bos"&&!J&&we()){g.output=g.output.slice(0,-(S.output+ne.output).length),S.output=`(?:${S.output}`,ne.type="globstar",ne.output=ye(r)+(r.strictSlashes?")":"|$)"),ne.value+=ee,g.globstar=!0,g.output+=S.output+ne.output,lt(ee);continue}if(S.type==="slash"&&S.prev.type!=="bos"&&b[0]==="/"){let ie=b[1]!==void 0?"|$":"";g.output=g.output.slice(0,-(S.output+ne.output).length),S.output=`(?:${S.output}`,ne.type="globstar",ne.output=`${ye(r)}${x}|${x}${ie})`,ne.value+=ee,g.output+=S.output+ne.output,g.globstar=!0,lt(ee+ht()),Re({type:"slash",value:"/",output:""});continue}if(S.type==="bos"&&b[0]==="/"){ne.type="globstar",ne.value+=ee,ne.output=`(?:^|${x}|${ye(r)}${x})`,g.output=ne.output,g.globstar=!0,lt(ee+ht()),Re({type:"slash",value:"/",output:""});continue}g.output=g.output.slice(0,-ne.output.length),ne.type="globstar",ne.output=ye(r),ne.value+=ee,g.output+=ne.output,g.globstar=!0,lt(ee);continue}let w={type:"star",value:ee,output:Fe};if(r.bash===!0){w.output=".*?",(ne.type==="bos"||ne.type==="slash")&&(w.output=ae+w.output),Re(w);continue}if(ne&&(ne.type==="bracket"||ne.type==="paren")&&r.regex===!0){w.output=ee,Re(w);continue}(g.index===g.start||ne.type==="slash"||ne.type==="dot")&&(ne.type==="dot"?(g.output+=U,ne.output+=U):r.dot===!0?(g.output+=z,ne.output+=z):(g.output+=ae,ne.output+=ae),xe()!=="*"&&(g.output+=E,ne.output+=E)),Re(w)}for(;g.brackets>0;){if(r.strictBrackets===!0)throw new SyntaxError(Fy("closing","]"));g.output=nl.escapeLast(g.output,"["),_e("brackets")}for(;g.parens>0;){if(r.strictBrackets===!0)throw new SyntaxError(Fy("closing",")"));g.output=nl.escapeLast(g.output,"("),_e("parens")}for(;g.braces>0;){if(r.strictBrackets===!0)throw new SyntaxError(Fy("closing","}"));g.output=nl.escapeLast(g.output,"{"),_e("braces")}if(r.strictSlashes!==!0&&(ne.type==="star"||ne.type==="bracket")&&Re({type:"maybe_slash",value:"",output:`${x}?`}),g.backtrack===!0){g.output="";for(let b of g.tokens)g.output+=b.output!=null?b.output:b.value,b.suffix&&(g.output+=b.suffix)}return g};ON.fastpaths=(t,e)=>{let r={...e},o=typeof r.maxLength=="number"?Math.min(LP,r.maxLength):LP,a=t.length;if(a>o)throw new SyntaxError(`Input length: ${a}, exceeds maximum allowed length: ${o}`);t=bZ[t]||t;let n=nl.isWindows(e),{DOT_LITERAL:u,SLASH_LITERAL:A,ONE_CHAR:p,DOTS_SLASH:h,NO_DOT:C,NO_DOTS:I,NO_DOTS_SLASH:v,STAR:x,START_ANCHOR:E}=NP.globChars(n),R=r.dot?I:C,L=r.dot?v:C,U=r.capture?"":"?:",z={negated:!1,prefix:""},te=r.bash===!0?".*?":x;r.capture&&(te=`(${te})`);let le=ae=>ae.noglobstar===!0?te:`(${U}(?:(?!${E}${ae.dot?h:u}).)*?)`,he=ae=>{switch(ae){case"*":return`${R}${p}${te}`;case".*":return`${u}${p}${te}`;case"*.*":return`${R}${te}${u}${p}${te}`;case"*/*":return`${R}${te}${A}${p}${L}${te}`;case"**":return R+le(r);case"**/*":return`(?:${R}${le(r)}${A})?${L}${p}${te}`;case"**/*.*":return`(?:${R}${le(r)}${A})?${L}${te}${u}${p}${te}`;case"**/.*":return`(?:${R}${le(r)}${A})?${u}${p}${te}`;default:{let Ie=/^(.*?)\.(\w+)$/.exec(ae);if(!Ie)return;let Fe=he(Ie[1]);return Fe?Fe+u+Ie[2]:void 0}}},Ae=nl.removePrefix(t,z),ye=he(Ae);return ye&&r.strictSlashes!==!0&&(ye+=`${A}?`),ye};xZ.exports=ON});var FZ=_((zQt,QZ)=>{"use strict";var nYe=Be("path"),iYe=SZ(),MN=kZ(),UN=bI(),sYe=SI(),oYe=t=>t&&typeof t=="object"&&!Array.isArray(t),Mi=(t,e,r=!1)=>{if(Array.isArray(t)){let C=t.map(v=>Mi(v,e,r));return v=>{for(let x of C){let E=x(v);if(E)return E}return!1}}let o=oYe(t)&&t.tokens&&t.input;if(t===""||typeof t!="string"&&!o)throw new TypeError("Expected pattern to be a non-empty string");let a=e||{},n=UN.isWindows(e),u=o?Mi.compileRe(t,e):Mi.makeRe(t,e,!1,!0),A=u.state;delete u.state;let p=()=>!1;if(a.ignore){let C={...e,ignore:null,onMatch:null,onResult:null};p=Mi(a.ignore,C,r)}let h=(C,I=!1)=>{let{isMatch:v,match:x,output:E}=Mi.test(C,u,e,{glob:t,posix:n}),R={glob:t,state:A,regex:u,posix:n,input:C,output:E,match:x,isMatch:v};return typeof a.onResult=="function"&&a.onResult(R),v===!1?(R.isMatch=!1,I?R:!1):p(C)?(typeof a.onIgnore=="function"&&a.onIgnore(R),R.isMatch=!1,I?R:!1):(typeof a.onMatch=="function"&&a.onMatch(R),I?R:!0)};return r&&(h.state=A),h};Mi.test=(t,e,r,{glob:o,posix:a}={})=>{if(typeof t!="string")throw new TypeError("Expected input to be a string");if(t==="")return{isMatch:!1,output:""};let n=r||{},u=n.format||(a?UN.toPosixSlashes:null),A=t===o,p=A&&u?u(t):t;return A===!1&&(p=u?u(t):t,A=p===o),(A===!1||n.capture===!0)&&(n.matchBase===!0||n.basename===!0?A=Mi.matchBase(t,e,r,a):A=e.exec(p)),{isMatch:Boolean(A),match:A,output:p}};Mi.matchBase=(t,e,r,o=UN.isWindows(r))=>(e instanceof RegExp?e:Mi.makeRe(e,r)).test(nYe.basename(t));Mi.isMatch=(t,e,r)=>Mi(e,r)(t);Mi.parse=(t,e)=>Array.isArray(t)?t.map(r=>Mi.parse(r,e)):MN(t,{...e,fastpaths:!1});Mi.scan=(t,e)=>iYe(t,e);Mi.compileRe=(t,e,r=!1,o=!1)=>{if(r===!0)return t.output;let a=e||{},n=a.contains?"":"^",u=a.contains?"":"$",A=`${n}(?:${t.output})${u}`;t&&t.negated===!0&&(A=`^(?!${A}).*$`);let p=Mi.toRegex(A,e);return o===!0&&(p.state=t),p};Mi.makeRe=(t,e={},r=!1,o=!1)=>{if(!t||typeof t!="string")throw new TypeError("Expected a non-empty string");let a={negated:!1,fastpaths:!0};return e.fastpaths!==!1&&(t[0]==="."||t[0]==="*")&&(a.output=MN.fastpaths(t,e)),a.output||(a=MN(t,e)),Mi.compileRe(a,e,r,o)};Mi.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/$^/}};Mi.constants=sYe;QZ.exports=Mi});var TZ=_((JQt,RZ)=>{"use strict";RZ.exports=FZ()});var Zo=_((XQt,MZ)=>{"use strict";var LZ=Be("util"),OZ=hZ(),Vu=TZ(),_N=bI(),NZ=t=>t===""||t==="./",yi=(t,e,r)=>{e=[].concat(e),t=[].concat(t);let o=new Set,a=new Set,n=new Set,u=0,A=C=>{n.add(C.output),r&&r.onResult&&r.onResult(C)};for(let C=0;C!o.has(C));if(r&&h.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(C=>C.replace(/\\/g,"")):e}return h};yi.match=yi;yi.matcher=(t,e)=>Vu(t,e);yi.isMatch=(t,e,r)=>Vu(e,r)(t);yi.any=yi.isMatch;yi.not=(t,e,r={})=>{e=[].concat(e).map(String);let o=new Set,a=[],n=A=>{r.onResult&&r.onResult(A),a.push(A.output)},u=new Set(yi(t,e,{...r,onResult:n}));for(let A of a)u.has(A)||o.add(A);return[...o]};yi.contains=(t,e,r)=>{if(typeof t!="string")throw new TypeError(`Expected a string: "${LZ.inspect(t)}"`);if(Array.isArray(e))return e.some(o=>yi.contains(t,o,r));if(typeof e=="string"){if(NZ(t)||NZ(e))return!1;if(t.includes(e)||t.startsWith("./")&&t.slice(2).includes(e))return!0}return yi.isMatch(t,e,{...r,contains:!0})};yi.matchKeys=(t,e,r)=>{if(!_N.isObject(t))throw new TypeError("Expected the first argument to be an object");let o=yi(Object.keys(t),e,r),a={};for(let n of o)a[n]=t[n];return a};yi.some=(t,e,r)=>{let o=[].concat(t);for(let a of[].concat(e)){let n=Vu(String(a),r);if(o.some(u=>n(u)))return!0}return!1};yi.every=(t,e,r)=>{let o=[].concat(t);for(let a of[].concat(e)){let n=Vu(String(a),r);if(!o.every(u=>n(u)))return!1}return!0};yi.all=(t,e,r)=>{if(typeof t!="string")throw new TypeError(`Expected a string: "${LZ.inspect(t)}"`);return[].concat(e).every(o=>Vu(o,r)(t))};yi.capture=(t,e,r)=>{let o=_N.isWindows(r),n=Vu.makeRe(String(t),{...r,capture:!0}).exec(o?_N.toPosixSlashes(e):e);if(n)return n.slice(1).map(u=>u===void 0?"":u)};yi.makeRe=(...t)=>Vu.makeRe(...t);yi.scan=(...t)=>Vu.scan(...t);yi.parse=(t,e)=>{let r=[];for(let o of[].concat(t||[]))for(let a of OZ(String(o),e))r.push(Vu.parse(a,e));return r};yi.braces=(t,e)=>{if(typeof t!="string")throw new TypeError("Expected a string");return e&&e.nobrace===!0||!/\{.*\}/.test(t)?[t]:OZ(t,e)};yi.braceExpand=(t,e)=>{if(typeof t!="string")throw new TypeError("Expected a string");return yi.braces(t,{...e,expand:!0})};MZ.exports=yi});var _Z=_((ZQt,UZ)=>{"use strict";UZ.exports=({onlyFirst:t=!1}={})=>{let e=["[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[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 OP=_(($Qt,HZ)=>{"use strict";var aYe=_Z();HZ.exports=t=>typeof t=="string"?t.replace(aYe(),""):t});var qZ=_((eFt,jZ)=>{function lYe(){this.__data__=[],this.size=0}jZ.exports=lYe});var Ry=_((tFt,GZ)=>{function cYe(t,e){return t===e||t!==t&&e!==e}GZ.exports=cYe});var kI=_((rFt,YZ)=>{var uYe=Ry();function AYe(t,e){for(var r=t.length;r--;)if(uYe(t[r][0],e))return r;return-1}YZ.exports=AYe});var KZ=_((nFt,WZ)=>{var fYe=kI(),pYe=Array.prototype,hYe=pYe.splice;function gYe(t){var e=this.__data__,r=fYe(e,t);if(r<0)return!1;var o=e.length-1;return r==o?e.pop():hYe.call(e,r,1),--this.size,!0}WZ.exports=gYe});var zZ=_((iFt,VZ)=>{var dYe=kI();function mYe(t){var e=this.__data__,r=dYe(e,t);return r<0?void 0:e[r][1]}VZ.exports=mYe});var XZ=_((sFt,JZ)=>{var yYe=kI();function EYe(t){return yYe(this.__data__,t)>-1}JZ.exports=EYe});var $Z=_((oFt,ZZ)=>{var CYe=kI();function wYe(t,e){var r=this.__data__,o=CYe(r,t);return o<0?(++this.size,r.push([t,e])):r[o][1]=e,this}ZZ.exports=wYe});var QI=_((aFt,e$)=>{var IYe=qZ(),BYe=KZ(),vYe=zZ(),DYe=XZ(),PYe=$Z();function Ty(t){var e=-1,r=t==null?0:t.length;for(this.clear();++e{var SYe=QI();function bYe(){this.__data__=new SYe,this.size=0}t$.exports=bYe});var i$=_((cFt,n$)=>{function xYe(t){var e=this.__data__,r=e.delete(t);return this.size=e.size,r}n$.exports=xYe});var o$=_((uFt,s$)=>{function kYe(t){return this.__data__.get(t)}s$.exports=kYe});var l$=_((AFt,a$)=>{function QYe(t){return this.__data__.has(t)}a$.exports=QYe});var HN=_((fFt,c$)=>{var FYe=typeof global=="object"&&global&&global.Object===Object&&global;c$.exports=FYe});var _l=_((pFt,u$)=>{var RYe=HN(),TYe=typeof self=="object"&&self&&self.Object===Object&&self,NYe=RYe||TYe||Function("return this")();u$.exports=NYe});var Ad=_((hFt,A$)=>{var LYe=_l(),OYe=LYe.Symbol;A$.exports=OYe});var g$=_((gFt,h$)=>{var f$=Ad(),p$=Object.prototype,MYe=p$.hasOwnProperty,UYe=p$.toString,FI=f$?f$.toStringTag:void 0;function _Ye(t){var e=MYe.call(t,FI),r=t[FI];try{t[FI]=void 0;var o=!0}catch{}var a=UYe.call(t);return o&&(e?t[FI]=r:delete t[FI]),a}h$.exports=_Ye});var m$=_((dFt,d$)=>{var HYe=Object.prototype,jYe=HYe.toString;function qYe(t){return jYe.call(t)}d$.exports=qYe});var fd=_((mFt,C$)=>{var y$=Ad(),GYe=g$(),YYe=m$(),WYe="[object Null]",KYe="[object Undefined]",E$=y$?y$.toStringTag:void 0;function VYe(t){return t==null?t===void 0?KYe:WYe:E$&&E$ in Object(t)?GYe(t):YYe(t)}C$.exports=VYe});var il=_((yFt,w$)=>{function zYe(t){var e=typeof t;return t!=null&&(e=="object"||e=="function")}w$.exports=zYe});var MP=_((EFt,I$)=>{var JYe=fd(),XYe=il(),ZYe="[object AsyncFunction]",$Ye="[object Function]",eWe="[object GeneratorFunction]",tWe="[object Proxy]";function rWe(t){if(!XYe(t))return!1;var e=JYe(t);return e==$Ye||e==eWe||e==ZYe||e==tWe}I$.exports=rWe});var v$=_((CFt,B$)=>{var nWe=_l(),iWe=nWe["__core-js_shared__"];B$.exports=iWe});var S$=_((wFt,P$)=>{var jN=v$(),D$=function(){var t=/[^.]+$/.exec(jN&&jN.keys&&jN.keys.IE_PROTO||"");return t?"Symbol(src)_1."+t:""}();function sWe(t){return!!D$&&D$ in t}P$.exports=sWe});var qN=_((IFt,b$)=>{var oWe=Function.prototype,aWe=oWe.toString;function lWe(t){if(t!=null){try{return aWe.call(t)}catch{}try{return t+""}catch{}}return""}b$.exports=lWe});var k$=_((BFt,x$)=>{var cWe=MP(),uWe=S$(),AWe=il(),fWe=qN(),pWe=/[\\^$.*+?()[\]{}|]/g,hWe=/^\[object .+?Constructor\]$/,gWe=Function.prototype,dWe=Object.prototype,mWe=gWe.toString,yWe=dWe.hasOwnProperty,EWe=RegExp("^"+mWe.call(yWe).replace(pWe,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function CWe(t){if(!AWe(t)||uWe(t))return!1;var e=cWe(t)?EWe:hWe;return e.test(fWe(t))}x$.exports=CWe});var F$=_((vFt,Q$)=>{function wWe(t,e){return t?.[e]}Q$.exports=wWe});var Vp=_((DFt,R$)=>{var IWe=k$(),BWe=F$();function vWe(t,e){var r=BWe(t,e);return IWe(r)?r:void 0}R$.exports=vWe});var UP=_((PFt,T$)=>{var DWe=Vp(),PWe=_l(),SWe=DWe(PWe,"Map");T$.exports=SWe});var RI=_((SFt,N$)=>{var bWe=Vp(),xWe=bWe(Object,"create");N$.exports=xWe});var M$=_((bFt,O$)=>{var L$=RI();function kWe(){this.__data__=L$?L$(null):{},this.size=0}O$.exports=kWe});var _$=_((xFt,U$)=>{function QWe(t){var e=this.has(t)&&delete this.__data__[t];return this.size-=e?1:0,e}U$.exports=QWe});var j$=_((kFt,H$)=>{var FWe=RI(),RWe="__lodash_hash_undefined__",TWe=Object.prototype,NWe=TWe.hasOwnProperty;function LWe(t){var e=this.__data__;if(FWe){var r=e[t];return r===RWe?void 0:r}return NWe.call(e,t)?e[t]:void 0}H$.exports=LWe});var G$=_((QFt,q$)=>{var OWe=RI(),MWe=Object.prototype,UWe=MWe.hasOwnProperty;function _We(t){var e=this.__data__;return OWe?e[t]!==void 0:UWe.call(e,t)}q$.exports=_We});var W$=_((FFt,Y$)=>{var HWe=RI(),jWe="__lodash_hash_undefined__";function qWe(t,e){var r=this.__data__;return this.size+=this.has(t)?0:1,r[t]=HWe&&e===void 0?jWe:e,this}Y$.exports=qWe});var V$=_((RFt,K$)=>{var GWe=M$(),YWe=_$(),WWe=j$(),KWe=G$(),VWe=W$();function Ny(t){var e=-1,r=t==null?0:t.length;for(this.clear();++e{var z$=V$(),zWe=QI(),JWe=UP();function XWe(){this.size=0,this.__data__={hash:new z$,map:new(JWe||zWe),string:new z$}}J$.exports=XWe});var $$=_((NFt,Z$)=>{function ZWe(t){var e=typeof t;return e=="string"||e=="number"||e=="symbol"||e=="boolean"?t!=="__proto__":t===null}Z$.exports=ZWe});var TI=_((LFt,eee)=>{var $We=$$();function eKe(t,e){var r=t.__data__;return $We(e)?r[typeof e=="string"?"string":"hash"]:r.map}eee.exports=eKe});var ree=_((OFt,tee)=>{var tKe=TI();function rKe(t){var e=tKe(this,t).delete(t);return this.size-=e?1:0,e}tee.exports=rKe});var iee=_((MFt,nee)=>{var nKe=TI();function iKe(t){return nKe(this,t).get(t)}nee.exports=iKe});var oee=_((UFt,see)=>{var sKe=TI();function oKe(t){return sKe(this,t).has(t)}see.exports=oKe});var lee=_((_Ft,aee)=>{var aKe=TI();function lKe(t,e){var r=aKe(this,t),o=r.size;return r.set(t,e),this.size+=r.size==o?0:1,this}aee.exports=lKe});var _P=_((HFt,cee)=>{var cKe=X$(),uKe=ree(),AKe=iee(),fKe=oee(),pKe=lee();function Ly(t){var e=-1,r=t==null?0:t.length;for(this.clear();++e{var hKe=QI(),gKe=UP(),dKe=_P(),mKe=200;function yKe(t,e){var r=this.__data__;if(r instanceof hKe){var o=r.__data__;if(!gKe||o.length{var EKe=QI(),CKe=r$(),wKe=i$(),IKe=o$(),BKe=l$(),vKe=Aee();function Oy(t){var e=this.__data__=new EKe(t);this.size=e.size}Oy.prototype.clear=CKe;Oy.prototype.delete=wKe;Oy.prototype.get=IKe;Oy.prototype.has=BKe;Oy.prototype.set=vKe;fee.exports=Oy});var hee=_((GFt,pee)=>{var DKe="__lodash_hash_undefined__";function PKe(t){return this.__data__.set(t,DKe),this}pee.exports=PKe});var dee=_((YFt,gee)=>{function SKe(t){return this.__data__.has(t)}gee.exports=SKe});var yee=_((WFt,mee)=>{var bKe=_P(),xKe=hee(),kKe=dee();function jP(t){var e=-1,r=t==null?0:t.length;for(this.__data__=new bKe;++e{function QKe(t,e){for(var r=-1,o=t==null?0:t.length;++r{function FKe(t,e){return t.has(e)}wee.exports=FKe});var GN=_((zFt,Bee)=>{var RKe=yee(),TKe=Cee(),NKe=Iee(),LKe=1,OKe=2;function MKe(t,e,r,o,a,n){var u=r&LKe,A=t.length,p=e.length;if(A!=p&&!(u&&p>A))return!1;var h=n.get(t),C=n.get(e);if(h&&C)return h==e&&C==t;var I=-1,v=!0,x=r&OKe?new RKe:void 0;for(n.set(t,e),n.set(e,t);++I{var UKe=_l(),_Ke=UKe.Uint8Array;vee.exports=_Ke});var Pee=_((XFt,Dee)=>{function HKe(t){var e=-1,r=Array(t.size);return t.forEach(function(o,a){r[++e]=[a,o]}),r}Dee.exports=HKe});var bee=_((ZFt,See)=>{function jKe(t){var e=-1,r=Array(t.size);return t.forEach(function(o){r[++e]=o}),r}See.exports=jKe});var Ree=_(($Ft,Fee)=>{var xee=Ad(),kee=YN(),qKe=Ry(),GKe=GN(),YKe=Pee(),WKe=bee(),KKe=1,VKe=2,zKe="[object Boolean]",JKe="[object Date]",XKe="[object Error]",ZKe="[object Map]",$Ke="[object Number]",eVe="[object RegExp]",tVe="[object Set]",rVe="[object String]",nVe="[object Symbol]",iVe="[object ArrayBuffer]",sVe="[object DataView]",Qee=xee?xee.prototype:void 0,WN=Qee?Qee.valueOf:void 0;function oVe(t,e,r,o,a,n,u){switch(r){case sVe:if(t.byteLength!=e.byteLength||t.byteOffset!=e.byteOffset)return!1;t=t.buffer,e=e.buffer;case iVe:return!(t.byteLength!=e.byteLength||!n(new kee(t),new kee(e)));case zKe:case JKe:case $Ke:return qKe(+t,+e);case XKe:return t.name==e.name&&t.message==e.message;case eVe:case rVe:return t==e+"";case ZKe:var A=YKe;case tVe:var p=o&KKe;if(A||(A=WKe),t.size!=e.size&&!p)return!1;var h=u.get(t);if(h)return h==e;o|=VKe,u.set(t,e);var C=GKe(A(t),A(e),o,a,n,u);return u.delete(t),C;case nVe:if(WN)return WN.call(t)==WN.call(e)}return!1}Fee.exports=oVe});var qP=_((eRt,Tee)=>{function aVe(t,e){for(var r=-1,o=e.length,a=t.length;++r{var lVe=Array.isArray;Nee.exports=lVe});var KN=_((rRt,Lee)=>{var cVe=qP(),uVe=Hl();function AVe(t,e,r){var o=e(t);return uVe(t)?o:cVe(o,r(t))}Lee.exports=AVe});var Mee=_((nRt,Oee)=>{function fVe(t,e){for(var r=-1,o=t==null?0:t.length,a=0,n=[];++r{function pVe(){return[]}Uee.exports=pVe});var GP=_((sRt,Hee)=>{var hVe=Mee(),gVe=VN(),dVe=Object.prototype,mVe=dVe.propertyIsEnumerable,_ee=Object.getOwnPropertySymbols,yVe=_ee?function(t){return t==null?[]:(t=Object(t),hVe(_ee(t),function(e){return mVe.call(t,e)}))}:gVe;Hee.exports=yVe});var qee=_((oRt,jee)=>{function EVe(t,e){for(var r=-1,o=Array(t);++r{function CVe(t){return t!=null&&typeof t=="object"}Gee.exports=CVe});var Wee=_((lRt,Yee)=>{var wVe=fd(),IVe=zu(),BVe="[object Arguments]";function vVe(t){return IVe(t)&&wVe(t)==BVe}Yee.exports=vVe});var NI=_((cRt,zee)=>{var Kee=Wee(),DVe=zu(),Vee=Object.prototype,PVe=Vee.hasOwnProperty,SVe=Vee.propertyIsEnumerable,bVe=Kee(function(){return arguments}())?Kee:function(t){return DVe(t)&&PVe.call(t,"callee")&&!SVe.call(t,"callee")};zee.exports=bVe});var Xee=_((uRt,Jee)=>{function xVe(){return!1}Jee.exports=xVe});var OI=_((LI,My)=>{var kVe=_l(),QVe=Xee(),ete=typeof LI=="object"&&LI&&!LI.nodeType&&LI,Zee=ete&&typeof My=="object"&&My&&!My.nodeType&&My,FVe=Zee&&Zee.exports===ete,$ee=FVe?kVe.Buffer:void 0,RVe=$ee?$ee.isBuffer:void 0,TVe=RVe||QVe;My.exports=TVe});var MI=_((ARt,tte)=>{var NVe=9007199254740991,LVe=/^(?:0|[1-9]\d*)$/;function OVe(t,e){var r=typeof t;return e=e??NVe,!!e&&(r=="number"||r!="symbol"&&LVe.test(t))&&t>-1&&t%1==0&&t{var MVe=9007199254740991;function UVe(t){return typeof t=="number"&&t>-1&&t%1==0&&t<=MVe}rte.exports=UVe});var ite=_((pRt,nte)=>{var _Ve=fd(),HVe=YP(),jVe=zu(),qVe="[object Arguments]",GVe="[object Array]",YVe="[object Boolean]",WVe="[object Date]",KVe="[object Error]",VVe="[object Function]",zVe="[object Map]",JVe="[object Number]",XVe="[object Object]",ZVe="[object RegExp]",$Ve="[object Set]",eze="[object String]",tze="[object WeakMap]",rze="[object ArrayBuffer]",nze="[object DataView]",ize="[object Float32Array]",sze="[object Float64Array]",oze="[object Int8Array]",aze="[object Int16Array]",lze="[object Int32Array]",cze="[object Uint8Array]",uze="[object Uint8ClampedArray]",Aze="[object Uint16Array]",fze="[object Uint32Array]",ui={};ui[ize]=ui[sze]=ui[oze]=ui[aze]=ui[lze]=ui[cze]=ui[uze]=ui[Aze]=ui[fze]=!0;ui[qVe]=ui[GVe]=ui[rze]=ui[YVe]=ui[nze]=ui[WVe]=ui[KVe]=ui[VVe]=ui[zVe]=ui[JVe]=ui[XVe]=ui[ZVe]=ui[$Ve]=ui[eze]=ui[tze]=!1;function pze(t){return jVe(t)&&HVe(t.length)&&!!ui[_Ve(t)]}nte.exports=pze});var WP=_((hRt,ste)=>{function hze(t){return function(e){return t(e)}}ste.exports=hze});var KP=_((UI,Uy)=>{var gze=HN(),ote=typeof UI=="object"&&UI&&!UI.nodeType&&UI,_I=ote&&typeof Uy=="object"&&Uy&&!Uy.nodeType&&Uy,dze=_I&&_I.exports===ote,zN=dze&&gze.process,mze=function(){try{var t=_I&&_I.require&&_I.require("util").types;return t||zN&&zN.binding&&zN.binding("util")}catch{}}();Uy.exports=mze});var VP=_((gRt,cte)=>{var yze=ite(),Eze=WP(),ate=KP(),lte=ate&&ate.isTypedArray,Cze=lte?Eze(lte):yze;cte.exports=Cze});var JN=_((dRt,ute)=>{var wze=qee(),Ize=NI(),Bze=Hl(),vze=OI(),Dze=MI(),Pze=VP(),Sze=Object.prototype,bze=Sze.hasOwnProperty;function xze(t,e){var r=Bze(t),o=!r&&Ize(t),a=!r&&!o&&vze(t),n=!r&&!o&&!a&&Pze(t),u=r||o||a||n,A=u?wze(t.length,String):[],p=A.length;for(var h in t)(e||bze.call(t,h))&&!(u&&(h=="length"||a&&(h=="offset"||h=="parent")||n&&(h=="buffer"||h=="byteLength"||h=="byteOffset")||Dze(h,p)))&&A.push(h);return A}ute.exports=xze});var zP=_((mRt,Ate)=>{var kze=Object.prototype;function Qze(t){var e=t&&t.constructor,r=typeof e=="function"&&e.prototype||kze;return t===r}Ate.exports=Qze});var XN=_((yRt,fte)=>{function Fze(t,e){return function(r){return t(e(r))}}fte.exports=Fze});var hte=_((ERt,pte)=>{var Rze=XN(),Tze=Rze(Object.keys,Object);pte.exports=Tze});var dte=_((CRt,gte)=>{var Nze=zP(),Lze=hte(),Oze=Object.prototype,Mze=Oze.hasOwnProperty;function Uze(t){if(!Nze(t))return Lze(t);var e=[];for(var r in Object(t))Mze.call(t,r)&&r!="constructor"&&e.push(r);return e}gte.exports=Uze});var HI=_((wRt,mte)=>{var _ze=MP(),Hze=YP();function jze(t){return t!=null&&Hze(t.length)&&!_ze(t)}mte.exports=jze});var JP=_((IRt,yte)=>{var qze=JN(),Gze=dte(),Yze=HI();function Wze(t){return Yze(t)?qze(t):Gze(t)}yte.exports=Wze});var ZN=_((BRt,Ete)=>{var Kze=KN(),Vze=GP(),zze=JP();function Jze(t){return Kze(t,zze,Vze)}Ete.exports=Jze});var Ite=_((vRt,wte)=>{var Cte=ZN(),Xze=1,Zze=Object.prototype,$ze=Zze.hasOwnProperty;function eJe(t,e,r,o,a,n){var u=r&Xze,A=Cte(t),p=A.length,h=Cte(e),C=h.length;if(p!=C&&!u)return!1;for(var I=p;I--;){var v=A[I];if(!(u?v in e:$ze.call(e,v)))return!1}var x=n.get(t),E=n.get(e);if(x&&E)return x==e&&E==t;var R=!0;n.set(t,e),n.set(e,t);for(var L=u;++I{var tJe=Vp(),rJe=_l(),nJe=tJe(rJe,"DataView");Bte.exports=nJe});var Pte=_((PRt,Dte)=>{var iJe=Vp(),sJe=_l(),oJe=iJe(sJe,"Promise");Dte.exports=oJe});var bte=_((SRt,Ste)=>{var aJe=Vp(),lJe=_l(),cJe=aJe(lJe,"Set");Ste.exports=cJe});var kte=_((bRt,xte)=>{var uJe=Vp(),AJe=_l(),fJe=uJe(AJe,"WeakMap");xte.exports=fJe});var jI=_((xRt,Ote)=>{var $N=vte(),eL=UP(),tL=Pte(),rL=bte(),nL=kte(),Lte=fd(),_y=qN(),Qte="[object Map]",pJe="[object Object]",Fte="[object Promise]",Rte="[object Set]",Tte="[object WeakMap]",Nte="[object DataView]",hJe=_y($N),gJe=_y(eL),dJe=_y(tL),mJe=_y(rL),yJe=_y(nL),pd=Lte;($N&&pd(new $N(new ArrayBuffer(1)))!=Nte||eL&&pd(new eL)!=Qte||tL&&pd(tL.resolve())!=Fte||rL&&pd(new rL)!=Rte||nL&&pd(new nL)!=Tte)&&(pd=function(t){var e=Lte(t),r=e==pJe?t.constructor:void 0,o=r?_y(r):"";if(o)switch(o){case hJe:return Nte;case gJe:return Qte;case dJe:return Fte;case mJe:return Rte;case yJe:return Tte}return e});Ote.exports=pd});var Yte=_((kRt,Gte)=>{var iL=HP(),EJe=GN(),CJe=Ree(),wJe=Ite(),Mte=jI(),Ute=Hl(),_te=OI(),IJe=VP(),BJe=1,Hte="[object Arguments]",jte="[object Array]",XP="[object Object]",vJe=Object.prototype,qte=vJe.hasOwnProperty;function DJe(t,e,r,o,a,n){var u=Ute(t),A=Ute(e),p=u?jte:Mte(t),h=A?jte:Mte(e);p=p==Hte?XP:p,h=h==Hte?XP:h;var C=p==XP,I=h==XP,v=p==h;if(v&&_te(t)){if(!_te(e))return!1;u=!0,C=!1}if(v&&!C)return n||(n=new iL),u||IJe(t)?EJe(t,e,r,o,a,n):CJe(t,e,p,r,o,a,n);if(!(r&BJe)){var x=C&&qte.call(t,"__wrapped__"),E=I&&qte.call(e,"__wrapped__");if(x||E){var R=x?t.value():t,L=E?e.value():e;return n||(n=new iL),a(R,L,r,o,n)}}return v?(n||(n=new iL),wJe(t,e,r,o,a,n)):!1}Gte.exports=DJe});var zte=_((QRt,Vte)=>{var PJe=Yte(),Wte=zu();function Kte(t,e,r,o,a){return t===e?!0:t==null||e==null||!Wte(t)&&!Wte(e)?t!==t&&e!==e:PJe(t,e,r,o,Kte,a)}Vte.exports=Kte});var Xte=_((FRt,Jte)=>{var SJe=zte();function bJe(t,e){return SJe(t,e)}Jte.exports=bJe});var sL=_((RRt,Zte)=>{var xJe=Vp(),kJe=function(){try{var t=xJe(Object,"defineProperty");return t({},"",{}),t}catch{}}();Zte.exports=kJe});var ZP=_((TRt,ere)=>{var $te=sL();function QJe(t,e,r){e=="__proto__"&&$te?$te(t,e,{configurable:!0,enumerable:!0,value:r,writable:!0}):t[e]=r}ere.exports=QJe});var oL=_((NRt,tre)=>{var FJe=ZP(),RJe=Ry();function TJe(t,e,r){(r!==void 0&&!RJe(t[e],r)||r===void 0&&!(e in t))&&FJe(t,e,r)}tre.exports=TJe});var nre=_((LRt,rre)=>{function NJe(t){return function(e,r,o){for(var a=-1,n=Object(e),u=o(e),A=u.length;A--;){var p=u[t?A:++a];if(r(n[p],p,n)===!1)break}return e}}rre.exports=NJe});var sre=_((ORt,ire)=>{var LJe=nre(),OJe=LJe();ire.exports=OJe});var aL=_((qI,Hy)=>{var MJe=_l(),cre=typeof qI=="object"&&qI&&!qI.nodeType&&qI,ore=cre&&typeof Hy=="object"&&Hy&&!Hy.nodeType&&Hy,UJe=ore&&ore.exports===cre,are=UJe?MJe.Buffer:void 0,lre=are?are.allocUnsafe:void 0;function _Je(t,e){if(e)return t.slice();var r=t.length,o=lre?lre(r):new t.constructor(r);return t.copy(o),o}Hy.exports=_Je});var $P=_((MRt,Are)=>{var ure=YN();function HJe(t){var e=new t.constructor(t.byteLength);return new ure(e).set(new ure(t)),e}Are.exports=HJe});var lL=_((URt,fre)=>{var jJe=$P();function qJe(t,e){var r=e?jJe(t.buffer):t.buffer;return new t.constructor(r,t.byteOffset,t.length)}fre.exports=qJe});var eS=_((_Rt,pre)=>{function GJe(t,e){var r=-1,o=t.length;for(e||(e=Array(o));++r{var YJe=il(),hre=Object.create,WJe=function(){function t(){}return function(e){if(!YJe(e))return{};if(hre)return hre(e);t.prototype=e;var r=new t;return t.prototype=void 0,r}}();gre.exports=WJe});var tS=_((jRt,mre)=>{var KJe=XN(),VJe=KJe(Object.getPrototypeOf,Object);mre.exports=VJe});var cL=_((qRt,yre)=>{var zJe=dre(),JJe=tS(),XJe=zP();function ZJe(t){return typeof t.constructor=="function"&&!XJe(t)?zJe(JJe(t)):{}}yre.exports=ZJe});var Cre=_((GRt,Ere)=>{var $Je=HI(),eXe=zu();function tXe(t){return eXe(t)&&$Je(t)}Ere.exports=tXe});var uL=_((YRt,Ire)=>{var rXe=fd(),nXe=tS(),iXe=zu(),sXe="[object Object]",oXe=Function.prototype,aXe=Object.prototype,wre=oXe.toString,lXe=aXe.hasOwnProperty,cXe=wre.call(Object);function uXe(t){if(!iXe(t)||rXe(t)!=sXe)return!1;var e=nXe(t);if(e===null)return!0;var r=lXe.call(e,"constructor")&&e.constructor;return typeof r=="function"&&r instanceof r&&wre.call(r)==cXe}Ire.exports=uXe});var AL=_((WRt,Bre)=>{function AXe(t,e){if(!(e==="constructor"&&typeof t[e]=="function")&&e!="__proto__")return t[e]}Bre.exports=AXe});var rS=_((KRt,vre)=>{var fXe=ZP(),pXe=Ry(),hXe=Object.prototype,gXe=hXe.hasOwnProperty;function dXe(t,e,r){var o=t[e];(!(gXe.call(t,e)&&pXe(o,r))||r===void 0&&!(e in t))&&fXe(t,e,r)}vre.exports=dXe});var hd=_((VRt,Dre)=>{var mXe=rS(),yXe=ZP();function EXe(t,e,r,o){var a=!r;r||(r={});for(var n=-1,u=e.length;++n{function CXe(t){var e=[];if(t!=null)for(var r in Object(t))e.push(r);return e}Pre.exports=CXe});var xre=_((JRt,bre)=>{var wXe=il(),IXe=zP(),BXe=Sre(),vXe=Object.prototype,DXe=vXe.hasOwnProperty;function PXe(t){if(!wXe(t))return BXe(t);var e=IXe(t),r=[];for(var o in t)o=="constructor"&&(e||!DXe.call(t,o))||r.push(o);return r}bre.exports=PXe});var jy=_((XRt,kre)=>{var SXe=JN(),bXe=xre(),xXe=HI();function kXe(t){return xXe(t)?SXe(t,!0):bXe(t)}kre.exports=kXe});var Fre=_((ZRt,Qre)=>{var QXe=hd(),FXe=jy();function RXe(t){return QXe(t,FXe(t))}Qre.exports=RXe});var Mre=_(($Rt,Ore)=>{var Rre=oL(),TXe=aL(),NXe=lL(),LXe=eS(),OXe=cL(),Tre=NI(),Nre=Hl(),MXe=Cre(),UXe=OI(),_Xe=MP(),HXe=il(),jXe=uL(),qXe=VP(),Lre=AL(),GXe=Fre();function YXe(t,e,r,o,a,n,u){var A=Lre(t,r),p=Lre(e,r),h=u.get(p);if(h){Rre(t,r,h);return}var C=n?n(A,p,r+"",t,e,u):void 0,I=C===void 0;if(I){var v=Nre(p),x=!v&&UXe(p),E=!v&&!x&&qXe(p);C=p,v||x||E?Nre(A)?C=A:MXe(A)?C=LXe(A):x?(I=!1,C=TXe(p,!0)):E?(I=!1,C=NXe(p,!0)):C=[]:jXe(p)||Tre(p)?(C=A,Tre(A)?C=GXe(A):(!HXe(A)||_Xe(A))&&(C=OXe(p))):I=!1}I&&(u.set(p,C),a(C,p,o,n,u),u.delete(p)),Rre(t,r,C)}Ore.exports=YXe});var Hre=_((eTt,_re)=>{var WXe=HP(),KXe=oL(),VXe=sre(),zXe=Mre(),JXe=il(),XXe=jy(),ZXe=AL();function Ure(t,e,r,o,a){t!==e&&VXe(e,function(n,u){if(a||(a=new WXe),JXe(n))zXe(t,e,u,r,Ure,o,a);else{var A=o?o(ZXe(t,u),n,u+"",t,e,a):void 0;A===void 0&&(A=n),KXe(t,u,A)}},XXe)}_re.exports=Ure});var fL=_((tTt,jre)=>{function $Xe(t){return t}jre.exports=$Xe});var Gre=_((rTt,qre)=>{function eZe(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)}qre.exports=eZe});var pL=_((nTt,Wre)=>{var tZe=Gre(),Yre=Math.max;function rZe(t,e,r){return e=Yre(e===void 0?t.length-1:e,0),function(){for(var o=arguments,a=-1,n=Yre(o.length-e,0),u=Array(n);++a{function nZe(t){return function(){return t}}Kre.exports=nZe});var Xre=_((sTt,Jre)=>{var iZe=Vre(),zre=sL(),sZe=fL(),oZe=zre?function(t,e){return zre(t,"toString",{configurable:!0,enumerable:!1,value:iZe(e),writable:!0})}:sZe;Jre.exports=oZe});var $re=_((oTt,Zre)=>{var aZe=800,lZe=16,cZe=Date.now;function uZe(t){var e=0,r=0;return function(){var o=cZe(),a=lZe-(o-r);if(r=o,a>0){if(++e>=aZe)return arguments[0]}else e=0;return t.apply(void 0,arguments)}}Zre.exports=uZe});var hL=_((aTt,ene)=>{var AZe=Xre(),fZe=$re(),pZe=fZe(AZe);ene.exports=pZe});var rne=_((lTt,tne)=>{var hZe=fL(),gZe=pL(),dZe=hL();function mZe(t,e){return dZe(gZe(t,e,hZe),t+"")}tne.exports=mZe});var ine=_((cTt,nne)=>{var yZe=Ry(),EZe=HI(),CZe=MI(),wZe=il();function IZe(t,e,r){if(!wZe(r))return!1;var o=typeof e;return(o=="number"?EZe(r)&&CZe(e,r.length):o=="string"&&e in r)?yZe(r[e],t):!1}nne.exports=IZe});var one=_((uTt,sne)=>{var BZe=rne(),vZe=ine();function DZe(t){return BZe(function(e,r){var o=-1,a=r.length,n=a>1?r[a-1]:void 0,u=a>2?r[2]:void 0;for(n=t.length>3&&typeof n=="function"?(a--,n):void 0,u&&vZe(r[0],r[1],u)&&(n=a<3?void 0:n,a=1),e=Object(e);++o{var PZe=Hre(),SZe=one(),bZe=SZe(function(t,e,r,o){PZe(t,e,r,o)});ane.exports=bZe});var je={};Vt(je,{AsyncActions:()=>mL,BufferStream:()=>dL,CachingStrategy:()=>Cne,DefaultStream:()=>yL,allSettledSafe:()=>Uc,assertNever:()=>CL,bufferStream:()=>Wy,buildIgnorePattern:()=>NZe,convertMapsToIndexableObjects:()=>iS,dynamicRequire:()=>zp,escapeRegExp:()=>kZe,getArrayWithDefault:()=>qy,getFactoryWithDefault:()=>ol,getMapWithDefault:()=>Gy,getSetWithDefault:()=>gd,groupBy:()=>BL,isIndexableObject:()=>gL,isPathLike:()=>LZe,isTaggedYarnVersion:()=>xZe,makeDeferred:()=>mne,mapAndFilter:()=>sl,mapAndFind:()=>YI,mergeIntoTarget:()=>Ine,overrideType:()=>QZe,parseBoolean:()=>WI,parseInt:()=>Ky,parseOptionalBoolean:()=>wne,plural:()=>nS,prettifyAsyncErrors:()=>Yy,prettifySyncErrors:()=>wL,releaseAfterUseAsync:()=>RZe,replaceEnvVariables:()=>sS,sortMap:()=>ks,toMerged:()=>OZe,tryParseOptionalBoolean:()=>IL,validateEnum:()=>FZe});function xZe(t){return!!(hne.default.valid(t)&&t.match(/^[^-]+(-rc\.[0-9]+)?$/))}function nS(t,{one:e,more:r,zero:o=r}){return t===0?o:t===1?e:r}function kZe(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function QZe(t){}function CL(t){throw new Error(`Assertion failed: Unexpected object '${t}'`)}function FZe(t,e){let r=Object.values(t);if(!r.includes(e))throw new it(`Invalid value for enumeration: ${JSON.stringify(e)} (expected one of ${r.map(o=>JSON.stringify(o)).join(", ")})`);return e}function sl(t,e){let r=[];for(let o of t){let a=e(o);a!==gne&&r.push(a)}return r}function YI(t,e){for(let r of t){let o=e(r);if(o!==dne)return o}}function gL(t){return typeof t=="object"&&t!==null}async function Uc(t){let e=await Promise.allSettled(t),r=[];for(let o of e){if(o.status==="rejected")throw o.reason;r.push(o.value)}return r}function iS(t){if(t instanceof Map&&(t=Object.fromEntries(t)),gL(t))for(let e of Object.keys(t)){let r=t[e];gL(r)&&(t[e]=iS(r))}return t}function ol(t,e,r){let o=t.get(e);return typeof o>"u"&&t.set(e,o=r()),o}function qy(t,e){let r=t.get(e);return typeof r>"u"&&t.set(e,r=[]),r}function gd(t,e){let r=t.get(e);return typeof r>"u"&&t.set(e,r=new Set),r}function Gy(t,e){let r=t.get(e);return typeof r>"u"&&t.set(e,r=new Map),r}async function RZe(t,e){if(e==null)return await t();try{return await t()}finally{await e()}}async function Yy(t,e){try{return await t()}catch(r){throw r.message=e(r.message),r}}function wL(t,e){try{return t()}catch(r){throw r.message=e(r.message),r}}async function Wy(t){return await new Promise((e,r)=>{let o=[];t.on("error",a=>{r(a)}),t.on("data",a=>{o.push(a)}),t.on("end",()=>{e(Buffer.concat(o))})})}function mne(){let t,e;return{promise:new Promise((o,a)=>{t=o,e=a}),resolve:t,reject:e}}function yne(t){return GI(ue.fromPortablePath(t))}function Ene(path){let physicalPath=ue.fromPortablePath(path),currentCacheEntry=GI.cache[physicalPath];delete GI.cache[physicalPath];let result;try{result=yne(physicalPath);let freshCacheEntry=GI.cache[physicalPath],dynamicModule=eval("module"),freshCacheIndex=dynamicModule.children.indexOf(freshCacheEntry);freshCacheIndex!==-1&&dynamicModule.children.splice(freshCacheIndex,1)}finally{GI.cache[physicalPath]=currentCacheEntry}return result}function TZe(t){let e=cne.get(t),r=oe.statSync(t);if(e?.mtime===r.mtimeMs)return e.instance;let o=Ene(t);return cne.set(t,{mtime:r.mtimeMs,instance:o}),o}function zp(t,{cachingStrategy:e=2}={}){switch(e){case 0:return Ene(t);case 1:return TZe(t);case 2:return yne(t);default:throw new Error("Unsupported caching strategy")}}function ks(t,e){let r=Array.from(t);Array.isArray(e)||(e=[e]);let o=[];for(let n of e)o.push(r.map(u=>n(u)));let a=r.map((n,u)=>u);return a.sort((n,u)=>{for(let A of o){let p=A[n]A[u]?1:0;if(p!==0)return p}return 0}),a.map(n=>r[n])}function NZe(t){return t.length===0?null:t.map(e=>`(${fne.default.makeRe(e,{windows:!1,dot:!0}).source})`).join("|")}function sS(t,{env:e}){let r=/\${(?[\d\w_]+)(?:)?(?:-(?[^}]*))?}/g;return t.replace(r,(...o)=>{let{variableName:a,colon:n,fallback:u}=o[o.length-1],A=Object.hasOwn(e,a),p=e[a];if(p||A&&!n)return p;if(u!=null)return u;throw new it(`Environment variable not found (${a})`)})}function WI(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 wne(t){return typeof t>"u"?t:WI(t)}function IL(t){try{return wne(t)}catch{return null}}function LZe(t){return!!(ue.isAbsolute(t)||t.match(/^(\.{1,2}|~)\//))}function Ine(t,...e){let r=u=>({value:u}),o=r(t),a=e.map(u=>r(u)),{value:n}=(0,Ane.default)(o,...a,(u,A)=>{if(Array.isArray(u)&&Array.isArray(A)){for(let p of A)u.find(h=>(0,une.default)(h,p))||u.push(p);return u}});return n}function OZe(...t){return Ine({},...t)}function BL(t,e){let r=Object.create(null);for(let o of t){let a=o[e];r[a]??=[],r[a].push(o)}return r}function Ky(t){return typeof t=="string"?Number.parseInt(t,10):t}var une,Ane,fne,pne,hne,EL,gne,dne,dL,mL,yL,GI,cne,Cne,jl=Et(()=>{Pt();qt();une=$e(Xte()),Ane=$e(lne()),fne=$e(Zo()),pne=$e(rd()),hne=$e(Jn()),EL=Be("stream");gne=Symbol();sl.skip=gne;dne=Symbol();YI.skip=dne;dL=class extends EL.Transform{constructor(){super(...arguments);this.chunks=[]}_transform(r,o,a){if(o!=="buffer"||!Buffer.isBuffer(r))throw new Error("Assertion failed: BufferStream only accept buffers");this.chunks.push(r),a(null,null)}_flush(r){r(null,Buffer.concat(this.chunks))}};mL=class{constructor(e){this.deferred=new Map;this.promises=new Map;this.limit=(0,pne.default)(e)}set(e,r){let o=this.deferred.get(e);typeof o>"u"&&this.deferred.set(e,o=mne());let a=this.limit(()=>r());return this.promises.set(e,a),a.then(()=>{this.promises.get(e)===a&&o.resolve()},n=>{this.promises.get(e)===a&&o.reject(n)}),o.promise}reduce(e,r){let o=this.promises.get(e)??Promise.resolve();this.set(e,()=>r(o))}async wait(){await Promise.all(this.promises.values())}},yL=class extends EL.Transform{constructor(r=Buffer.alloc(0)){super();this.active=!0;this.ifEmpty=r}_transform(r,o,a){if(o!=="buffer"||!Buffer.isBuffer(r))throw new Error("Assertion failed: DefaultStream only accept buffers");this.active=!1,a(null,r)}_flush(r){this.active&&this.ifEmpty.length>0?r(null,this.ifEmpty):r(null)}},GI=eval("require");cne=new Map;Cne=(o=>(o[o.NoCache=0]="NoCache",o[o.FsTime=1]="FsTime",o[o.Node=2]="Node",o))(Cne||{})});var Vy,vL,DL,Bne=Et(()=>{Vy=(r=>(r.HARD="HARD",r.SOFT="SOFT",r))(Vy||{}),vL=(o=>(o.Dependency="Dependency",o.PeerDependency="PeerDependency",o.PeerDependencyMeta="PeerDependencyMeta",o))(vL||{}),DL=(o=>(o.Inactive="inactive",o.Redundant="redundant",o.Active="active",o))(DL||{})});var de={};Vt(de,{LogLevel:()=>uS,Style:()=>aS,Type:()=>yt,addLogFilterSupport:()=>zI,applyColor:()=>Vs,applyHyperlink:()=>Jy,applyStyle:()=>dd,json:()=>md,jsonOrPretty:()=>_Ze,mark:()=>kL,pretty:()=>Mt,prettyField:()=>Ju,prettyList:()=>xL,prettyTruncatedLocatorList:()=>cS,stripAnsi:()=>zy.default,supportsColor:()=>lS,supportsHyperlinks:()=>bL,tuple:()=>_c});function vne(t){let e=["KiB","MiB","GiB","TiB"],r=e.length;for(;r>1&&t<1024**r;)r-=1;let o=1024**r;return`${Math.floor(t*100/o)/100} ${e[r-1]}`}function _c(t,e){return[e,t]}function dd(t,e,r){return t.get("enableColors")&&r&2&&(e=VI.default.bold(e)),e}function Vs(t,e,r){if(!t.get("enableColors"))return e;let o=MZe.get(r);if(o===null)return e;let a=typeof o>"u"?r:SL.level>=3?o[0]:o[1],n=typeof a=="number"?PL.ansi256(a):a.startsWith("#")?PL.hex(a):PL[a];if(typeof n!="function")throw new Error(`Invalid format type ${a}`);return n(e)}function Jy(t,e,r){return t.get("enableHyperlinks")?UZe?`\x1B]8;;${r}\x1B\\${e}\x1B]8;;\x1B\\`:`\x1B]8;;${r}\x07${e}\x1B]8;;\x07`:e}function Mt(t,e,r){if(e===null)return Vs(t,"null",yt.NULL);if(Object.hasOwn(oS,r))return oS[r].pretty(t,e);if(typeof e!="string")throw new Error(`Assertion failed: Expected the value to be a string, got ${typeof e}`);return Vs(t,e,r)}function xL(t,e,r,{separator:o=", "}={}){return[...e].map(a=>Mt(t,a,r)).join(o)}function md(t,e){if(t===null)return null;if(Object.hasOwn(oS,e))return oS[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 _Ze(t,e,[r,o]){return t?md(r,o):Mt(e,r,o)}function kL(t){return{Check:Vs(t,"\u2713","green"),Cross:Vs(t,"\u2718","red"),Question:Vs(t,"?","cyan")}}function Ju(t,{label:e,value:[r,o]}){return`${Mt(t,e,yt.CODE)}: ${Mt(t,r,o)}`}function cS(t,e,r){let o=[],a=[...e],n=r;for(;a.length>0;){let h=a[0],C=`${jr(t,h)}, `,I=QL(h).length+2;if(o.length>0&&nh).join("").slice(0,-2);let u="X".repeat(a.length.toString().length),A=`and ${u} more.`,p=a.length;for(;o.length>1&&nh).join(""),A.replace(u,Mt(t,p,yt.NUMBER))].join("")}function zI(t,{configuration:e}){let r=e.get("logFilters"),o=new Map,a=new Map,n=[];for(let I of r){let v=I.get("level");if(typeof v>"u")continue;let x=I.get("code");typeof x<"u"&&o.set(x,v);let E=I.get("text");typeof E<"u"&&a.set(E,v);let R=I.get("pattern");typeof R<"u"&&n.push([Dne.default.matcher(R,{contains:!0}),v])}n.reverse();let u=(I,v,x)=>{if(I===null||I===0)return x;let E=a.size>0||n.length>0?(0,zy.default)(v):v;if(a.size>0){let R=a.get(E);if(typeof R<"u")return R??x}if(n.length>0){for(let[R,L]of n)if(R(E))return L??x}if(o.size>0){let R=o.get(Wu(I));if(typeof R<"u")return R??x}return x},A=t.reportInfo,p=t.reportWarning,h=t.reportError,C=function(I,v,x,E){switch(u(v,x,E)){case"info":A.call(I,v,x);break;case"warning":p.call(I,v??0,x);break;case"error":h.call(I,v??0,x);break}};t.reportInfo=function(...I){return C(this,...I,"info")},t.reportWarning=function(...I){return C(this,...I,"warning")},t.reportError=function(...I){return C(this,...I,"error")}}var VI,KI,Dne,zy,Pne,yt,aS,SL,lS,bL,PL,MZe,So,oS,UZe,uS,ql=Et(()=>{Pt();VI=$e(vN()),KI=$e($g());qt();Dne=$e(Zo()),zy=$e(OP()),Pne=Be("util");pP();bo();yt={NO_HINT:"NO_HINT",ID:"ID",NULL:"NULL",SCOPE:"SCOPE",NAME:"NAME",RANGE:"RANGE",REFERENCE:"REFERENCE",NUMBER:"NUMBER",PATH:"PATH",URL:"URL",ADDED:"ADDED",REMOVED:"REMOVED",CODE:"CODE",INSPECT:"INSPECT",DURATION:"DURATION",SIZE:"SIZE",SIZE_DIFF:"SIZE_DIFF",IDENT:"IDENT",DESCRIPTOR:"DESCRIPTOR",LOCATOR:"LOCATOR",RESOLUTION:"RESOLUTION",DEPENDENT:"DEPENDENT",PACKAGE_EXTENSION:"PACKAGE_EXTENSION",SETTING:"SETTING",MARKDOWN:"MARKDOWN",MARKDOWN_INLINE:"MARKDOWN_INLINE"},aS=(e=>(e[e.BOLD=2]="BOLD",e))(aS||{}),SL=KI.default.GITHUB_ACTIONS?{level:2}:VI.default.supportsColor?{level:VI.default.supportsColor.level}:{level:0},lS=SL.level!==0,bL=lS&&!KI.default.GITHUB_ACTIONS&&!KI.default.CIRCLE&&!KI.default.GITLAB,PL=new VI.default.Instance(SL),MZe=new Map([[yt.NO_HINT,null],[yt.NULL,["#a853b5",129]],[yt.SCOPE,["#d75f00",166]],[yt.NAME,["#d7875f",173]],[yt.RANGE,["#00afaf",37]],[yt.REFERENCE,["#87afff",111]],[yt.NUMBER,["#ffd700",220]],[yt.PATH,["#d75fd7",170]],[yt.URL,["#d75fd7",170]],[yt.ADDED,["#5faf00",70]],[yt.REMOVED,["#ff3131",160]],[yt.CODE,["#87afff",111]],[yt.SIZE,["#ffd700",220]]]),So=t=>t;oS={[yt.ID]:So({pretty:(t,e)=>typeof e=="number"?Vs(t,`${e}`,yt.NUMBER):Vs(t,e,yt.CODE),json:t=>t}),[yt.INSPECT]:So({pretty:(t,e)=>(0,Pne.inspect)(e,{depth:1/0,colors:t.get("enableColors"),compact:!0,breakLength:1/0}),json:t=>t}),[yt.NUMBER]:So({pretty:(t,e)=>Vs(t,`${e}`,yt.NUMBER),json:t=>t}),[yt.IDENT]:So({pretty:(t,e)=>cs(t,e),json:t=>fn(t)}),[yt.LOCATOR]:So({pretty:(t,e)=>jr(t,e),json:t=>ba(t)}),[yt.DESCRIPTOR]:So({pretty:(t,e)=>qn(t,e),json:t=>Sa(t)}),[yt.RESOLUTION]:So({pretty:(t,{descriptor:e,locator:r})=>JI(t,e,r),json:({descriptor:t,locator:e})=>({descriptor:Sa(t),locator:e!==null?ba(e):null})}),[yt.DEPENDENT]:So({pretty:(t,{locator:e,descriptor:r})=>FL(t,e,r),json:({locator:t,descriptor:e})=>({locator:ba(t),descriptor:Sa(e)})}),[yt.PACKAGE_EXTENSION]:So({pretty:(t,e)=>{switch(e.type){case"Dependency":return`${cs(t,e.parentDescriptor)} \u27A4 ${Vs(t,"dependencies",yt.CODE)} \u27A4 ${cs(t,e.descriptor)}`;case"PeerDependency":return`${cs(t,e.parentDescriptor)} \u27A4 ${Vs(t,"peerDependencies",yt.CODE)} \u27A4 ${cs(t,e.descriptor)}`;case"PeerDependencyMeta":return`${cs(t,e.parentDescriptor)} \u27A4 ${Vs(t,"peerDependenciesMeta",yt.CODE)} \u27A4 ${cs(t,zs(e.selector))} \u27A4 ${Vs(t,e.key,yt.CODE)}`;default:throw new Error(`Assertion failed: Unsupported package extension type: ${e.type}`)}},json:t=>{switch(t.type){case"Dependency":return`${fn(t.parentDescriptor)} > ${fn(t.descriptor)}`;case"PeerDependency":return`${fn(t.parentDescriptor)} >> ${fn(t.descriptor)}`;case"PeerDependencyMeta":return`${fn(t.parentDescriptor)} >> ${t.selector} / ${t.key}`;default:throw new Error(`Assertion failed: Unsupported package extension type: ${t.type}`)}}}),[yt.SETTING]:So({pretty:(t,e)=>(t.get(e),Jy(t,Vs(t,e,yt.CODE),`https://yarnpkg.com/configuration/yarnrc#${e}`)),json:t=>t}),[yt.DURATION]:So({pretty:(t,e)=>{if(e>1e3*60){let r=Math.floor(e/1e3/60),o=Math.ceil((e-r*60*1e3)/1e3);return o===0?`${r}m`:`${r}m ${o}s`}else{let r=Math.floor(e/1e3),o=e-r*1e3;return o===0?`${r}s`:`${r}s ${o}ms`}},json:t=>t}),[yt.SIZE]:So({pretty:(t,e)=>Vs(t,vne(e),yt.NUMBER),json:t=>t}),[yt.SIZE_DIFF]:So({pretty:(t,e)=>{let r=e>=0?"+":"-",o=r==="+"?yt.REMOVED:yt.ADDED;return Vs(t,`${r} ${vne(Math.max(Math.abs(e),1))}`,o)},json:t=>t}),[yt.PATH]:So({pretty:(t,e)=>Vs(t,ue.fromPortablePath(e),yt.PATH),json:t=>ue.fromPortablePath(t)}),[yt.MARKDOWN]:So({pretty:(t,{text:e,format:r,paragraphs:o})=>Do(e,{format:r,paragraphs:o}),json:({text:t})=>t}),[yt.MARKDOWN_INLINE]:So({pretty:(t,e)=>(e=e.replace(/(`+)((?:.|[\n])*?)\1/g,(r,o,a)=>Mt(t,o+a+o,yt.CODE)),e=e.replace(/(\*\*)((?:.|[\n])*?)\1/g,(r,o,a)=>dd(t,a,2)),e),json:t=>t})};UZe=!!process.env.KONSOLE_VERSION;uS=(a=>(a.Error="error",a.Warning="warning",a.Info="info",a.Discard="discard",a))(uS||{})});var Sne=_(Xy=>{"use strict";Object.defineProperty(Xy,"__esModule",{value:!0});Xy.splitWhen=Xy.flatten=void 0;function HZe(t){return t.reduce((e,r)=>[].concat(e,r),[])}Xy.flatten=HZe;function jZe(t,e){let r=[[]],o=0;for(let a of t)e(a)?(o++,r[o]=[]):r[o].push(a);return r}Xy.splitWhen=jZe});var bne=_(AS=>{"use strict";Object.defineProperty(AS,"__esModule",{value:!0});AS.isEnoentCodeError=void 0;function qZe(t){return t.code==="ENOENT"}AS.isEnoentCodeError=qZe});var xne=_(fS=>{"use strict";Object.defineProperty(fS,"__esModule",{value:!0});fS.createDirentFromStats=void 0;var RL=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 GZe(t,e){return new RL(t,e)}fS.createDirentFromStats=GZe});var kne=_(Xu=>{"use strict";Object.defineProperty(Xu,"__esModule",{value:!0});Xu.removeLeadingDotSegment=Xu.escape=Xu.makeAbsolute=Xu.unixify=void 0;var YZe=Be("path"),WZe=2,KZe=/(\\?)([()*?[\]{|}]|^!|[!+@](?=\())/g;function VZe(t){return t.replace(/\\/g,"/")}Xu.unixify=VZe;function zZe(t,e){return YZe.resolve(t,e)}Xu.makeAbsolute=zZe;function JZe(t){return t.replace(KZe,"\\$2")}Xu.escape=JZe;function XZe(t){if(t.charAt(0)==="."){let e=t.charAt(1);if(e==="/"||e==="\\")return t.slice(WZe)}return t}Xu.removeLeadingDotSegment=XZe});var Fne=_((PTt,Qne)=>{Qne.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 Nne=_((STt,Tne)=>{var ZZe=Fne(),Rne={"{":"}","(":")","[":"]"},$Ze=function(t){if(t[0]==="!")return!0;for(var e=0,r=-2,o=-2,a=-2,n=-2,u=-2;ee&&(u===-1||u>o||(u=t.indexOf("\\",e),u===-1||u>o)))||a!==-1&&t[e]==="{"&&t[e+1]!=="}"&&(a=t.indexOf("}",e),a>e&&(u=t.indexOf("\\",e),u===-1||u>a))||n!==-1&&t[e]==="("&&t[e+1]==="?"&&/[:!=]/.test(t[e+2])&&t[e+3]!==")"&&(n=t.indexOf(")",e),n>e&&(u=t.indexOf("\\",e),u===-1||u>n))||r!==-1&&t[e]==="("&&t[e+1]!=="|"&&(rr&&(u=t.indexOf("\\",r),u===-1||u>n))))return!0;if(t[e]==="\\"){var A=t[e+1];e+=2;var p=Rne[A];if(p){var h=t.indexOf(p,e);h!==-1&&(e=h+1)}if(t[e]==="!")return!0}else e++}return!1},e$e=function(t){if(t[0]==="!")return!0;for(var e=0;e{"use strict";var t$e=Nne(),r$e=Be("path").posix.dirname,n$e=Be("os").platform()==="win32",TL="/",i$e=/\\/g,s$e=/[\{\[].*[\}\]]$/,o$e=/(^|[^\\])([\{\[]|\([^\)]+$)/,a$e=/\\([\!\*\?\|\[\]\(\)\{\}])/g;Lne.exports=function(e,r){var o=Object.assign({flipBackslashes:!0},r);o.flipBackslashes&&n$e&&e.indexOf(TL)<0&&(e=e.replace(i$e,TL)),s$e.test(e)&&(e+=TL),e+="a";do e=r$e(e);while(t$e(e)||o$e.test(e));return e.replace(a$e,"$1")}});var Yne=_(qr=>{"use strict";Object.defineProperty(qr,"__esModule",{value:!0});qr.matchAny=qr.convertPatternsToRe=qr.makeRe=qr.getPatternParts=qr.expandBraceExpansion=qr.expandPatternsWithBraceExpansion=qr.isAffectDepthOfReadingPattern=qr.endsWithSlashGlobStar=qr.hasGlobStar=qr.getBaseDirectory=qr.isPatternRelatedToParentDirectory=qr.getPatternsOutsideCurrentDirectory=qr.getPatternsInsideCurrentDirectory=qr.getPositivePatterns=qr.getNegativePatterns=qr.isPositivePattern=qr.isNegativePattern=qr.convertToNegativePattern=qr.convertToPositivePattern=qr.isDynamicPattern=qr.isStaticPattern=void 0;var l$e=Be("path"),c$e=One(),NL=Zo(),Mne="**",u$e="\\",A$e=/[*?]|^!/,f$e=/\[[^[]*]/,p$e=/(?:^|[^!*+?@])\([^(]*\|[^|]*\)/,h$e=/[!*+?@]\([^(]*\)/,g$e=/,|\.\./;function Une(t,e={}){return!_ne(t,e)}qr.isStaticPattern=Une;function _ne(t,e={}){return t===""?!1:!!(e.caseSensitiveMatch===!1||t.includes(u$e)||A$e.test(t)||f$e.test(t)||p$e.test(t)||e.extglob!==!1&&h$e.test(t)||e.braceExpansion!==!1&&d$e(t))}qr.isDynamicPattern=_ne;function d$e(t){let e=t.indexOf("{");if(e===-1)return!1;let r=t.indexOf("}",e+1);if(r===-1)return!1;let o=t.slice(e,r);return g$e.test(o)}function m$e(t){return pS(t)?t.slice(1):t}qr.convertToPositivePattern=m$e;function y$e(t){return"!"+t}qr.convertToNegativePattern=y$e;function pS(t){return t.startsWith("!")&&t[1]!=="("}qr.isNegativePattern=pS;function Hne(t){return!pS(t)}qr.isPositivePattern=Hne;function E$e(t){return t.filter(pS)}qr.getNegativePatterns=E$e;function C$e(t){return t.filter(Hne)}qr.getPositivePatterns=C$e;function w$e(t){return t.filter(e=>!LL(e))}qr.getPatternsInsideCurrentDirectory=w$e;function I$e(t){return t.filter(LL)}qr.getPatternsOutsideCurrentDirectory=I$e;function LL(t){return t.startsWith("..")||t.startsWith("./..")}qr.isPatternRelatedToParentDirectory=LL;function B$e(t){return c$e(t,{flipBackslashes:!1})}qr.getBaseDirectory=B$e;function v$e(t){return t.includes(Mne)}qr.hasGlobStar=v$e;function jne(t){return t.endsWith("/"+Mne)}qr.endsWithSlashGlobStar=jne;function D$e(t){let e=l$e.basename(t);return jne(t)||Une(e)}qr.isAffectDepthOfReadingPattern=D$e;function P$e(t){return t.reduce((e,r)=>e.concat(qne(r)),[])}qr.expandPatternsWithBraceExpansion=P$e;function qne(t){return NL.braces(t,{expand:!0,nodupes:!0})}qr.expandBraceExpansion=qne;function S$e(t,e){let{parts:r}=NL.scan(t,Object.assign(Object.assign({},e),{parts:!0}));return r.length===0&&(r=[t]),r[0].startsWith("/")&&(r[0]=r[0].slice(1),r.unshift("")),r}qr.getPatternParts=S$e;function Gne(t,e){return NL.makeRe(t,e)}qr.makeRe=Gne;function b$e(t,e){return t.map(r=>Gne(r,e))}qr.convertPatternsToRe=b$e;function x$e(t,e){return e.some(r=>r.test(t))}qr.matchAny=x$e});var zne=_((kTt,Vne)=>{"use strict";var k$e=Be("stream"),Wne=k$e.PassThrough,Q$e=Array.prototype.slice;Vne.exports=F$e;function F$e(){let t=[],e=Q$e.call(arguments),r=!1,o=e[e.length-1];o&&!Array.isArray(o)&&o.pipe==null?e.pop():o={};let a=o.end!==!1,n=o.pipeError===!0;o.objectMode==null&&(o.objectMode=!0),o.highWaterMark==null&&(o.highWaterMark=64*1024);let u=Wne(o);function A(){for(let C=0,I=arguments.length;C0||(r=!1,p())}function x(E){function R(){E.removeListener("merge2UnpipeEnd",R),E.removeListener("end",R),n&&E.removeListener("error",L),v()}function L(U){u.emit("error",U)}if(E._readableState.endEmitted)return v();E.on("merge2UnpipeEnd",R),E.on("end",R),n&&E.on("error",L),E.pipe(u,{end:!1}),E.resume()}for(let E=0;E{"use strict";Object.defineProperty(hS,"__esModule",{value:!0});hS.merge=void 0;var R$e=zne();function T$e(t){let e=R$e(t);return t.forEach(r=>{r.once("error",o=>e.emit("error",o))}),e.once("close",()=>Jne(t)),e.once("end",()=>Jne(t)),e}hS.merge=T$e;function Jne(t){t.forEach(e=>e.emit("close"))}});var Zne=_(Zy=>{"use strict";Object.defineProperty(Zy,"__esModule",{value:!0});Zy.isEmpty=Zy.isString=void 0;function N$e(t){return typeof t=="string"}Zy.isString=N$e;function L$e(t){return t===""}Zy.isEmpty=L$e});var vf=_(xo=>{"use strict";Object.defineProperty(xo,"__esModule",{value:!0});xo.string=xo.stream=xo.pattern=xo.path=xo.fs=xo.errno=xo.array=void 0;var O$e=Sne();xo.array=O$e;var M$e=bne();xo.errno=M$e;var U$e=xne();xo.fs=U$e;var _$e=kne();xo.path=_$e;var H$e=Yne();xo.pattern=H$e;var j$e=Xne();xo.stream=j$e;var q$e=Zne();xo.string=q$e});var tie=_(ko=>{"use strict";Object.defineProperty(ko,"__esModule",{value:!0});ko.convertPatternGroupToTask=ko.convertPatternGroupsToTasks=ko.groupPatternsByBaseDirectory=ko.getNegativePatternsAsPositive=ko.getPositivePatterns=ko.convertPatternsToTasks=ko.generate=void 0;var Df=vf();function G$e(t,e){let r=$ne(t),o=eie(t,e.ignore),a=r.filter(p=>Df.pattern.isStaticPattern(p,e)),n=r.filter(p=>Df.pattern.isDynamicPattern(p,e)),u=OL(a,o,!1),A=OL(n,o,!0);return u.concat(A)}ko.generate=G$e;function OL(t,e,r){let o=[],a=Df.pattern.getPatternsOutsideCurrentDirectory(t),n=Df.pattern.getPatternsInsideCurrentDirectory(t),u=ML(a),A=ML(n);return o.push(...UL(u,e,r)),"."in A?o.push(_L(".",n,e,r)):o.push(...UL(A,e,r)),o}ko.convertPatternsToTasks=OL;function $ne(t){return Df.pattern.getPositivePatterns(t)}ko.getPositivePatterns=$ne;function eie(t,e){return Df.pattern.getNegativePatterns(t).concat(e).map(Df.pattern.convertToPositivePattern)}ko.getNegativePatternsAsPositive=eie;function ML(t){let e={};return t.reduce((r,o)=>{let a=Df.pattern.getBaseDirectory(o);return a in r?r[a].push(o):r[a]=[o],r},e)}ko.groupPatternsByBaseDirectory=ML;function UL(t,e,r){return Object.keys(t).map(o=>_L(o,t[o],e,r))}ko.convertPatternGroupsToTasks=UL;function _L(t,e,r,o){return{dynamic:o,positive:e,negative:r,base:t,patterns:[].concat(e,r.map(Df.pattern.convertToNegativePattern))}}ko.convertPatternGroupToTask=_L});var nie=_($y=>{"use strict";Object.defineProperty($y,"__esModule",{value:!0});$y.removeDuplicateSlashes=$y.transform=void 0;var Y$e=/(?!^)\/{2,}/g;function W$e(t){return t.map(e=>rie(e))}$y.transform=W$e;function rie(t){return t.replace(Y$e,"/")}$y.removeDuplicateSlashes=rie});var sie=_(gS=>{"use strict";Object.defineProperty(gS,"__esModule",{value:!0});gS.read=void 0;function K$e(t,e,r){e.fs.lstat(t,(o,a)=>{if(o!==null){iie(r,o);return}if(!a.isSymbolicLink()||!e.followSymbolicLink){HL(r,a);return}e.fs.stat(t,(n,u)=>{if(n!==null){if(e.throwErrorOnBrokenSymbolicLink){iie(r,n);return}HL(r,a);return}e.markSymbolicLink&&(u.isSymbolicLink=()=>!0),HL(r,u)})})}gS.read=K$e;function iie(t,e){t(e)}function HL(t,e){t(null,e)}});var oie=_(dS=>{"use strict";Object.defineProperty(dS,"__esModule",{value:!0});dS.read=void 0;function V$e(t,e){let r=e.fs.lstatSync(t);if(!r.isSymbolicLink()||!e.followSymbolicLink)return r;try{let o=e.fs.statSync(t);return e.markSymbolicLink&&(o.isSymbolicLink=()=>!0),o}catch(o){if(!e.throwErrorOnBrokenSymbolicLink)return r;throw o}}dS.read=V$e});var aie=_(Jp=>{"use strict";Object.defineProperty(Jp,"__esModule",{value:!0});Jp.createFileSystemAdapter=Jp.FILE_SYSTEM_ADAPTER=void 0;var mS=Be("fs");Jp.FILE_SYSTEM_ADAPTER={lstat:mS.lstat,stat:mS.stat,lstatSync:mS.lstatSync,statSync:mS.statSync};function z$e(t){return t===void 0?Jp.FILE_SYSTEM_ADAPTER:Object.assign(Object.assign({},Jp.FILE_SYSTEM_ADAPTER),t)}Jp.createFileSystemAdapter=z$e});var lie=_(qL=>{"use strict";Object.defineProperty(qL,"__esModule",{value:!0});var J$e=aie(),jL=class{constructor(e={}){this._options=e,this.followSymbolicLink=this._getValue(this._options.followSymbolicLink,!0),this.fs=J$e.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??r}};qL.default=jL});var yd=_(Xp=>{"use strict";Object.defineProperty(Xp,"__esModule",{value:!0});Xp.statSync=Xp.stat=Xp.Settings=void 0;var cie=sie(),X$e=oie(),YL=lie();Xp.Settings=YL.default;function Z$e(t,e,r){if(typeof e=="function"){cie.read(t,WL(),e);return}cie.read(t,WL(e),r)}Xp.stat=Z$e;function $$e(t,e){let r=WL(e);return X$e.read(t,r)}Xp.statSync=$$e;function WL(t={}){return t instanceof YL.default?t:new YL.default(t)}});var Aie=_((HTt,uie)=>{uie.exports=eet;function eet(t,e){var r,o,a,n=!0;Array.isArray(t)?(r=[],o=t.length):(a=Object.keys(t),r={},o=a.length);function u(p){function h(){e&&e(p,r),e=null}n?process.nextTick(h):h()}function A(p,h,C){r[p]=C,(--o===0||h)&&u(h)}o?a?a.forEach(function(p){t[p](function(h,C){A(p,h,C)})}):t.forEach(function(p,h){p(function(C,I){A(h,C,I)})}):u(null),n=!1}});var KL=_(ES=>{"use strict";Object.defineProperty(ES,"__esModule",{value:!0});ES.IS_SUPPORT_READDIR_WITH_FILE_TYPES=void 0;var yS=process.versions.node.split(".");if(yS[0]===void 0||yS[1]===void 0)throw new Error(`Unexpected behavior. The 'process.versions.node' variable has invalid value: ${process.versions.node}`);var fie=Number.parseInt(yS[0],10),tet=Number.parseInt(yS[1],10),pie=10,ret=10,net=fie>pie,iet=fie===pie&&tet>=ret;ES.IS_SUPPORT_READDIR_WITH_FILE_TYPES=net||iet});var hie=_(CS=>{"use strict";Object.defineProperty(CS,"__esModule",{value:!0});CS.createDirentFromStats=void 0;var VL=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 set(t,e){return new VL(t,e)}CS.createDirentFromStats=set});var zL=_(wS=>{"use strict";Object.defineProperty(wS,"__esModule",{value:!0});wS.fs=void 0;var oet=hie();wS.fs=oet});var JL=_(IS=>{"use strict";Object.defineProperty(IS,"__esModule",{value:!0});IS.joinPathSegments=void 0;function aet(t,e,r){return t.endsWith(r)?t+e:t+r+e}IS.joinPathSegments=aet});var Cie=_(Zp=>{"use strict";Object.defineProperty(Zp,"__esModule",{value:!0});Zp.readdir=Zp.readdirWithFileTypes=Zp.read=void 0;var cet=yd(),gie=Aie(),uet=KL(),die=zL(),mie=JL();function Aet(t,e,r){if(!e.stats&&uet.IS_SUPPORT_READDIR_WITH_FILE_TYPES){yie(t,e,r);return}Eie(t,e,r)}Zp.read=Aet;function yie(t,e,r){e.fs.readdir(t,{withFileTypes:!0},(o,a)=>{if(o!==null){BS(r,o);return}let n=a.map(A=>({dirent:A,name:A.name,path:mie.joinPathSegments(t,A.name,e.pathSegmentSeparator)}));if(!e.followSymbolicLinks){XL(r,n);return}let u=n.map(A=>fet(A,e));gie(u,(A,p)=>{if(A!==null){BS(r,A);return}XL(r,p)})})}Zp.readdirWithFileTypes=yie;function fet(t,e){return r=>{if(!t.dirent.isSymbolicLink()){r(null,t);return}e.fs.stat(t.path,(o,a)=>{if(o!==null){if(e.throwErrorOnBrokenSymbolicLink){r(o);return}r(null,t);return}t.dirent=die.fs.createDirentFromStats(t.name,a),r(null,t)})}}function Eie(t,e,r){e.fs.readdir(t,(o,a)=>{if(o!==null){BS(r,o);return}let n=a.map(u=>{let A=mie.joinPathSegments(t,u,e.pathSegmentSeparator);return p=>{cet.stat(A,e.fsStatSettings,(h,C)=>{if(h!==null){p(h);return}let I={name:u,path:A,dirent:die.fs.createDirentFromStats(u,C)};e.stats&&(I.stats=C),p(null,I)})}});gie(n,(u,A)=>{if(u!==null){BS(r,u);return}XL(r,A)})})}Zp.readdir=Eie;function BS(t,e){t(e)}function XL(t,e){t(null,e)}});var Die=_($p=>{"use strict";Object.defineProperty($p,"__esModule",{value:!0});$p.readdir=$p.readdirWithFileTypes=$p.read=void 0;var pet=yd(),het=KL(),wie=zL(),Iie=JL();function get(t,e){return!e.stats&&het.IS_SUPPORT_READDIR_WITH_FILE_TYPES?Bie(t,e):vie(t,e)}$p.read=get;function Bie(t,e){return e.fs.readdirSync(t,{withFileTypes:!0}).map(o=>{let a={dirent:o,name:o.name,path:Iie.joinPathSegments(t,o.name,e.pathSegmentSeparator)};if(a.dirent.isSymbolicLink()&&e.followSymbolicLinks)try{let n=e.fs.statSync(a.path);a.dirent=wie.fs.createDirentFromStats(a.name,n)}catch(n){if(e.throwErrorOnBrokenSymbolicLink)throw n}return a})}$p.readdirWithFileTypes=Bie;function vie(t,e){return e.fs.readdirSync(t).map(o=>{let a=Iie.joinPathSegments(t,o,e.pathSegmentSeparator),n=pet.statSync(a,e.fsStatSettings),u={name:o,path:a,dirent:wie.fs.createDirentFromStats(o,n)};return e.stats&&(u.stats=n),u})}$p.readdir=vie});var Pie=_(eh=>{"use strict";Object.defineProperty(eh,"__esModule",{value:!0});eh.createFileSystemAdapter=eh.FILE_SYSTEM_ADAPTER=void 0;var eE=Be("fs");eh.FILE_SYSTEM_ADAPTER={lstat:eE.lstat,stat:eE.stat,lstatSync:eE.lstatSync,statSync:eE.statSync,readdir:eE.readdir,readdirSync:eE.readdirSync};function det(t){return t===void 0?eh.FILE_SYSTEM_ADAPTER:Object.assign(Object.assign({},eh.FILE_SYSTEM_ADAPTER),t)}eh.createFileSystemAdapter=det});var Sie=_($L=>{"use strict";Object.defineProperty($L,"__esModule",{value:!0});var met=Be("path"),yet=yd(),Eet=Pie(),ZL=class{constructor(e={}){this._options=e,this.followSymbolicLinks=this._getValue(this._options.followSymbolicLinks,!1),this.fs=Eet.createFileSystemAdapter(this._options.fs),this.pathSegmentSeparator=this._getValue(this._options.pathSegmentSeparator,met.sep),this.stats=this._getValue(this._options.stats,!1),this.throwErrorOnBrokenSymbolicLink=this._getValue(this._options.throwErrorOnBrokenSymbolicLink,!0),this.fsStatSettings=new yet.Settings({followSymbolicLink:this.followSymbolicLinks,fs:this.fs,throwErrorOnBrokenSymbolicLink:this.throwErrorOnBrokenSymbolicLink})}_getValue(e,r){return e??r}};$L.default=ZL});var vS=_(th=>{"use strict";Object.defineProperty(th,"__esModule",{value:!0});th.Settings=th.scandirSync=th.scandir=void 0;var bie=Cie(),Cet=Die(),eO=Sie();th.Settings=eO.default;function wet(t,e,r){if(typeof e=="function"){bie.read(t,tO(),e);return}bie.read(t,tO(e),r)}th.scandir=wet;function Iet(t,e){let r=tO(e);return Cet.read(t,r)}th.scandirSync=Iet;function tO(t={}){return t instanceof eO.default?t:new eO.default(t)}});var kie=_((XTt,xie)=>{"use strict";function Bet(t){var e=new t,r=e;function o(){var n=e;return n.next?e=n.next:(e=new t,r=e),n.next=null,n}function a(n){r.next=n,r=n}return{get:o,release:a}}xie.exports=Bet});var Fie=_((ZTt,rO)=>{"use strict";var vet=kie();function Qie(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 o=vet(Det),a=null,n=null,u=0,A=null,p={push:R,drain:Gl,saturated:Gl,pause:C,paused:!1,concurrency:r,running:h,resume:x,idle:E,length:I,getQueue:v,unshift:L,empty:Gl,kill:z,killAndDrain:te,error:le};return p;function h(){return u}function C(){p.paused=!0}function I(){for(var he=a,Ae=0;he;)he=he.next,Ae++;return Ae}function v(){for(var he=a,Ae=[];he;)Ae.push(he.value),he=he.next;return Ae}function x(){if(!!p.paused){p.paused=!1;for(var he=0;he{"use strict";Object.defineProperty(Zu,"__esModule",{value:!0});Zu.joinPathSegments=Zu.replacePathSegmentSeparator=Zu.isAppliedFilter=Zu.isFatalError=void 0;function bet(t,e){return t.errorFilter===null?!0:!t.errorFilter(e)}Zu.isFatalError=bet;function xet(t,e){return t===null||t(e)}Zu.isAppliedFilter=xet;function ket(t,e){return t.split(/[/\\]/).join(e)}Zu.replacePathSegmentSeparator=ket;function Qet(t,e,r){return t===""?e:t.endsWith(r)?t+e:t+r+e}Zu.joinPathSegments=Qet});var sO=_(iO=>{"use strict";Object.defineProperty(iO,"__esModule",{value:!0});var Fet=DS(),nO=class{constructor(e,r){this._root=e,this._settings=r,this._root=Fet.replacePathSegmentSeparator(e,r.pathSegmentSeparator)}};iO.default=nO});var lO=_(aO=>{"use strict";Object.defineProperty(aO,"__esModule",{value:!0});var Ret=Be("events"),Tet=vS(),Net=Fie(),PS=DS(),Let=sO(),oO=class extends Let.default{constructor(e,r){super(e,r),this._settings=r,this._scandir=Tet.scandir,this._emitter=new Ret.EventEmitter,this._queue=Net(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 o={directory:e,base:r};this._queue.push(o,a=>{a!==null&&this._handleError(a)})}_worker(e,r){this._scandir(e.directory,this._settings.fsScandirSettings,(o,a)=>{if(o!==null){r(o,void 0);return}for(let n of a)this._handleEntry(n,e.base);r(null,void 0)})}_handleError(e){this._isDestroyed||!PS.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 o=e.path;r!==void 0&&(e.path=PS.joinPathSegments(r,e.name,this._settings.pathSegmentSeparator)),PS.isAppliedFilter(this._settings.entryFilter,e)&&this._emitEntry(e),e.dirent.isDirectory()&&PS.isAppliedFilter(this._settings.deepFilter,e)&&this._pushToQueue(o,r===void 0?void 0:e.path)}_emitEntry(e){this._emitter.emit("entry",e)}};aO.default=oO});var Rie=_(uO=>{"use strict";Object.defineProperty(uO,"__esModule",{value:!0});var Oet=lO(),cO=class{constructor(e,r){this._root=e,this._settings=r,this._reader=new Oet.default(this._root,this._settings),this._storage=[]}read(e){this._reader.onError(r=>{Met(e,r)}),this._reader.onEntry(r=>{this._storage.push(r)}),this._reader.onEnd(()=>{Uet(e,this._storage)}),this._reader.read()}};uO.default=cO;function Met(t,e){t(e)}function Uet(t,e){t(null,e)}});var Tie=_(fO=>{"use strict";Object.defineProperty(fO,"__esModule",{value:!0});var _et=Be("stream"),Het=lO(),AO=class{constructor(e,r){this._root=e,this._settings=r,this._reader=new Het.default(this._root,this._settings),this._stream=new _et.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}};fO.default=AO});var Nie=_(hO=>{"use strict";Object.defineProperty(hO,"__esModule",{value:!0});var jet=vS(),SS=DS(),qet=sO(),pO=class extends qet.default{constructor(){super(...arguments),this._scandir=jet.scandirSync,this._storage=[],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 o=this._scandir(e,this._settings.fsScandirSettings);for(let a of o)this._handleEntry(a,r)}catch(o){this._handleError(o)}}_handleError(e){if(!!SS.isFatalError(this._settings,e))throw e}_handleEntry(e,r){let o=e.path;r!==void 0&&(e.path=SS.joinPathSegments(r,e.name,this._settings.pathSegmentSeparator)),SS.isAppliedFilter(this._settings.entryFilter,e)&&this._pushToStorage(e),e.dirent.isDirectory()&&SS.isAppliedFilter(this._settings.deepFilter,e)&&this._pushToQueue(o,r===void 0?void 0:e.path)}_pushToStorage(e){this._storage.push(e)}};hO.default=pO});var Lie=_(dO=>{"use strict";Object.defineProperty(dO,"__esModule",{value:!0});var Get=Nie(),gO=class{constructor(e,r){this._root=e,this._settings=r,this._reader=new Get.default(this._root,this._settings)}read(){return this._reader.read()}};dO.default=gO});var Oie=_(yO=>{"use strict";Object.defineProperty(yO,"__esModule",{value:!0});var Yet=Be("path"),Wet=vS(),mO=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,Yet.sep),this.fsScandirSettings=new Wet.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??r}};yO.default=mO});var xS=_($u=>{"use strict";Object.defineProperty($u,"__esModule",{value:!0});$u.Settings=$u.walkStream=$u.walkSync=$u.walk=void 0;var Mie=Rie(),Ket=Tie(),Vet=Lie(),EO=Oie();$u.Settings=EO.default;function zet(t,e,r){if(typeof e=="function"){new Mie.default(t,bS()).read(e);return}new Mie.default(t,bS(e)).read(r)}$u.walk=zet;function Jet(t,e){let r=bS(e);return new Vet.default(t,r).read()}$u.walkSync=Jet;function Xet(t,e){let r=bS(e);return new Ket.default(t,r).read()}$u.walkStream=Xet;function bS(t={}){return t instanceof EO.default?t:new EO.default(t)}});var kS=_(wO=>{"use strict";Object.defineProperty(wO,"__esModule",{value:!0});var Zet=Be("path"),$et=yd(),Uie=vf(),CO=class{constructor(e){this._settings=e,this._fsStatSettings=new $et.Settings({followSymbolicLink:this._settings.followSymbolicLinks,fs:this._settings.fs,throwErrorOnBrokenSymbolicLink:this._settings.followSymbolicLinks})}_getFullEntryPath(e){return Zet.resolve(this._settings.cwd,e)}_makeEntry(e,r){let o={name:r,path:r,dirent:Uie.fs.createDirentFromStats(r,e)};return this._settings.stats&&(o.stats=e),o}_isFatalError(e){return!Uie.errno.isEnoentCodeError(e)&&!this._settings.suppressErrors}};wO.default=CO});var vO=_(BO=>{"use strict";Object.defineProperty(BO,"__esModule",{value:!0});var ett=Be("stream"),ttt=yd(),rtt=xS(),ntt=kS(),IO=class extends ntt.default{constructor(){super(...arguments),this._walkStream=rtt.walkStream,this._stat=ttt.stat}dynamic(e,r){return this._walkStream(e,r)}static(e,r){let o=e.map(this._getFullEntryPath,this),a=new ett.PassThrough({objectMode:!0});a._write=(n,u,A)=>this._getEntry(o[n],e[n],r).then(p=>{p!==null&&r.entryFilter(p)&&a.push(p),n===o.length-1&&a.end(),A()}).catch(A);for(let n=0;nthis._makeEntry(a,r)).catch(a=>{if(o.errorFilter(a))return null;throw a})}_getStat(e){return new Promise((r,o)=>{this._stat(e,this._fsStatSettings,(a,n)=>a===null?r(n):o(a))})}};BO.default=IO});var _ie=_(PO=>{"use strict";Object.defineProperty(PO,"__esModule",{value:!0});var itt=xS(),stt=kS(),ott=vO(),DO=class extends stt.default{constructor(){super(...arguments),this._walkAsync=itt.walk,this._readerStream=new ott.default(this._settings)}dynamic(e,r){return new Promise((o,a)=>{this._walkAsync(e,r,(n,u)=>{n===null?o(u):a(n)})})}async static(e,r){let o=[],a=this._readerStream.static(e,r);return new Promise((n,u)=>{a.once("error",u),a.on("data",A=>o.push(A)),a.once("end",()=>n(o))})}};PO.default=DO});var Hie=_(bO=>{"use strict";Object.defineProperty(bO,"__esModule",{value:!0});var tE=vf(),SO=class{constructor(e,r,o){this._patterns=e,this._settings=r,this._micromatchOptions=o,this._storage=[],this._fillStorage()}_fillStorage(){let e=tE.pattern.expandPatternsWithBraceExpansion(this._patterns);for(let r of e){let o=this._getPatternSegments(r),a=this._splitSegmentsIntoSections(o);this._storage.push({complete:a.length<=1,pattern:r,segments:o,sections:a})}}_getPatternSegments(e){return tE.pattern.getPatternParts(e,this._micromatchOptions).map(o=>tE.pattern.isDynamicPattern(o,this._settings)?{dynamic:!0,pattern:o,patternRe:tE.pattern.makeRe(o,this._micromatchOptions)}:{dynamic:!1,pattern:o})}_splitSegmentsIntoSections(e){return tE.array.splitWhen(e,r=>r.dynamic&&tE.pattern.hasGlobStar(r.pattern))}};bO.default=SO});var jie=_(kO=>{"use strict";Object.defineProperty(kO,"__esModule",{value:!0});var att=Hie(),xO=class extends att.default{match(e){let r=e.split("/"),o=r.length,a=this._storage.filter(n=>!n.complete||n.segments.length>o);for(let n of a){let u=n.sections[0];if(!n.complete&&o>u.length||r.every((p,h)=>{let C=n.segments[h];return!!(C.dynamic&&C.patternRe.test(p)||!C.dynamic&&C.pattern===p)}))return!0}return!1}};kO.default=xO});var qie=_(FO=>{"use strict";Object.defineProperty(FO,"__esModule",{value:!0});var QS=vf(),ltt=jie(),QO=class{constructor(e,r){this._settings=e,this._micromatchOptions=r}getFilter(e,r,o){let a=this._getMatcher(r),n=this._getNegativePatternsRe(o);return u=>this._filter(e,u,a,n)}_getMatcher(e){return new ltt.default(e,this._settings,this._micromatchOptions)}_getNegativePatternsRe(e){let r=e.filter(QS.pattern.isAffectDepthOfReadingPattern);return QS.pattern.convertPatternsToRe(r,this._micromatchOptions)}_filter(e,r,o,a){if(this._isSkippedByDeep(e,r.path)||this._isSkippedSymbolicLink(r))return!1;let n=QS.path.removeLeadingDotSegment(r.path);return this._isSkippedByPositivePatterns(n,o)?!1:this._isSkippedByNegativePatterns(n,a)}_isSkippedByDeep(e,r){return this._settings.deep===1/0?!1:this._getEntryLevel(e,r)>=this._settings.deep}_getEntryLevel(e,r){let o=r.split("/").length;if(e==="")return o;let a=e.split("/").length;return o-a}_isSkippedSymbolicLink(e){return!this._settings.followSymbolicLinks&&e.dirent.isSymbolicLink()}_isSkippedByPositivePatterns(e,r){return!this._settings.baseNameMatch&&!r.match(e)}_isSkippedByNegativePatterns(e,r){return!QS.pattern.matchAny(e,r)}};FO.default=QO});var Gie=_(TO=>{"use strict";Object.defineProperty(TO,"__esModule",{value:!0});var Ed=vf(),RO=class{constructor(e,r){this._settings=e,this._micromatchOptions=r,this.index=new Map}getFilter(e,r){let o=Ed.pattern.convertPatternsToRe(e,this._micromatchOptions),a=Ed.pattern.convertPatternsToRe(r,this._micromatchOptions);return n=>this._filter(n,o,a)}_filter(e,r,o){if(this._settings.unique&&this._isDuplicateEntry(e)||this._onlyFileFilter(e)||this._onlyDirectoryFilter(e)||this._isSkippedByAbsoluteNegativePatterns(e.path,o))return!1;let a=this._settings.baseNameMatch?e.name:e.path,n=e.dirent.isDirectory(),u=this._isMatchToPatterns(a,r,n)&&!this._isMatchToPatterns(e.path,o,n);return this._settings.unique&&u&&this._createIndexRecord(e),u}_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 o=Ed.path.makeAbsolute(this._settings.cwd,e);return Ed.pattern.matchAny(o,r)}_isMatchToPatterns(e,r,o){let a=Ed.path.removeLeadingDotSegment(e),n=Ed.pattern.matchAny(a,r);return!n&&o?Ed.pattern.matchAny(a+"/",r):n}};TO.default=RO});var Yie=_(LO=>{"use strict";Object.defineProperty(LO,"__esModule",{value:!0});var ctt=vf(),NO=class{constructor(e){this._settings=e}getFilter(){return e=>this._isNonFatalError(e)}_isNonFatalError(e){return ctt.errno.isEnoentCodeError(e)||this._settings.suppressErrors}};LO.default=NO});var Kie=_(MO=>{"use strict";Object.defineProperty(MO,"__esModule",{value:!0});var Wie=vf(),OO=class{constructor(e){this._settings=e}getTransformer(){return e=>this._transform(e)}_transform(e){let r=e.path;return this._settings.absolute&&(r=Wie.path.makeAbsolute(this._settings.cwd,r),r=Wie.path.unixify(r)),this._settings.markDirectories&&e.dirent.isDirectory()&&(r+="/"),this._settings.objectMode?Object.assign(Object.assign({},e),{path:r}):r}};MO.default=OO});var RS=_(_O=>{"use strict";Object.defineProperty(_O,"__esModule",{value:!0});var utt=Be("path"),Att=qie(),ftt=Gie(),ptt=Yie(),htt=Kie(),UO=class{constructor(e){this._settings=e,this.errorFilter=new ptt.default(this._settings),this.entryFilter=new ftt.default(this._settings,this._getMicromatchOptions()),this.deepFilter=new Att.default(this._settings,this._getMicromatchOptions()),this.entryTransformer=new htt.default(this._settings)}_getRootDirectory(e){return utt.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}}};_O.default=UO});var Vie=_(jO=>{"use strict";Object.defineProperty(jO,"__esModule",{value:!0});var gtt=_ie(),dtt=RS(),HO=class extends dtt.default{constructor(){super(...arguments),this._reader=new gtt.default(this._settings)}async read(e){let r=this._getRootDirectory(e),o=this._getReaderOptions(e);return(await this.api(r,e,o)).map(n=>o.transform(n))}api(e,r,o){return r.dynamic?this._reader.dynamic(e,o):this._reader.static(r.patterns,o)}};jO.default=HO});var zie=_(GO=>{"use strict";Object.defineProperty(GO,"__esModule",{value:!0});var mtt=Be("stream"),ytt=vO(),Ett=RS(),qO=class extends Ett.default{constructor(){super(...arguments),this._reader=new ytt.default(this._settings)}read(e){let r=this._getRootDirectory(e),o=this._getReaderOptions(e),a=this.api(r,e,o),n=new mtt.Readable({objectMode:!0,read:()=>{}});return a.once("error",u=>n.emit("error",u)).on("data",u=>n.emit("data",o.transform(u))).once("end",()=>n.emit("end")),n.once("close",()=>a.destroy()),n}api(e,r,o){return r.dynamic?this._reader.dynamic(e,o):this._reader.static(r.patterns,o)}};GO.default=qO});var Jie=_(WO=>{"use strict";Object.defineProperty(WO,"__esModule",{value:!0});var Ctt=yd(),wtt=xS(),Itt=kS(),YO=class extends Itt.default{constructor(){super(...arguments),this._walkSync=wtt.walkSync,this._statSync=Ctt.statSync}dynamic(e,r){return this._walkSync(e,r)}static(e,r){let o=[];for(let a of e){let n=this._getFullEntryPath(a),u=this._getEntry(n,a,r);u===null||!r.entryFilter(u)||o.push(u)}return o}_getEntry(e,r,o){try{let a=this._getStat(e);return this._makeEntry(a,r)}catch(a){if(o.errorFilter(a))return null;throw a}}_getStat(e){return this._statSync(e,this._fsStatSettings)}};WO.default=YO});var Xie=_(VO=>{"use strict";Object.defineProperty(VO,"__esModule",{value:!0});var Btt=Jie(),vtt=RS(),KO=class extends vtt.default{constructor(){super(...arguments),this._reader=new Btt.default(this._settings)}read(e){let r=this._getRootDirectory(e),o=this._getReaderOptions(e);return this.api(r,e,o).map(o.transform)}api(e,r,o){return r.dynamic?this._reader.dynamic(e,o):this._reader.static(r.patterns,o)}};VO.default=KO});var Zie=_(nE=>{"use strict";Object.defineProperty(nE,"__esModule",{value:!0});nE.DEFAULT_FILE_SYSTEM_ADAPTER=void 0;var rE=Be("fs"),Dtt=Be("os"),Ptt=Math.max(Dtt.cpus().length,1);nE.DEFAULT_FILE_SYSTEM_ADAPTER={lstat:rE.lstat,lstatSync:rE.lstatSync,stat:rE.stat,statSync:rE.statSync,readdir:rE.readdir,readdirSync:rE.readdirSync};var zO=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,Ptt),this.cwd=this._getValue(this._options.cwd,process.cwd()),this.deep=this._getValue(this._options.deep,1/0),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({},nE.DEFAULT_FILE_SYSTEM_ADAPTER),e)}};nE.default=zO});var TS=_((BNt,tse)=>{"use strict";var $ie=tie(),ese=nie(),Stt=Vie(),btt=zie(),xtt=Xie(),JO=Zie(),Cd=vf();async function XO(t,e){iE(t);let r=ZO(t,Stt.default,e),o=await Promise.all(r);return Cd.array.flatten(o)}(function(t){function e(u,A){iE(u);let p=ZO(u,xtt.default,A);return Cd.array.flatten(p)}t.sync=e;function r(u,A){iE(u);let p=ZO(u,btt.default,A);return Cd.stream.merge(p)}t.stream=r;function o(u,A){iE(u);let p=ese.transform([].concat(u)),h=new JO.default(A);return $ie.generate(p,h)}t.generateTasks=o;function a(u,A){iE(u);let p=new JO.default(A);return Cd.pattern.isDynamicPattern(u,p)}t.isDynamicPattern=a;function n(u){return iE(u),Cd.path.escape(u)}t.escapePath=n})(XO||(XO={}));function ZO(t,e,r){let o=ese.transform([].concat(t)),a=new JO.default(r),n=$ie.generate(o,a),u=new e(a);return n.map(u.read,u)}function iE(t){if(![].concat(t).every(o=>Cd.string.isString(o)&&!Cd.string.isEmpty(o)))throw new TypeError("Patterns must be a string (non empty) or an array of strings")}tse.exports=XO});var wn={};Vt(wn,{checksumFile:()=>LS,checksumPattern:()=>OS,makeHash:()=>Js});function Js(...t){let e=(0,NS.createHash)("sha512"),r="";for(let o of t)typeof o=="string"?r+=o:o&&(r&&(e.update(r),r=""),e.update(o));return r&&e.update(r),e.digest("hex")}async function LS(t,{baseFs:e,algorithm:r}={baseFs:oe,algorithm:"sha512"}){let o=await e.openPromise(t,"r");try{let n=Buffer.allocUnsafeSlow(65536),u=(0,NS.createHash)(r),A=0;for(;(A=await e.readPromise(o,n,0,65536))!==0;)u.update(A===65536?n:n.slice(0,A));return u.digest("hex")}finally{await e.closePromise(o)}}async function OS(t,{cwd:e}){let o=(await(0,$O.default)(t,{cwd:ue.fromPortablePath(e),onlyDirectories:!0})).map(A=>`${A}/**/*`),a=await(0,$O.default)([t,...o],{cwd:ue.fromPortablePath(e),onlyFiles:!1});a.sort();let n=await Promise.all(a.map(async A=>{let p=[Buffer.from(A)],h=ue.toPortablePath(A),C=await oe.lstatPromise(h);return C.isSymbolicLink()?p.push(Buffer.from(await oe.readlinkPromise(h))):C.isFile()&&p.push(await oe.readFilePromise(h)),p.join("\0")})),u=(0,NS.createHash)("sha512");for(let A of n)u.update(A);return u.digest("hex")}var NS,$O,rh=Et(()=>{Pt();NS=Be("crypto"),$O=$e(TS())});var W={};Vt(W,{areDescriptorsEqual:()=>ose,areIdentsEqual:()=>t1,areLocatorsEqual:()=>r1,areVirtualPackagesEquivalent:()=>Mtt,bindDescriptor:()=>Ltt,bindLocator:()=>Ott,convertDescriptorToLocator:()=>MS,convertLocatorToDescriptor:()=>tM,convertPackageToLocator:()=>Rtt,convertToIdent:()=>Ftt,convertToManifestRange:()=>Vtt,copyPackage:()=>ZI,devirtualizeDescriptor:()=>$I,devirtualizeLocator:()=>e1,ensureDevirtualizedDescriptor:()=>Ttt,ensureDevirtualizedLocator:()=>Ntt,getIdentVendorPath:()=>sM,isPackageCompatible:()=>qS,isVirtualDescriptor:()=>Pf,isVirtualLocator:()=>Hc,makeDescriptor:()=>In,makeIdent:()=>eA,makeLocator:()=>Qs,makeRange:()=>HS,parseDescriptor:()=>nh,parseFileStyleRange:()=>Wtt,parseIdent:()=>zs,parseLocator:()=>Sf,parseRange:()=>wd,prettyDependent:()=>FL,prettyDescriptor:()=>qn,prettyIdent:()=>cs,prettyLocator:()=>jr,prettyLocatorNoColors:()=>QL,prettyRange:()=>aE,prettyReference:()=>i1,prettyResolution:()=>JI,prettyWorkspace:()=>s1,renamePackage:()=>rM,slugifyIdent:()=>eM,slugifyLocator:()=>oE,sortDescriptors:()=>lE,stringifyDescriptor:()=>Sa,stringifyIdent:()=>fn,stringifyLocator:()=>ba,tryParseDescriptor:()=>n1,tryParseIdent:()=>ase,tryParseLocator:()=>_S,tryParseRange:()=>Ytt,virtualizeDescriptor:()=>nM,virtualizePackage:()=>iM});function eA(t,e){if(t?.startsWith("@"))throw new Error("Invalid scope: don't prefix it with '@'");return{identHash:Js(t,e),scope:t,name:e}}function In(t,e){return{identHash:t.identHash,scope:t.scope,name:t.name,descriptorHash:Js(t.identHash,e),range:e}}function Qs(t,e){return{identHash:t.identHash,scope:t.scope,name:t.name,locatorHash:Js(t.identHash,e),reference:e}}function Ftt(t){return{identHash:t.identHash,scope:t.scope,name:t.name}}function MS(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 Rtt(t){return{identHash:t.identHash,scope:t.scope,name:t.name,locatorHash:t.locatorHash,reference:t.reference}}function rM(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,conditions:t.conditions,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 ZI(t){return rM(t,t)}function nM(t,e){if(e.includes("#"))throw new Error("Invalid entropy");return In(t,`virtual:${e}#${t.range}`)}function iM(t,e){if(e.includes("#"))throw new Error("Invalid entropy");return rM(t,Qs(t,`virtual:${e}#${t.reference}`))}function Pf(t){return t.range.startsWith(XI)}function Hc(t){return t.reference.startsWith(XI)}function $I(t){if(!Pf(t))throw new Error("Not a virtual descriptor");return In(t,t.range.replace(US,""))}function e1(t){if(!Hc(t))throw new Error("Not a virtual descriptor");return Qs(t,t.reference.replace(US,""))}function Ttt(t){return Pf(t)?In(t,t.range.replace(US,"")):t}function Ntt(t){return Hc(t)?Qs(t,t.reference.replace(US,"")):t}function Ltt(t,e){return t.range.includes("::")?t:In(t,`${t.range}::${sE.default.stringify(e)}`)}function Ott(t,e){return t.reference.includes("::")?t:Qs(t,`${t.reference}::${sE.default.stringify(e)}`)}function t1(t,e){return t.identHash===e.identHash}function ose(t,e){return t.descriptorHash===e.descriptorHash}function r1(t,e){return t.locatorHash===e.locatorHash}function Mtt(t,e){if(!Hc(t))throw new Error("Invalid package type");if(!Hc(e))throw new Error("Invalid package type");if(!t1(t,e)||t.dependencies.size!==e.dependencies.size)return!1;for(let r of t.dependencies.values()){let o=e.dependencies.get(r.identHash);if(!o||!ose(r,o))return!1}return!0}function zs(t){let e=ase(t);if(!e)throw new Error(`Invalid ident (${t})`);return e}function ase(t){let e=t.match(Utt);if(!e)return null;let[,r,o]=e;return eA(typeof r<"u"?r:null,o)}function nh(t,e=!1){let r=n1(t,e);if(!r)throw new Error(`Invalid descriptor (${t})`);return r}function n1(t,e=!1){let r=e?t.match(_tt):t.match(Htt);if(!r)return null;let[,o,a,n]=r;if(n==="unknown")throw new Error(`Invalid range (${t})`);let u=typeof o<"u"?o:null,A=typeof n<"u"?n:"unknown";return In(eA(u,a),A)}function Sf(t,e=!1){let r=_S(t,e);if(!r)throw new Error(`Invalid locator (${t})`);return r}function _S(t,e=!1){let r=e?t.match(jtt):t.match(qtt);if(!r)return null;let[,o,a,n]=r;if(n==="unknown")throw new Error(`Invalid reference (${t})`);let u=typeof o<"u"?o:null,A=typeof n<"u"?n:"unknown";return Qs(eA(u,a),A)}function wd(t,e){let r=t.match(Gtt);if(r===null)throw new Error(`Invalid range (${t})`);let o=typeof r[1]<"u"?r[1]:null;if(typeof e?.requireProtocol=="string"&&o!==e.requireProtocol)throw new Error(`Invalid protocol (${o})`);if(e?.requireProtocol&&o===null)throw new Error(`Missing protocol (${o})`);let a=typeof r[3]<"u"?decodeURIComponent(r[2]):null;if(e?.requireSource&&a===null)throw new Error(`Missing source (${t})`);let n=typeof r[3]<"u"?decodeURIComponent(r[3]):decodeURIComponent(r[2]),u=e?.parseSelector?sE.default.parse(n):n,A=typeof r[4]<"u"?sE.default.parse(r[4]):null;return{protocol:o,source:a,selector:u,params:A}}function Ytt(t,e){try{return wd(t,e)}catch{return null}}function Wtt(t,{protocol:e}){let{selector:r,params:o}=wd(t,{requireProtocol:e,requireBindings:!0});if(typeof o.locator!="string")throw new Error(`Assertion failed: Invalid bindings for ${t}`);return{parentLocator:Sf(o.locator,!0),path:r}}function rse(t){return t=t.replaceAll("%","%25"),t=t.replaceAll(":","%3A"),t=t.replaceAll("#","%23"),t}function Ktt(t){return t===null?!1:Object.entries(t).length>0}function HS({protocol:t,source:e,selector:r,params:o}){let a="";return t!==null&&(a+=`${t}`),e!==null&&(a+=`${rse(e)}#`),a+=rse(r),Ktt(o)&&(a+=`::${sE.default.stringify(o)}`),a}function Vtt(t){let{params:e,protocol:r,source:o,selector:a}=wd(t);for(let n in e)n.startsWith("__")&&delete e[n];return HS({protocol:r,source:o,params:e,selector:a})}function fn(t){return t.scope?`@${t.scope}/${t.name}`:`${t.name}`}function Sa(t){return t.scope?`@${t.scope}/${t.name}@${t.range}`:`${t.name}@${t.range}`}function ba(t){return t.scope?`@${t.scope}/${t.name}@${t.reference}`:`${t.name}@${t.reference}`}function eM(t){return t.scope!==null?`@${t.scope}-${t.name}`:t.name}function oE(t){let{protocol:e,selector:r}=wd(t.reference),o=e!==null?e.replace(ztt,""):"exotic",a=nse.default.valid(r),n=a!==null?`${o}-${a}`:`${o}`,u=10;return t.scope?`${eM(t)}-${n}-${t.locatorHash.slice(0,u)}`:`${eM(t)}-${n}-${t.locatorHash.slice(0,u)}`}function cs(t,e){return e.scope?`${Mt(t,`@${e.scope}/`,yt.SCOPE)}${Mt(t,e.name,yt.NAME)}`:`${Mt(t,e.name,yt.NAME)}`}function jS(t){if(t.startsWith(XI)){let e=jS(t.substring(t.indexOf("#")+1)),r=t.substring(XI.length,XI.length+ktt);return`${e} [${r}]`}else return t.replace(Jtt,"?[...]")}function aE(t,e){return`${Mt(t,jS(e),yt.RANGE)}`}function qn(t,e){return`${cs(t,e)}${Mt(t,"@",yt.RANGE)}${aE(t,e.range)}`}function i1(t,e){return`${Mt(t,jS(e),yt.REFERENCE)}`}function jr(t,e){return`${cs(t,e)}${Mt(t,"@",yt.REFERENCE)}${i1(t,e.reference)}`}function QL(t){return`${fn(t)}@${jS(t.reference)}`}function lE(t){return ks(t,[e=>fn(e),e=>e.range])}function s1(t,e){return cs(t,e.anchoredLocator)}function JI(t,e,r){let o=Pf(e)?$I(e):e;return r===null?`${qn(t,o)} \u2192 ${kL(t).Cross}`:o.identHash===r.identHash?`${qn(t,o)} \u2192 ${i1(t,r.reference)}`:`${qn(t,o)} \u2192 ${jr(t,r)}`}function FL(t,e,r){return r===null?`${jr(t,e)}`:`${jr(t,e)} (via ${aE(t,r.range)})`}function sM(t){return`node_modules/${fn(t)}`}function qS(t,e){return t.conditions?Qtt(t.conditions,r=>{let[,o,a]=r.match(sse),n=e[o];return n?n.includes(a):!0}):!0}var sE,nse,ise,XI,ktt,sse,Qtt,US,Utt,_tt,Htt,jtt,qtt,Gtt,ztt,Jtt,bo=Et(()=>{sE=$e(Be("querystring")),nse=$e(Jn()),ise=$e(nX());ql();rh();jl();bo();XI="virtual:",ktt=5,sse=/(os|cpu|libc)=([a-z0-9_-]+)/,Qtt=(0,ise.makeParser)(sse);US=/^[^#]*#/;Utt=/^(?:@([^/]+?)\/)?([^@/]+)$/;_tt=/^(?:@([^/]+?)\/)?([^@/]+?)(?:@(.+))$/,Htt=/^(?:@([^/]+?)\/)?([^@/]+?)(?:@(.+))?$/;jtt=/^(?:@([^/]+?)\/)?([^@/]+?)(?:@(.+))$/,qtt=/^(?:@([^/]+?)\/)?([^@/]+?)(?:@(.+))?$/;Gtt=/^([^#:]*:)?((?:(?!::)[^#])*)(?:#((?:(?!::).)*))?(?:::(.*))?$/;ztt=/:$/;Jtt=/\?.*/});var lse,cse=Et(()=>{bo();lse={hooks:{reduceDependency:(t,e,r,o,{resolver:a,resolveOptions:n})=>{for(let{pattern:u,reference:A}of e.topLevelWorkspace.manifest.resolutions){if(u.from&&(u.from.fullName!==fn(r)||e.configuration.normalizeLocator(Qs(zs(u.from.fullName),u.from.description??r.reference)).locatorHash!==r.locatorHash)||u.descriptor.fullName!==fn(t)||e.configuration.normalizeDependency(In(Sf(u.descriptor.fullName),u.descriptor.description??t.range)).descriptorHash!==t.descriptorHash)continue;return a.bindDescriptor(e.configuration.normalizeDependency(In(t,A)),e.topLevelWorkspace.anchoredLocator,n)}return t},validateProject:async(t,e)=>{for(let r of t.workspaces){let o=s1(t.configuration,r);await t.configuration.triggerHook(a=>a.validateWorkspace,r,{reportWarning:(a,n)=>e.reportWarning(a,`${o}: ${n}`),reportError:(a,n)=>e.reportError(a,`${o}: ${n}`)})}},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 o of r.errors)e.reportWarning(57,o.message)}}}});var o1,Xn,Id=Et(()=>{o1=class{supportsDescriptor(e,r){return!!(e.range.startsWith(o1.protocol)||r.project.tryWorkspaceByDescriptor(e)!==null)}supportsLocator(e,r){return!!e.reference.startsWith(o1.protocol)}shouldPersistResolution(e,r){return!1}bindDescriptor(e,r,o){return e}getResolutionDependencies(e,r){return{}}async getCandidates(e,r,o){return[o.project.getWorkspaceByDescriptor(e).anchoredLocator]}async getSatisfying(e,r,o,a){let[n]=await this.getCandidates(e,r,a);return{locators:o.filter(u=>u.locatorHash===n.locatorHash),sorted:!1}}async resolve(e,r){let o=r.project.getWorkspaceByCwd(e.reference.slice(o1.protocol.length));return{...e,version:o.manifest.version||"0.0.0",languageName:"unknown",linkType:"SOFT",conditions:null,dependencies:r.project.configuration.normalizeDependencyMap(new Map([...o.manifest.dependencies,...o.manifest.devDependencies])),peerDependencies:new Map([...o.manifest.peerDependencies]),dependenciesMeta:o.manifest.dependenciesMeta,peerDependenciesMeta:o.manifest.peerDependenciesMeta,bin:o.manifest.bin}}},Xn=o1;Xn.protocol="workspace:"});var kr={};Vt(kr,{SemVer:()=>hse.SemVer,clean:()=>Ztt,getComparator:()=>fse,mergeComparators:()=>oM,satisfiesWithPrereleases:()=>bf,simplifyRanges:()=>aM,stringifyComparator:()=>pse,validRange:()=>xa});function bf(t,e,r=!1){if(!t)return!1;let o=`${e}${r}`,a=use.get(o);if(typeof a>"u")try{a=new ih.default.Range(e,{includePrerelease:!0,loose:r})}catch{return!1}finally{use.set(o,a||null)}else if(a===null)return!1;let n;try{n=new ih.default.SemVer(t,a)}catch{return!1}return a.test(n)?!0:(n.prerelease&&(n.prerelease=[]),a.set.some(u=>{for(let A of u)A.semver.prerelease&&(A.semver.prerelease=[]);return u.every(A=>A.test(n))}))}function xa(t){if(t.indexOf(":")!==-1)return null;let e=Ase.get(t);if(typeof e<"u")return e;try{e=new ih.default.Range(t)}catch{e=null}return Ase.set(t,e),e}function Ztt(t){let e=Xtt.exec(t);return e?e[1]:null}function fse(t){if(t.semver===ih.default.Comparator.ANY)return{gt:null,lt:null};switch(t.operator){case"":return{gt:[">=",t.semver],lt:["<=",t.semver]};case">":case">=":return{gt:[t.operator,t.semver],lt:null};case"<":case"<=":return{gt:null,lt:[t.operator,t.semver]};default:throw new Error(`Assertion failed: Unexpected comparator operator (${t.operator})`)}}function oM(t){if(t.length===0)return null;let e=null,r=null;for(let o of t){if(o.gt){let a=e!==null?ih.default.compare(o.gt[1],e[1]):null;(a===null||a>0||a===0&&o.gt[0]===">")&&(e=o.gt)}if(o.lt){let a=r!==null?ih.default.compare(o.lt[1],r[1]):null;(a===null||a<0||a===0&&o.lt[0]==="<")&&(r=o.lt)}}if(e&&r){let o=ih.default.compare(e[1],r[1]);if(o===0&&(e[0]===">"||r[0]==="<")||o>0)return null}return{gt:e,lt:r}}function pse(t){if(t.gt&&t.lt){if(t.gt[0]===">="&&t.lt[0]==="<="&&t.gt[1].version===t.lt[1].version)return t.gt[1].version;if(t.gt[0]===">="&&t.lt[0]==="<"){if(t.lt[1].version===`${t.gt[1].major+1}.0.0-0`)return`^${t.gt[1].version}`;if(t.lt[1].version===`${t.gt[1].major}.${t.gt[1].minor+1}.0-0`)return`~${t.gt[1].version}`}}let e=[];return t.gt&&e.push(t.gt[0]+t.gt[1].version),t.lt&&e.push(t.lt[0]+t.lt[1].version),e.length?e.join(" "):"*"}function aM(t){let e=t.map(o=>xa(o).set.map(a=>a.map(n=>fse(n)))),r=e.shift().map(o=>oM(o)).filter(o=>o!==null);for(let o of e){let a=[];for(let n of r)for(let u of o){let A=oM([n,...u]);A!==null&&a.push(A)}r=a}return r.length===0?null:r.map(o=>pse(o)).join(" || ")}var ih,hse,use,Ase,Xtt,xf=Et(()=>{ih=$e(Jn()),hse=$e(Jn()),use=new Map;Ase=new Map;Xtt=/^(?:[\sv=]*?)((0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+([0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?)(?:\s*)$/});function gse(t){let e=t.match(/^[ \t]+/m);return e?e[0]:" "}function dse(t){return t.charCodeAt(0)===65279?t.slice(1):t}function $o(t){return t.replace(/\\/g,"/")}function GS(t,{yamlCompatibilityMode:e}){return e?IL(t):typeof t>"u"||typeof t=="boolean"?t:null}function mse(t,e){let r=e.search(/[^!]/);if(r===-1)return"invalid";let o=r%2===0?"":"!",a=e.slice(r);return`${o}${t}=${a}`}function lM(t,e){return e.length===1?mse(t,e[0]):`(${e.map(r=>mse(t,r)).join(" | ")})`}var yse,cE,Ot,uE=Et(()=>{Pt();Nl();yse=$e(Jn());Id();jl();xf();bo();cE=class{constructor(){this.indent=" ";this.name=null;this.version=null;this.os=null;this.cpu=null;this.libc=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 Tn}={}){let o=V.join(e,"package.json");try{return await cE.fromFile(o,{baseFs:r})}catch(a){if(a.code==="ENOENT")return null;throw a}}static async find(e,{baseFs:r}={}){let o=await cE.tryFind(e,{baseFs:r});if(o===null)throw new Error("Manifest not found");return o}static async fromFile(e,{baseFs:r=new Tn}={}){let o=new cE;return await o.loadFile(e,{baseFs:r}),o}static fromText(e){let r=new cE;return r.loadFromText(e),r}loadFromText(e){let r;try{r=JSON.parse(dse(e)||"{}")}catch(o){throw o.message+=` (when parsing ${e})`,o}this.load(r),this.indent=gse(e)}async loadFile(e,{baseFs:r=new Tn}){let o=await r.readFilePromise(e,"utf8"),a;try{a=JSON.parse(dse(o)||"{}")}catch(n){throw n.message+=` (when parsing ${e})`,n}this.load(a),this.indent=gse(o)}load(e,{yamlCompatibilityMode:r=!1}={}){if(typeof e!="object"||e===null)throw new Error(`Utterly invalid manifest data (${e})`);this.raw=e;let o=[];if(this.name=null,typeof e.name=="string")try{this.name=zs(e.name)}catch{o.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 n=[];this.os=n;for(let u of e.os)typeof u!="string"?o.push(new Error("Parsing failed for the 'os' field")):n.push(u)}else this.os=null;if(Array.isArray(e.cpu)){let n=[];this.cpu=n;for(let u of e.cpu)typeof u!="string"?o.push(new Error("Parsing failed for the 'cpu' field")):n.push(u)}else this.cpu=null;if(Array.isArray(e.libc)){let n=[];this.libc=n;for(let u of e.libc)typeof u!="string"?o.push(new Error("Parsing failed for the 'libc' field")):n.push(u)}else this.libc=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=$o(e.main):this.main=null,typeof e.module=="string"?this.module=$o(e.module):this.module=null,e.browser!=null)if(typeof e.browser=="string")this.browser=$o(e.browser);else{this.browser=new Map;for(let[n,u]of Object.entries(e.browser))this.browser.set($o(n),typeof u=="string"?$o(u):u)}else this.browser=null;if(this.bin=new Map,typeof e.bin=="string")e.bin.trim()===""?o.push(new Error("Invalid bin field")):this.name!==null?this.bin.set(this.name.name,$o(e.bin)):o.push(new Error("String bin field, but no attached package name"));else if(typeof e.bin=="object"&&e.bin!==null)for(let[n,u]of Object.entries(e.bin)){if(typeof u!="string"||u.trim()===""){o.push(new Error(`Invalid bin definition for '${n}'`));continue}let A=zs(n);this.bin.set(A.name,$o(u))}if(this.scripts=new Map,typeof e.scripts=="object"&&e.scripts!==null)for(let[n,u]of Object.entries(e.scripts)){if(typeof u!="string"){o.push(new Error(`Invalid script definition for '${n}'`));continue}this.scripts.set(n,u)}if(this.dependencies=new Map,typeof e.dependencies=="object"&&e.dependencies!==null)for(let[n,u]of Object.entries(e.dependencies)){if(typeof u!="string"){o.push(new Error(`Invalid dependency range for '${n}'`));continue}let A;try{A=zs(n)}catch{o.push(new Error(`Parsing failed for the dependency name '${n}'`));continue}let p=In(A,u);this.dependencies.set(p.identHash,p)}if(this.devDependencies=new Map,typeof e.devDependencies=="object"&&e.devDependencies!==null)for(let[n,u]of Object.entries(e.devDependencies)){if(typeof u!="string"){o.push(new Error(`Invalid dependency range for '${n}'`));continue}let A;try{A=zs(n)}catch{o.push(new Error(`Parsing failed for the dependency name '${n}'`));continue}let p=In(A,u);this.devDependencies.set(p.identHash,p)}if(this.peerDependencies=new Map,typeof e.peerDependencies=="object"&&e.peerDependencies!==null)for(let[n,u]of Object.entries(e.peerDependencies)){let A;try{A=zs(n)}catch{o.push(new Error(`Parsing failed for the dependency name '${n}'`));continue}(typeof u!="string"||!u.startsWith(Xn.protocol)&&!xa(u))&&(o.push(new Error(`Invalid dependency range for '${n}'`)),u="*");let p=In(A,u);this.peerDependencies.set(p.identHash,p)}typeof e.workspaces=="object"&&e.workspaces!==null&&e.workspaces.nohoist&&o.push(new Error("'nohoist' is deprecated, please use 'installConfig.hoistingLimits' instead"));let a=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 n of a){if(typeof n!="string"){o.push(new Error(`Invalid workspace definition for '${n}'`));continue}this.workspaceDefinitions.push({pattern:n})}if(this.dependenciesMeta=new Map,typeof e.dependenciesMeta=="object"&&e.dependenciesMeta!==null)for(let[n,u]of Object.entries(e.dependenciesMeta)){if(typeof u!="object"||u===null){o.push(new Error(`Invalid meta field for '${n}`));continue}let A=nh(n),p=this.ensureDependencyMeta(A),h=GS(u.built,{yamlCompatibilityMode:r});if(h===null){o.push(new Error(`Invalid built meta field for '${n}'`));continue}let C=GS(u.optional,{yamlCompatibilityMode:r});if(C===null){o.push(new Error(`Invalid optional meta field for '${n}'`));continue}let I=GS(u.unplugged,{yamlCompatibilityMode:r});if(I===null){o.push(new Error(`Invalid unplugged meta field for '${n}'`));continue}Object.assign(p,{built:h,optional:C,unplugged:I})}if(this.peerDependenciesMeta=new Map,typeof e.peerDependenciesMeta=="object"&&e.peerDependenciesMeta!==null)for(let[n,u]of Object.entries(e.peerDependenciesMeta)){if(typeof u!="object"||u===null){o.push(new Error(`Invalid meta field for '${n}'`));continue}let A=nh(n),p=this.ensurePeerDependencyMeta(A),h=GS(u.optional,{yamlCompatibilityMode:r});if(h===null){o.push(new Error(`Invalid optional meta field for '${n}'`));continue}Object.assign(p,{optional:h})}if(this.resolutions=[],typeof e.resolutions=="object"&&e.resolutions!==null)for(let[n,u]of Object.entries(e.resolutions)){if(typeof u!="string"){o.push(new Error(`Invalid resolution entry for '${n}'`));continue}try{this.resolutions.push({pattern:UD(n),reference:u})}catch(A){o.push(A);continue}}if(Array.isArray(e.files)){this.files=new Set;for(let n of e.files){if(typeof n!="string"){o.push(new Error(`Invalid files entry for '${n}'`));continue}this.files.add(n)}}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=$o(e.publishConfig.main)),typeof e.publishConfig.module=="string"&&(this.publishConfig.module=$o(e.publishConfig.module)),e.publishConfig.browser!=null)if(typeof e.publishConfig.browser=="string")this.publishConfig.browser=$o(e.publishConfig.browser);else{this.publishConfig.browser=new Map;for(let[n,u]of Object.entries(e.publishConfig.browser))this.publishConfig.browser.set($o(n),typeof u=="string"?$o(u):u)}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,$o(e.publishConfig.bin)]]):o.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[n,u]of Object.entries(e.publishConfig.bin)){if(typeof u!="string"){o.push(new Error(`Invalid bin definition for '${n}'`));continue}this.publishConfig.bin.set(n,$o(u))}}if(Array.isArray(e.publishConfig.executableFiles)){this.publishConfig.executableFiles=new Set;for(let n of e.publishConfig.executableFiles){if(typeof n!="string"){o.push(new Error("Invalid executable file definition"));continue}this.publishConfig.executableFiles.add($o(n))}}}else this.publishConfig=null;if(typeof e.installConfig=="object"&&e.installConfig!==null){this.installConfig={};for(let n of Object.keys(e.installConfig))n==="hoistingLimits"?typeof e.installConfig.hoistingLimits=="string"?this.installConfig.hoistingLimits=e.installConfig.hoistingLimits:o.push(new Error("Invalid hoisting limits definition")):n=="selfReferences"?typeof e.installConfig.selfReferences=="boolean"?this.installConfig.selfReferences=e.installConfig.selfReferences:o.push(new Error("Invalid selfReferences definition, must be a boolean value")):o.push(new Error(`Unrecognized installConfig key: ${n}`))}else this.installConfig=null;if(typeof e.optionalDependencies=="object"&&e.optionalDependencies!==null)for(let[n,u]of Object.entries(e.optionalDependencies)){if(typeof u!="string"){o.push(new Error(`Invalid dependency range for '${n}'`));continue}let A;try{A=zs(n)}catch{o.push(new Error(`Parsing failed for the dependency name '${n}'`));continue}let p=In(A,u);this.dependencies.set(p.identHash,p);let h=In(A,"unknown"),C=this.ensureDependencyMeta(h);Object.assign(C,{optional:!0})}typeof e.preferUnplugged=="boolean"?this.preferUnplugged=e.preferUnplugged:this.preferUnplugged=null,this.errors=o}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))}getConditions(){let e=[];return this.os&&this.os.length>0&&e.push(lM("os",this.os)),this.cpu&&this.cpu.length>0&&e.push(lM("cpu",this.cpu)),this.libc&&this.libc.length>0&&e.push(lM("libc",this.libc)),e.length>0?e.join(" & "):null}ensureDependencyMeta(e){if(e.range!=="unknown"&&!yse.default.valid(e.range))throw new Error(`Invalid meta field range for '${Sa(e)}'`);let r=fn(e),o=e.range!=="unknown"?e.range:null,a=this.dependenciesMeta.get(r);a||this.dependenciesMeta.set(r,a=new Map);let n=a.get(o);return n||a.set(o,n={}),n}ensurePeerDependencyMeta(e){if(e.range!=="unknown")throw new Error(`Invalid meta field range for '${Sa(e)}'`);let r=fn(e),o=this.peerDependenciesMeta.get(r);return o||this.peerDependenciesMeta.set(r,o={}),o}setRawField(e,r,{after:o=[]}={}){let a=new Set(o.filter(n=>Object.hasOwn(this.raw,n)));if(a.size===0||Object.hasOwn(this.raw,e))this.raw[e]=r;else{let n=this.raw,u=this.raw={},A=!1;for(let p of Object.keys(n))u[p]=n[p],A||(a.delete(p),a.size===0&&(u[e]=r,A=!0))}}exportTo(e,{compatibilityMode:r=!0}={}){if(Object.assign(e,this.raw),this.name!==null?e.name=fn(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 n=this.browser;typeof n=="string"?e.browser=n:n instanceof Map&&(e.browser=Object.assign({},...Array.from(n.keys()).sort().map(u=>({[u]:n.get(u)}))))}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(n=>({[n]:this.bin.get(n)}))):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:n})=>n)}:e.workspaces=this.workspaceDefinitions.map(({pattern:n})=>n):this.raw.workspaces&&!Array.isArray(this.raw.workspaces)&&Object.keys(this.raw.workspaces).length>0?e.workspaces=this.raw.workspaces:delete e.workspaces;let o=[],a=[];for(let n of this.dependencies.values()){let u=this.dependenciesMeta.get(fn(n)),A=!1;if(r&&u){let p=u.get(null);p&&p.optional&&(A=!0)}A?a.push(n):o.push(n)}o.length>0?e.dependencies=Object.assign({},...lE(o).map(n=>({[fn(n)]:n.range}))):delete e.dependencies,a.length>0?e.optionalDependencies=Object.assign({},...lE(a).map(n=>({[fn(n)]:n.range}))):delete e.optionalDependencies,this.devDependencies.size>0?e.devDependencies=Object.assign({},...lE(this.devDependencies.values()).map(n=>({[fn(n)]:n.range}))):delete e.devDependencies,this.peerDependencies.size>0?e.peerDependencies=Object.assign({},...lE(this.peerDependencies.values()).map(n=>({[fn(n)]:n.range}))):delete e.peerDependencies,e.dependenciesMeta={};for(let[n,u]of ks(this.dependenciesMeta.entries(),([A,p])=>A))for(let[A,p]of ks(u.entries(),([h,C])=>h!==null?`0${h}`:"1")){let h=A!==null?Sa(In(zs(n),A)):n,C={...p};r&&A===null&&delete C.optional,Object.keys(C).length!==0&&(e.dependenciesMeta[h]=C)}if(Object.keys(e.dependenciesMeta).length===0&&delete e.dependenciesMeta,this.peerDependenciesMeta.size>0?e.peerDependenciesMeta=Object.assign({},...ks(this.peerDependenciesMeta.entries(),([n,u])=>n).map(([n,u])=>({[n]:u}))):delete e.peerDependenciesMeta,this.resolutions.length>0?e.resolutions=Object.assign({},...this.resolutions.map(({pattern:n,reference:u})=>({[_D(n)]:u}))):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,this.scripts!==null&&this.scripts.size>0){e.scripts??={};for(let n of Object.keys(e.scripts))this.scripts.has(n)||delete e.scripts[n];for(let[n,u]of this.scripts.entries())e.scripts[n]=u}else delete e.scripts;return e}},Ot=cE;Ot.fileName="package.json",Ot.allDependencies=["dependencies","devDependencies","peerDependencies"],Ot.hardDependencies=["dependencies","devDependencies"]});var Cse=_((MNt,Ese)=>{var $tt=_l(),ert=function(){return $tt.Date.now()};Ese.exports=ert});var Ise=_((UNt,wse)=>{var trt=/\s/;function rrt(t){for(var e=t.length;e--&&trt.test(t.charAt(e)););return e}wse.exports=rrt});var vse=_((_Nt,Bse)=>{var nrt=Ise(),irt=/^\s+/;function srt(t){return t&&t.slice(0,nrt(t)+1).replace(irt,"")}Bse.exports=srt});var AE=_((HNt,Dse)=>{var ort=fd(),art=zu(),lrt="[object Symbol]";function crt(t){return typeof t=="symbol"||art(t)&&ort(t)==lrt}Dse.exports=crt});var xse=_((jNt,bse)=>{var urt=vse(),Pse=il(),Art=AE(),Sse=0/0,frt=/^[-+]0x[0-9a-f]+$/i,prt=/^0b[01]+$/i,hrt=/^0o[0-7]+$/i,grt=parseInt;function drt(t){if(typeof t=="number")return t;if(Art(t))return Sse;if(Pse(t)){var e=typeof t.valueOf=="function"?t.valueOf():t;t=Pse(e)?e+"":e}if(typeof t!="string")return t===0?t:+t;t=urt(t);var r=prt.test(t);return r||hrt.test(t)?grt(t.slice(2),r?2:8):frt.test(t)?Sse:+t}bse.exports=drt});var Fse=_((qNt,Qse)=>{var mrt=il(),cM=Cse(),kse=xse(),yrt="Expected a function",Ert=Math.max,Crt=Math.min;function wrt(t,e,r){var o,a,n,u,A,p,h=0,C=!1,I=!1,v=!0;if(typeof t!="function")throw new TypeError(yrt);e=kse(e)||0,mrt(r)&&(C=!!r.leading,I="maxWait"in r,n=I?Ert(kse(r.maxWait)||0,e):n,v="trailing"in r?!!r.trailing:v);function x(Ae){var ye=o,ae=a;return o=a=void 0,h=Ae,u=t.apply(ae,ye),u}function E(Ae){return h=Ae,A=setTimeout(U,e),C?x(Ae):u}function R(Ae){var ye=Ae-p,ae=Ae-h,Ie=e-ye;return I?Crt(Ie,n-ae):Ie}function L(Ae){var ye=Ae-p,ae=Ae-h;return p===void 0||ye>=e||ye<0||I&&ae>=n}function U(){var Ae=cM();if(L(Ae))return z(Ae);A=setTimeout(U,R(Ae))}function z(Ae){return A=void 0,v&&o?x(Ae):(o=a=void 0,u)}function te(){A!==void 0&&clearTimeout(A),h=0,o=p=a=A=void 0}function le(){return A===void 0?u:z(cM())}function he(){var Ae=cM(),ye=L(Ae);if(o=arguments,a=this,p=Ae,ye){if(A===void 0)return E(p);if(I)return clearTimeout(A),A=setTimeout(U,e),x(p)}return A===void 0&&(A=setTimeout(U,e)),u}return he.cancel=te,he.flush=le,he}Qse.exports=wrt});var uM=_((GNt,Rse)=>{var Irt=Fse(),Brt=il(),vrt="Expected a function";function Drt(t,e,r){var o=!0,a=!0;if(typeof t!="function")throw new TypeError(vrt);return Brt(r)&&(o="leading"in r?!!r.leading:o,a="trailing"in r?!!r.trailing:a),Irt(t,e,{leading:o,maxWait:e,trailing:a})}Rse.exports=Drt});function Srt(t){return typeof t.reportCode<"u"}var Tse,Nse,Lse,Prt,Jt,Xs,Yl=Et(()=>{Tse=$e(uM()),Nse=Be("stream"),Lse=Be("string_decoder"),Prt=15,Jt=class extends Error{constructor(r,o,a){super(o);this.reportExtra=a;this.reportCode=r}};Xs=class{constructor(){this.cacheHits=new Set;this.cacheMisses=new Set;this.reportedInfos=new Set;this.reportedWarnings=new Set;this.reportedErrors=new Set}getRecommendedLength(){return 180}reportCacheHit(e){this.cacheHits.add(e.locatorHash)}reportCacheMiss(e,r){this.cacheMisses.add(e.locatorHash)}static progressViaCounter(e){let r=0,o,a=new Promise(p=>{o=p}),n=p=>{let h=o;a=new Promise(C=>{o=C}),r=p,h()},u=(p=0)=>{n(r+1)},A=async function*(){for(;r{r=u}),a=(0,Tse.default)(u=>{let A=r;o=new Promise(p=>{r=p}),e=u,A()},1e3/Prt),n=async function*(){for(;;)await o,yield{title:e}}();return{[Symbol.asyncIterator](){return n},hasProgress:!1,hasTitle:!0,setTitle:a}}async startProgressPromise(e,r){let o=this.reportProgress(e);try{return await r(e)}finally{o.stop()}}startProgressSync(e,r){let o=this.reportProgress(e);try{return r(e)}finally{o.stop()}}reportInfoOnce(e,r,o){let a=o&&o.key?o.key:r;this.reportedInfos.has(a)||(this.reportedInfos.add(a),this.reportInfo(e,r),o?.reportExtra?.(this))}reportWarningOnce(e,r,o){let a=o&&o.key?o.key:r;this.reportedWarnings.has(a)||(this.reportedWarnings.add(a),this.reportWarning(e,r),o?.reportExtra?.(this))}reportErrorOnce(e,r,o){let a=o&&o.key?o.key:r;this.reportedErrors.has(a)||(this.reportedErrors.add(a),this.reportError(e,r),o?.reportExtra?.(this))}reportExceptionOnce(e){Srt(e)?this.reportErrorOnce(e.reportCode,e.message,{key:e,reportExtra:e.reportExtra}):this.reportErrorOnce(1,e.stack||e.message,{key:e})}createStreamReporter(e=null){let r=new Nse.PassThrough,o=new Lse.StringDecoder,a="";return r.on("data",n=>{let u=o.write(n),A;do if(A=u.indexOf(` +`),A!==-1){let p=a+u.substring(0,A);u=u.substring(A+1),a="",e!==null?this.reportInfo(null,`${e} ${p}`):this.reportInfo(null,p)}while(A!==-1);a+=u}),r.on("end",()=>{let n=o.end();n!==""&&(e!==null?this.reportInfo(null,`${e} ${n}`):this.reportInfo(null,n))}),r}}});var fE,AM=Et(()=>{Yl();bo();fE=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 o=this.fetchers.find(a=>a.supports(e,r));return o||null}getFetcher(e,r){let o=this.fetchers.find(a=>a.supports(e,r));if(!o)throw new Jt(11,`${jr(r.project.configuration,e)} isn't supported by any available fetcher`);return o}}});var Bd,fM=Et(()=>{bo();Bd=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,o){return this.getResolverByDescriptor(e,o).bindDescriptor(e,r,o)}getResolutionDependencies(e,r){return this.getResolverByDescriptor(e,r).getResolutionDependencies(e,r)}async getCandidates(e,r,o){return await this.getResolverByDescriptor(e,o).getCandidates(e,r,o)}async getSatisfying(e,r,o,a){return this.getResolverByDescriptor(e,a).getSatisfying(e,r,o,a)}async resolve(e,r){return await this.getResolverByLocator(e,r).resolve(e,r)}tryResolverByDescriptor(e,r){let o=this.resolvers.find(a=>a.supportsDescriptor(e,r));return o||null}getResolverByDescriptor(e,r){let o=this.resolvers.find(a=>a.supportsDescriptor(e,r));if(!o)throw new Error(`${qn(r.project.configuration,e)} isn't supported by any available resolver`);return o}tryResolverByLocator(e,r){let o=this.resolvers.find(a=>a.supportsLocator(e,r));return o||null}getResolverByLocator(e,r){let o=this.resolvers.find(a=>a.supportsLocator(e,r));if(!o)throw new Error(`${jr(r.project.configuration,e)} isn't supported by any available resolver`);return o}}});var pE,pM=Et(()=>{Pt();bo();pE=class{supports(e){return!!e.reference.startsWith("virtual:")}getLocalPath(e,r){let o=e.reference.indexOf("#");if(o===-1)throw new Error("Invalid virtual package reference");let a=e.reference.slice(o+1),n=Qs(e,a);return r.fetcher.getLocalPath(n,r)}async fetch(e,r){let o=e.reference.indexOf("#");if(o===-1)throw new Error("Invalid virtual package reference");let a=e.reference.slice(o+1),n=Qs(e,a),u=await r.fetcher.fetch(n,r);return await this.ensureVirtualLink(e,u,r)}getLocatorFilename(e){return oE(e)}async ensureVirtualLink(e,r,o){let a=r.packageFs.getRealPath(),n=o.project.configuration.get("virtualFolder"),u=this.getLocatorFilename(e),A=mi.makeVirtualPath(n,u,a),p=new Uu(A,{baseFs:r.packageFs,pathUtils:V});return{...r,packageFs:p}}}});var hE,a1,Ose=Et(()=>{hE=class{static isVirtualDescriptor(e){return!!e.range.startsWith(hE.protocol)}static isVirtualLocator(e){return!!e.reference.startsWith(hE.protocol)}supportsDescriptor(e,r){return hE.isVirtualDescriptor(e)}supportsLocator(e,r){return hE.isVirtualLocator(e)}shouldPersistResolution(e,r){return!1}bindDescriptor(e,r,o){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,o){throw new Error('Assertion failed: calling "getCandidates" on a virtual descriptor is unsupported')}async getSatisfying(e,r,o,a){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')}},a1=hE;a1.protocol="virtual:"});var gE,hM=Et(()=>{Pt();Id();gE=class{supports(e){return!!e.reference.startsWith(Xn.protocol)}getLocalPath(e,r){return this.getWorkspace(e,r).cwd}async fetch(e,r){let o=this.getWorkspace(e,r).cwd;return{packageFs:new gn(o),prefixPath:Bt.dot,localPath:o}}getWorkspace(e,r){return r.project.getWorkspaceByCwd(e.reference.slice(Xn.protocol.length))}}});function l1(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}function Mse(t){return typeof t>"u"?3:l1(t)?0:Array.isArray(t)?1:2}function mM(t,e){return Object.hasOwn(t,e)}function xrt(t){return l1(t)&&mM(t,"onConflict")&&typeof t.onConflict=="string"}function krt(t){if(typeof t>"u")return{onConflict:"default",value:t};if(!xrt(t))return{onConflict:"default",value:t};if(mM(t,"value"))return t;let{onConflict:e,...r}=t;return{onConflict:e,value:r}}function Use(t,e){let r=l1(t)&&mM(t,e)?t[e]:void 0;return krt(r)}function dE(t,e){return[t,e,_se]}function yM(t){return Array.isArray(t)?t[2]===_se:!1}function gM(t,e){if(l1(t)){let r={};for(let o of Object.keys(t))r[o]=gM(t[o],e);return dE(e,r)}return Array.isArray(t)?dE(e,t.map(r=>gM(r,e))):dE(e,t)}function dM(t,e,r,o,a){let n,u=[],A=a,p=0;for(let C=a-1;C>=o;--C){let[I,v]=t[C],{onConflict:x,value:E}=Use(v,r),R=Mse(E);if(R!==3){if(n??=R,R!==n||x==="hardReset"){p=A;break}if(R===2)return dE(I,E);if(u.unshift([I,E]),x==="reset"){p=C;break}x==="extend"&&C===o&&(o=0),A=C}}if(typeof n>"u")return null;let h=u.map(([C])=>C).join(", ");switch(n){case 1:return dE(h,new Array().concat(...u.map(([C,I])=>I.map(v=>gM(v,C)))));case 0:{let C=Object.assign({},...u.map(([,R])=>R)),I=Object.keys(C),v={},x=t.map(([R,L])=>[R,Use(L,r).value]),E=brt(x,([R,L])=>{let U=Mse(L);return U!==0&&U!==3});if(E!==-1){let R=x.slice(E+1);for(let L of I)v[L]=dM(R,e,L,0,R.length)}else for(let R of I)v[R]=dM(x,e,R,p,x.length);return dE(h,v)}default:throw new Error("Assertion failed: Non-extendable value type")}}function Hse(t){return dM(t.map(([e,r])=>[e,{["."]:r}]),[],".",0,t.length)}function c1(t){return yM(t)?t[1]:t}function YS(t){let e=yM(t)?t[1]:t;if(Array.isArray(e))return e.map(r=>YS(r));if(l1(e)){let r={};for(let[o,a]of Object.entries(e))r[o]=YS(a);return r}return e}function EM(t){return yM(t)?t[0]:null}var brt,_se,jse=Et(()=>{brt=(t,e,r)=>{let o=[...t];return o.reverse(),o.findIndex(e,r)};_se=Symbol()});var WS={};Vt(WS,{getDefaultGlobalFolder:()=>wM,getHomeFolder:()=>mE,isFolderInside:()=>IM});function wM(){if(process.platform==="win32"){let t=ue.toPortablePath(process.env.LOCALAPPDATA||ue.join((0,CM.homedir)(),"AppData","Local"));return V.resolve(t,"Yarn/Berry")}if(process.env.XDG_DATA_HOME){let t=ue.toPortablePath(process.env.XDG_DATA_HOME);return V.resolve(t,"yarn/berry")}return V.resolve(mE(),".yarn/berry")}function mE(){return ue.toPortablePath((0,CM.homedir)()||"/usr/local/share")}function IM(t,e){let r=V.relative(e,t);return r&&!r.startsWith("..")&&!V.isAbsolute(r)}var CM,KS=Et(()=>{Pt();CM=Be("os")});var Wse=_(yE=>{"use strict";var nLt=Be("net"),Frt=Be("tls"),BM=Be("http"),qse=Be("https"),Rrt=Be("events"),iLt=Be("assert"),Trt=Be("util");yE.httpOverHttp=Nrt;yE.httpsOverHttp=Lrt;yE.httpOverHttps=Ort;yE.httpsOverHttps=Mrt;function Nrt(t){var e=new kf(t);return e.request=BM.request,e}function Lrt(t){var e=new kf(t);return e.request=BM.request,e.createSocket=Gse,e.defaultPort=443,e}function Ort(t){var e=new kf(t);return e.request=qse.request,e}function Mrt(t){var e=new kf(t);return e.request=qse.request,e.createSocket=Gse,e.defaultPort=443,e}function kf(t){var e=this;e.options=t||{},e.proxyOptions=e.options.proxy||{},e.maxSockets=e.options.maxSockets||BM.Agent.defaultMaxSockets,e.requests=[],e.sockets=[],e.on("free",function(o,a,n,u){for(var A=Yse(a,n,u),p=0,h=e.requests.length;p=this.maxSockets){n.requests.push(u);return}n.createSocket(u,function(A){A.on("free",p),A.on("close",h),A.on("agentRemove",h),e.onSocket(A);function p(){n.emit("free",A,u)}function h(C){n.removeSocket(A),A.removeListener("free",p),A.removeListener("close",h),A.removeListener("agentRemove",h)}})};kf.prototype.createSocket=function(e,r){var o=this,a={};o.sockets.push(a);var n=vM({},o.proxyOptions,{method:"CONNECT",path:e.host+":"+e.port,agent:!1,headers:{host:e.host+":"+e.port}});e.localAddress&&(n.localAddress=e.localAddress),n.proxyAuth&&(n.headers=n.headers||{},n.headers["Proxy-Authorization"]="Basic "+new Buffer(n.proxyAuth).toString("base64")),sh("making CONNECT request");var u=o.request(n);u.useChunkedEncodingByDefault=!1,u.once("response",A),u.once("upgrade",p),u.once("connect",h),u.once("error",C),u.end();function A(I){I.upgrade=!0}function p(I,v,x){process.nextTick(function(){h(I,v,x)})}function h(I,v,x){if(u.removeAllListeners(),v.removeAllListeners(),I.statusCode!==200){sh("tunneling socket could not be established, statusCode=%d",I.statusCode),v.destroy();var E=new Error("tunneling socket could not be established, statusCode="+I.statusCode);E.code="ECONNRESET",e.request.emit("error",E),o.removeSocket(a);return}if(x.length>0){sh("got illegal response body from proxy"),v.destroy();var E=new Error("got illegal response body from proxy");E.code="ECONNRESET",e.request.emit("error",E),o.removeSocket(a);return}return sh("tunneling connection has established"),o.sockets[o.sockets.indexOf(a)]=v,r(v)}function C(I){u.removeAllListeners(),sh(`tunneling socket could not be established, cause=%s +`,I.message,I.stack);var v=new Error("tunneling socket could not be established, cause="+I.message);v.code="ECONNRESET",e.request.emit("error",v),o.removeSocket(a)}};kf.prototype.removeSocket=function(e){var r=this.sockets.indexOf(e);if(r!==-1){this.sockets.splice(r,1);var o=this.requests.shift();o&&this.createSocket(o,function(a){o.request.onSocket(a)})}};function Gse(t,e){var r=this;kf.prototype.createSocket.call(r,t,function(o){var a=t.request.getHeader("host"),n=vM({},r.options,{socket:o,servername:a?a.replace(/:.*$/,""):t.host}),u=Frt.connect(0,n);r.sockets[r.sockets.indexOf(o)]=u,e(u)})}function Yse(t,e,r){return typeof t=="string"?{host:t,port:e,localAddress:r}:t}function vM(t){for(var e=1,r=arguments.length;e{Kse.exports=Wse()});var Ff=_((Qf,VS)=>{"use strict";Object.defineProperty(Qf,"__esModule",{value:!0});var zse=["Int8Array","Uint8Array","Uint8ClampedArray","Int16Array","Uint16Array","Int32Array","Uint32Array","Float32Array","Float64Array","BigInt64Array","BigUint64Array"];function Urt(t){return zse.includes(t)}var _rt=["Function","Generator","AsyncGenerator","GeneratorFunction","AsyncGeneratorFunction","AsyncFunction","Observable","Array","Buffer","Object","RegExp","Date","Error","Map","Set","WeakMap","WeakSet","ArrayBuffer","SharedArrayBuffer","DataView","Promise","URL","FormData","URLSearchParams","HTMLElement",...zse];function Hrt(t){return _rt.includes(t)}var jrt=["null","undefined","string","number","bigint","boolean","symbol"];function qrt(t){return jrt.includes(t)}function EE(t){return e=>typeof e===t}var{toString:Jse}=Object.prototype,u1=t=>{let e=Jse.call(t).slice(8,-1);if(/HTML\w+Element/.test(e)&&Se.domElement(t))return"HTMLElement";if(Hrt(e))return e},ei=t=>e=>u1(e)===t;function Se(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(Se.observable(t))return"Observable";if(Se.array(t))return"Array";if(Se.buffer(t))return"Buffer";let e=u1(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"}Se.undefined=EE("undefined");Se.string=EE("string");var Grt=EE("number");Se.number=t=>Grt(t)&&!Se.nan(t);Se.bigint=EE("bigint");Se.function_=EE("function");Se.null_=t=>t===null;Se.class_=t=>Se.function_(t)&&t.toString().startsWith("class ");Se.boolean=t=>t===!0||t===!1;Se.symbol=EE("symbol");Se.numericString=t=>Se.string(t)&&!Se.emptyStringOrWhitespace(t)&&!Number.isNaN(Number(t));Se.array=(t,e)=>Array.isArray(t)?Se.function_(e)?t.every(e):!0:!1;Se.buffer=t=>{var e,r,o,a;return(a=(o=(r=(e=t)===null||e===void 0?void 0:e.constructor)===null||r===void 0?void 0:r.isBuffer)===null||o===void 0?void 0:o.call(r,t))!==null&&a!==void 0?a:!1};Se.nullOrUndefined=t=>Se.null_(t)||Se.undefined(t);Se.object=t=>!Se.null_(t)&&(typeof t=="object"||Se.function_(t));Se.iterable=t=>{var e;return Se.function_((e=t)===null||e===void 0?void 0:e[Symbol.iterator])};Se.asyncIterable=t=>{var e;return Se.function_((e=t)===null||e===void 0?void 0:e[Symbol.asyncIterator])};Se.generator=t=>Se.iterable(t)&&Se.function_(t.next)&&Se.function_(t.throw);Se.asyncGenerator=t=>Se.asyncIterable(t)&&Se.function_(t.next)&&Se.function_(t.throw);Se.nativePromise=t=>ei("Promise")(t);var Yrt=t=>{var e,r;return Se.function_((e=t)===null||e===void 0?void 0:e.then)&&Se.function_((r=t)===null||r===void 0?void 0:r.catch)};Se.promise=t=>Se.nativePromise(t)||Yrt(t);Se.generatorFunction=ei("GeneratorFunction");Se.asyncGeneratorFunction=t=>u1(t)==="AsyncGeneratorFunction";Se.asyncFunction=t=>u1(t)==="AsyncFunction";Se.boundFunction=t=>Se.function_(t)&&!t.hasOwnProperty("prototype");Se.regExp=ei("RegExp");Se.date=ei("Date");Se.error=ei("Error");Se.map=t=>ei("Map")(t);Se.set=t=>ei("Set")(t);Se.weakMap=t=>ei("WeakMap")(t);Se.weakSet=t=>ei("WeakSet")(t);Se.int8Array=ei("Int8Array");Se.uint8Array=ei("Uint8Array");Se.uint8ClampedArray=ei("Uint8ClampedArray");Se.int16Array=ei("Int16Array");Se.uint16Array=ei("Uint16Array");Se.int32Array=ei("Int32Array");Se.uint32Array=ei("Uint32Array");Se.float32Array=ei("Float32Array");Se.float64Array=ei("Float64Array");Se.bigInt64Array=ei("BigInt64Array");Se.bigUint64Array=ei("BigUint64Array");Se.arrayBuffer=ei("ArrayBuffer");Se.sharedArrayBuffer=ei("SharedArrayBuffer");Se.dataView=ei("DataView");Se.directInstanceOf=(t,e)=>Object.getPrototypeOf(t)===e.prototype;Se.urlInstance=t=>ei("URL")(t);Se.urlString=t=>{if(!Se.string(t))return!1;try{return new URL(t),!0}catch{return!1}};Se.truthy=t=>Boolean(t);Se.falsy=t=>!t;Se.nan=t=>Number.isNaN(t);Se.primitive=t=>Se.null_(t)||qrt(typeof t);Se.integer=t=>Number.isInteger(t);Se.safeInteger=t=>Number.isSafeInteger(t);Se.plainObject=t=>{if(Jse.call(t)!=="[object Object]")return!1;let e=Object.getPrototypeOf(t);return e===null||e===Object.getPrototypeOf({})};Se.typedArray=t=>Urt(u1(t));var Wrt=t=>Se.safeInteger(t)&&t>=0;Se.arrayLike=t=>!Se.nullOrUndefined(t)&&!Se.function_(t)&&Wrt(t.length);Se.inRange=(t,e)=>{if(Se.number(e))return t>=Math.min(0,e)&&t<=Math.max(e,0);if(Se.array(e)&&e.length===2)return t>=Math.min(...e)&&t<=Math.max(...e);throw new TypeError(`Invalid range: ${JSON.stringify(e)}`)};var Krt=1,Vrt=["innerHTML","ownerDocument","style","attributes","nodeValue"];Se.domElement=t=>Se.object(t)&&t.nodeType===Krt&&Se.string(t.nodeName)&&!Se.plainObject(t)&&Vrt.every(e=>e in t);Se.observable=t=>{var e,r,o,a;return t?t===((r=(e=t)[Symbol.observable])===null||r===void 0?void 0:r.call(e))||t===((a=(o=t)["@@observable"])===null||a===void 0?void 0:a.call(o)):!1};Se.nodeStream=t=>Se.object(t)&&Se.function_(t.pipe)&&!Se.observable(t);Se.infinite=t=>t===1/0||t===-1/0;var Xse=t=>e=>Se.integer(e)&&Math.abs(e%2)===t;Se.evenInteger=Xse(0);Se.oddInteger=Xse(1);Se.emptyArray=t=>Se.array(t)&&t.length===0;Se.nonEmptyArray=t=>Se.array(t)&&t.length>0;Se.emptyString=t=>Se.string(t)&&t.length===0;Se.nonEmptyString=t=>Se.string(t)&&t.length>0;var zrt=t=>Se.string(t)&&!/\S/.test(t);Se.emptyStringOrWhitespace=t=>Se.emptyString(t)||zrt(t);Se.emptyObject=t=>Se.object(t)&&!Se.map(t)&&!Se.set(t)&&Object.keys(t).length===0;Se.nonEmptyObject=t=>Se.object(t)&&!Se.map(t)&&!Se.set(t)&&Object.keys(t).length>0;Se.emptySet=t=>Se.set(t)&&t.size===0;Se.nonEmptySet=t=>Se.set(t)&&t.size>0;Se.emptyMap=t=>Se.map(t)&&t.size===0;Se.nonEmptyMap=t=>Se.map(t)&&t.size>0;Se.propertyKey=t=>Se.any([Se.string,Se.number,Se.symbol],t);Se.formData=t=>ei("FormData")(t);Se.urlSearchParams=t=>ei("URLSearchParams")(t);var Zse=(t,e,r)=>{if(!Se.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)};Se.any=(t,...e)=>(Se.array(t)?t:[t]).some(o=>Zse(Array.prototype.some,o,e));Se.all=(t,...e)=>Zse(Array.prototype.every,t,e);var Ht=(t,e,r,o={})=>{if(!t){let{multipleValues:a}=o,n=a?`received values of types ${[...new Set(r.map(u=>`\`${Se(u)}\``))].join(", ")}`:`received value of type \`${Se(r)}\``;throw new TypeError(`Expected value which is \`${e}\`, ${n}.`)}};Qf.assert={undefined:t=>Ht(Se.undefined(t),"undefined",t),string:t=>Ht(Se.string(t),"string",t),number:t=>Ht(Se.number(t),"number",t),bigint:t=>Ht(Se.bigint(t),"bigint",t),function_:t=>Ht(Se.function_(t),"Function",t),null_:t=>Ht(Se.null_(t),"null",t),class_:t=>Ht(Se.class_(t),"Class",t),boolean:t=>Ht(Se.boolean(t),"boolean",t),symbol:t=>Ht(Se.symbol(t),"symbol",t),numericString:t=>Ht(Se.numericString(t),"string with a number",t),array:(t,e)=>{Ht(Se.array(t),"Array",t),e&&t.forEach(e)},buffer:t=>Ht(Se.buffer(t),"Buffer",t),nullOrUndefined:t=>Ht(Se.nullOrUndefined(t),"null or undefined",t),object:t=>Ht(Se.object(t),"Object",t),iterable:t=>Ht(Se.iterable(t),"Iterable",t),asyncIterable:t=>Ht(Se.asyncIterable(t),"AsyncIterable",t),generator:t=>Ht(Se.generator(t),"Generator",t),asyncGenerator:t=>Ht(Se.asyncGenerator(t),"AsyncGenerator",t),nativePromise:t=>Ht(Se.nativePromise(t),"native Promise",t),promise:t=>Ht(Se.promise(t),"Promise",t),generatorFunction:t=>Ht(Se.generatorFunction(t),"GeneratorFunction",t),asyncGeneratorFunction:t=>Ht(Se.asyncGeneratorFunction(t),"AsyncGeneratorFunction",t),asyncFunction:t=>Ht(Se.asyncFunction(t),"AsyncFunction",t),boundFunction:t=>Ht(Se.boundFunction(t),"Function",t),regExp:t=>Ht(Se.regExp(t),"RegExp",t),date:t=>Ht(Se.date(t),"Date",t),error:t=>Ht(Se.error(t),"Error",t),map:t=>Ht(Se.map(t),"Map",t),set:t=>Ht(Se.set(t),"Set",t),weakMap:t=>Ht(Se.weakMap(t),"WeakMap",t),weakSet:t=>Ht(Se.weakSet(t),"WeakSet",t),int8Array:t=>Ht(Se.int8Array(t),"Int8Array",t),uint8Array:t=>Ht(Se.uint8Array(t),"Uint8Array",t),uint8ClampedArray:t=>Ht(Se.uint8ClampedArray(t),"Uint8ClampedArray",t),int16Array:t=>Ht(Se.int16Array(t),"Int16Array",t),uint16Array:t=>Ht(Se.uint16Array(t),"Uint16Array",t),int32Array:t=>Ht(Se.int32Array(t),"Int32Array",t),uint32Array:t=>Ht(Se.uint32Array(t),"Uint32Array",t),float32Array:t=>Ht(Se.float32Array(t),"Float32Array",t),float64Array:t=>Ht(Se.float64Array(t),"Float64Array",t),bigInt64Array:t=>Ht(Se.bigInt64Array(t),"BigInt64Array",t),bigUint64Array:t=>Ht(Se.bigUint64Array(t),"BigUint64Array",t),arrayBuffer:t=>Ht(Se.arrayBuffer(t),"ArrayBuffer",t),sharedArrayBuffer:t=>Ht(Se.sharedArrayBuffer(t),"SharedArrayBuffer",t),dataView:t=>Ht(Se.dataView(t),"DataView",t),urlInstance:t=>Ht(Se.urlInstance(t),"URL",t),urlString:t=>Ht(Se.urlString(t),"string with a URL",t),truthy:t=>Ht(Se.truthy(t),"truthy",t),falsy:t=>Ht(Se.falsy(t),"falsy",t),nan:t=>Ht(Se.nan(t),"NaN",t),primitive:t=>Ht(Se.primitive(t),"primitive",t),integer:t=>Ht(Se.integer(t),"integer",t),safeInteger:t=>Ht(Se.safeInteger(t),"integer",t),plainObject:t=>Ht(Se.plainObject(t),"plain object",t),typedArray:t=>Ht(Se.typedArray(t),"TypedArray",t),arrayLike:t=>Ht(Se.arrayLike(t),"array-like",t),domElement:t=>Ht(Se.domElement(t),"HTMLElement",t),observable:t=>Ht(Se.observable(t),"Observable",t),nodeStream:t=>Ht(Se.nodeStream(t),"Node.js Stream",t),infinite:t=>Ht(Se.infinite(t),"infinite number",t),emptyArray:t=>Ht(Se.emptyArray(t),"empty array",t),nonEmptyArray:t=>Ht(Se.nonEmptyArray(t),"non-empty array",t),emptyString:t=>Ht(Se.emptyString(t),"empty string",t),nonEmptyString:t=>Ht(Se.nonEmptyString(t),"non-empty string",t),emptyStringOrWhitespace:t=>Ht(Se.emptyStringOrWhitespace(t),"empty string or whitespace",t),emptyObject:t=>Ht(Se.emptyObject(t),"empty object",t),nonEmptyObject:t=>Ht(Se.nonEmptyObject(t),"non-empty object",t),emptySet:t=>Ht(Se.emptySet(t),"empty set",t),nonEmptySet:t=>Ht(Se.nonEmptySet(t),"non-empty set",t),emptyMap:t=>Ht(Se.emptyMap(t),"empty map",t),nonEmptyMap:t=>Ht(Se.nonEmptyMap(t),"non-empty map",t),propertyKey:t=>Ht(Se.propertyKey(t),"PropertyKey",t),formData:t=>Ht(Se.formData(t),"FormData",t),urlSearchParams:t=>Ht(Se.urlSearchParams(t),"URLSearchParams",t),evenInteger:t=>Ht(Se.evenInteger(t),"even integer",t),oddInteger:t=>Ht(Se.oddInteger(t),"odd integer",t),directInstanceOf:(t,e)=>Ht(Se.directInstanceOf(t,e),"T",t),inRange:(t,e)=>Ht(Se.inRange(t,e),"in range",t),any:(t,...e)=>Ht(Se.any(t,...e),"predicate returns truthy for any value",e,{multipleValues:!0}),all:(t,...e)=>Ht(Se.all(t,...e),"predicate returns truthy for all values",e,{multipleValues:!0})};Object.defineProperties(Se,{class:{value:Se.class_},function:{value:Se.function_},null:{value:Se.null_}});Object.defineProperties(Qf.assert,{class:{value:Qf.assert.class_},function:{value:Qf.assert.function_},null:{value:Qf.assert.null_}});Qf.default=Se;VS.exports=Se;VS.exports.default=Se;VS.exports.assert=Qf.assert});var $se=_((aLt,DM)=>{"use strict";var zS=class extends Error{constructor(e){super(e||"Promise was canceled"),this.name="CancelError"}get isCanceled(){return!0}},CE=class{static fn(e){return(...r)=>new CE((o,a,n)=>{r.push(n),e(...r).then(o,a)})}constructor(e){this._cancelHandlers=[],this._isPending=!0,this._isCanceled=!1,this._rejectOnCancel=!0,this._promise=new Promise((r,o)=>{this._reject=o;let a=A=>{this._isPending=!1,r(A)},n=A=>{this._isPending=!1,o(A)},u=A=>{if(!this._isPending)throw new Error("The `onCancel` handler was attached after the promise settled.");this._cancelHandlers.push(A)};return Object.defineProperties(u,{shouldReject:{get:()=>this._rejectOnCancel,set:A=>{this._rejectOnCancel=A}}}),e(a,n,u)})}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 zS(e))}}get isCanceled(){return this._isCanceled}};Object.setPrototypeOf(CE.prototype,Promise.prototype);DM.exports=CE;DM.exports.CancelError=zS});var eoe=_((SM,bM)=>{"use strict";Object.defineProperty(SM,"__esModule",{value:!0});var Jrt=Be("tls"),PM=(t,e)=>{let r;typeof e=="function"?r={connect:e}:r=e;let o=typeof r.connect=="function",a=typeof r.secureConnect=="function",n=typeof r.close=="function",u=()=>{o&&r.connect(),t instanceof Jrt.TLSSocket&&a&&(t.authorized?r.secureConnect():t.authorizationError||t.once("secureConnect",r.secureConnect)),n&&t.once("close",r.close)};t.writable&&!t.connecting?u():t.connecting?t.once("connect",u):t.destroyed&&n&&r.close(t._hadError)};SM.default=PM;bM.exports=PM;bM.exports.default=PM});var toe=_((kM,QM)=>{"use strict";Object.defineProperty(kM,"__esModule",{value:!0});var Xrt=eoe(),Zrt=Number(process.versions.node.split(".")[0]),xM=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=u=>{let A=u.emit.bind(u);u.emit=(p,...h)=>(p==="error"&&(e.error=Date.now(),e.phases.total=e.error-e.start,u.emit=A),A(p,...h))};r(t),t.prependOnceListener("abort",()=>{e.abort=Date.now(),(!e.response||Zrt>=13)&&(e.phases.total=Date.now()-e.start)});let o=u=>{e.socket=Date.now(),e.phases.wait=e.socket-e.start;let A=()=>{e.lookup=Date.now(),e.phases.dns=e.lookup-e.socket};u.prependOnceListener("lookup",A),Xrt.default(u,{connect:()=>{e.connect=Date.now(),e.lookup===void 0&&(u.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?o(t.socket):t.prependOnceListener("socket",o);let a=()=>{var u;e.upload=Date.now(),e.phases.request=e.upload-(u=e.secureConnect,u??e.connect)};return(()=>typeof t.writableFinished=="boolean"?t.writableFinished:t.finished&&t.outputSize===0&&(!t.socket||t.socket.writableLength===0))()?a():t.prependOnceListener("finish",a),t.prependOnceListener("response",u=>{e.response=Date.now(),e.phases.firstByte=e.response-e.upload,u.timings=e,r(u),u.prependOnceListener("end",()=>{e.end=Date.now(),e.phases.download=e.end-e.response,e.phases.total=e.end-e.start})}),e};kM.default=xM;QM.exports=xM;QM.exports.default=xM});var loe=_((lLt,TM)=>{"use strict";var{V4MAPPED:$rt,ADDRCONFIG:ent,ALL:aoe,promises:{Resolver:roe},lookup:tnt}=Be("dns"),{promisify:FM}=Be("util"),rnt=Be("os"),wE=Symbol("cacheableLookupCreateConnection"),RM=Symbol("cacheableLookupInstance"),noe=Symbol("expires"),nnt=typeof aoe=="number",ioe=t=>{if(!(t&&typeof t.createConnection=="function"))throw new Error("Expected an Agent instance as the first argument")},int=t=>{for(let e of t)e.family!==6&&(e.address=`::ffff:${e.address}`,e.family=6)},soe=()=>{let t=!1,e=!1;for(let r of Object.values(rnt.networkInterfaces()))for(let o of r)if(!o.internal&&(o.family==="IPv6"?e=!0:t=!0,t&&e))return{has4:t,has6:e};return{has4:t,has6:e}},snt=t=>Symbol.iterator in t,ooe={ttl:!0},ont={all:!0},JS=class{constructor({cache:e=new Map,maxTtl:r=1/0,fallbackDuration:o=3600,errorTtl:a=.15,resolver:n=new roe,lookup:u=tnt}={}){if(this.maxTtl=r,this.errorTtl=a,this._cache=e,this._resolver=n,this._dnsLookup=FM(u),this._resolver instanceof roe?(this._resolve4=this._resolver.resolve4.bind(this._resolver),this._resolve6=this._resolver.resolve6.bind(this._resolver)):(this._resolve4=FM(this._resolver.resolve4.bind(this._resolver)),this._resolve6=FM(this._resolver.resolve6.bind(this._resolver))),this._iface=soe(),this._pending={},this._nextRemovalTime=!1,this._hostnamesToFallback=new Set,o<1)this._fallback=!1;else{this._fallback=!0;let A=setInterval(()=>{this._hostnamesToFallback.clear()},o*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,o){if(typeof r=="function"?(o=r,r={}):typeof r=="number"&&(r={family:r}),!o)throw new Error("Callback must be a function.");this.lookupAsync(e,r).then(a=>{r.all?o(null,a):o(null,a.address,a.family,a.expires,a.ttl)},o)}async lookupAsync(e,r={}){typeof r=="number"&&(r={family:r});let o=await this.query(e);if(r.family===6){let a=o.filter(n=>n.family===6);r.hints&$rt&&(nnt&&r.hints&aoe||a.length===0)?int(o):o=a}else r.family===4&&(o=o.filter(a=>a.family===4));if(r.hints&ent){let{_iface:a}=this;o=o.filter(n=>n.family===6?a.has6:a.has4)}if(o.length===0){let a=new Error(`cacheableLookup ENOTFOUND ${e}`);throw a.code="ENOTFOUND",a.hostname=e,a}return r.all?o:o[0]}async query(e){let r=await this._cache.get(e);if(!r){let o=this._pending[e];if(o)r=await o;else{let a=this.queryAndCache(e);this._pending[e]=a,r=await a}}return r=r.map(o=>({...o})),r}async _resolve(e){let r=async h=>{try{return await h}catch(C){if(C.code==="ENODATA"||C.code==="ENOTFOUND")return[];throw C}},[o,a]=await Promise.all([this._resolve4(e,ooe),this._resolve6(e,ooe)].map(h=>r(h))),n=0,u=0,A=0,p=Date.now();for(let h of o)h.family=4,h.expires=p+h.ttl*1e3,n=Math.max(n,h.ttl);for(let h of a)h.family=6,h.expires=p+h.ttl*1e3,u=Math.max(u,h.ttl);return o.length>0?a.length>0?A=Math.min(n,u):A=n:A=u,{entries:[...o,...a],cacheTtl:A}}async _lookup(e){try{return{entries:await this._dnsLookup(e,{all:!0}),cacheTtl:0}}catch{return{entries:[],cacheTtl:0}}}async _set(e,r,o){if(this.maxTtl>0&&o>0){o=Math.min(o,this.maxTtl)*1e3,r[noe]=Date.now()+o;try{await this._cache.set(e,r,o)}catch(a){this.lookupAsync=async()=>{let n=new Error("Cache Error. Please recreate the CacheableLookup instance.");throw n.cause=a,n}}snt(this._cache)&&this._tick(o)}}async queryAndCache(e){if(this._hostnamesToFallback.has(e))return this._dnsLookup(e,ont);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 o=r.entries.length===0?this.errorTtl:r.cacheTtl;return await this._set(e,r.entries,o),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 o=1/0,a=Date.now();for(let[n,u]of this._cache){let A=u[noe];a>=A?this._cache.delete(n):A("lookup"in r||(r.lookup=this.lookup),e[wE](r,o))}uninstall(e){if(ioe(e),e[wE]){if(e[RM]!==this)throw new Error("The agent is not owned by this CacheableLookup instance");e.createConnection=e[wE],delete e[wE],delete e[RM]}}updateInterfaceInfo(){let{_iface:e}=this;this._iface=soe(),(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()}};TM.exports=JS;TM.exports.default=JS});var Aoe=_((cLt,NM)=>{"use strict";var ant=typeof URL>"u"?Be("url").URL:URL,lnt="text/plain",cnt="us-ascii",coe=(t,e)=>e.some(r=>r instanceof RegExp?r.test(t):r===t),unt=(t,{stripHash:e})=>{let r=t.match(/^data:([^,]*?),([^#]*?)(?:#(.*))?$/);if(!r)throw new Error(`Invalid URL: ${t}`);let o=r[1].split(";"),a=r[2],n=e?"":r[3],u=!1;o[o.length-1]==="base64"&&(o.pop(),u=!0);let A=(o.shift()||"").toLowerCase(),h=[...o.map(C=>{let[I,v=""]=C.split("=").map(x=>x.trim());return I==="charset"&&(v=v.toLowerCase(),v===cnt)?"":`${I}${v?`=${v}`:""}`}).filter(Boolean)];return u&&h.push("base64"),(h.length!==0||A&&A!==lnt)&&h.unshift(A),`data:${h.join(";")},${u?a.trim():a}${n?`#${n}`:""}`},uoe=(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 unt(t,e);let r=t.startsWith("//");!r&&/^\.*\//.test(t)||(t=t.replace(/^(?!(?:\w+:)?\/\/)|^\/\//,e.defaultProtocol));let a=new ant(t);if(e.forceHttp&&e.forceHttps)throw new Error("The `forceHttp` and `forceHttps` options cannot be used together");if(e.forceHttp&&a.protocol==="https:"&&(a.protocol="http:"),e.forceHttps&&a.protocol==="http:"&&(a.protocol="https:"),e.stripAuthentication&&(a.username="",a.password=""),e.stripHash&&(a.hash=""),a.pathname&&(a.pathname=a.pathname.replace(/((?!:).|^)\/{2,}/g,(n,u)=>/^(?!\/)/g.test(u)?`${u}/`:"/")),a.pathname&&(a.pathname=decodeURI(a.pathname)),e.removeDirectoryIndex===!0&&(e.removeDirectoryIndex=[/^index\.[a-z]+$/]),Array.isArray(e.removeDirectoryIndex)&&e.removeDirectoryIndex.length>0){let n=a.pathname.split("/"),u=n[n.length-1];coe(u,e.removeDirectoryIndex)&&(n=n.slice(0,n.length-1),a.pathname=n.slice(1).join("/")+"/")}if(a.hostname&&(a.hostname=a.hostname.replace(/\.$/,""),e.stripWWW&&/^www\.([a-z\-\d]{2,63})\.([a-z.]{2,5})$/.test(a.hostname)&&(a.hostname=a.hostname.replace(/^www\./,""))),Array.isArray(e.removeQueryParameters))for(let n of[...a.searchParams.keys()])coe(n,e.removeQueryParameters)&&a.searchParams.delete(n);return e.sortQueryParameters&&a.searchParams.sort(),e.removeTrailingSlash&&(a.pathname=a.pathname.replace(/\/$/,"")),t=a.toString(),(e.removeTrailingSlash||a.pathname==="/")&&a.hash===""&&(t=t.replace(/\/$/,"")),r&&!e.normalizeProtocol&&(t=t.replace(/^http:\/\//,"//")),e.stripProtocol&&(t=t.replace(/^(?:https?:)?\/\//,"")),t};NM.exports=uoe;NM.exports.default=uoe});var hoe=_((uLt,poe)=>{poe.exports=foe;function foe(t,e){if(t&&e)return foe(t)(e);if(typeof t!="function")throw new TypeError("need wrapper function");return Object.keys(t).forEach(function(o){r[o]=t[o]}),r;function r(){for(var o=new Array(arguments.length),a=0;a{var goe=hoe();LM.exports=goe(XS);LM.exports.strict=goe(doe);XS.proto=XS(function(){Object.defineProperty(Function.prototype,"once",{value:function(){return XS(this)},configurable:!0}),Object.defineProperty(Function.prototype,"onceStrict",{value:function(){return doe(this)},configurable:!0})});function XS(t){var e=function(){return e.called?e.value:(e.called=!0,e.value=t.apply(this,arguments))};return e.called=!1,e}function doe(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 MM=_((fLt,yoe)=>{var Ant=OM(),fnt=function(){},pnt=function(t){return t.setHeader&&typeof t.abort=="function"},hnt=function(t){return t.stdio&&Array.isArray(t.stdio)&&t.stdio.length===3},moe=function(t,e,r){if(typeof e=="function")return moe(t,null,e);e||(e={}),r=Ant(r||fnt);var o=t._writableState,a=t._readableState,n=e.readable||e.readable!==!1&&t.readable,u=e.writable||e.writable!==!1&&t.writable,A=function(){t.writable||p()},p=function(){u=!1,n||r.call(t)},h=function(){n=!1,u||r.call(t)},C=function(E){r.call(t,E?new Error("exited with error code: "+E):null)},I=function(E){r.call(t,E)},v=function(){if(n&&!(a&&a.ended))return r.call(t,new Error("premature close"));if(u&&!(o&&o.ended))return r.call(t,new Error("premature close"))},x=function(){t.req.on("finish",p)};return pnt(t)?(t.on("complete",p),t.on("abort",v),t.req?x():t.on("request",x)):u&&!o&&(t.on("end",A),t.on("close",A)),hnt(t)&&t.on("exit",C),t.on("end",h),t.on("finish",p),e.error!==!1&&t.on("error",I),t.on("close",v),function(){t.removeListener("complete",p),t.removeListener("abort",v),t.removeListener("request",x),t.req&&t.req.removeListener("finish",p),t.removeListener("end",A),t.removeListener("close",A),t.removeListener("finish",p),t.removeListener("exit",C),t.removeListener("end",h),t.removeListener("error",I),t.removeListener("close",v)}};yoe.exports=moe});var woe=_((pLt,Coe)=>{var gnt=OM(),dnt=MM(),UM=Be("fs"),A1=function(){},mnt=/^v?\.0/.test(process.version),ZS=function(t){return typeof t=="function"},ynt=function(t){return!mnt||!UM?!1:(t instanceof(UM.ReadStream||A1)||t instanceof(UM.WriteStream||A1))&&ZS(t.close)},Ent=function(t){return t.setHeader&&ZS(t.abort)},Cnt=function(t,e,r,o){o=gnt(o);var a=!1;t.on("close",function(){a=!0}),dnt(t,{readable:e,writable:r},function(u){if(u)return o(u);a=!0,o()});var n=!1;return function(u){if(!a&&!n){if(n=!0,ynt(t))return t.close(A1);if(Ent(t))return t.abort();if(ZS(t.destroy))return t.destroy();o(u||new Error("stream was destroyed"))}}},Eoe=function(t){t()},wnt=function(t,e){return t.pipe(e)},Int=function(){var t=Array.prototype.slice.call(arguments),e=ZS(t[t.length-1]||A1)&&t.pop()||A1;if(Array.isArray(t[0])&&(t=t[0]),t.length<2)throw new Error("pump requires two streams per minimum");var r,o=t.map(function(a,n){var u=n0;return Cnt(a,u,A,function(p){r||(r=p),p&&o.forEach(Eoe),!u&&(o.forEach(Eoe),e(r))})});return t.reduce(wnt)};Coe.exports=Int});var Boe=_((hLt,Ioe)=>{"use strict";var{PassThrough:Bnt}=Be("stream");Ioe.exports=t=>{t={...t};let{array:e}=t,{encoding:r}=t,o=r==="buffer",a=!1;e?a=!(r||o):r=r||"utf8",o&&(r=null);let n=new Bnt({objectMode:a});r&&n.setEncoding(r);let u=0,A=[];return n.on("data",p=>{A.push(p),a?u=A.length:u+=p.length}),n.getBufferedValue=()=>e?A:o?Buffer.concat(A,u):A.join(""),n.getBufferedLength=()=>u,n}});var voe=_((gLt,IE)=>{"use strict";var vnt=woe(),Dnt=Boe(),$S=class extends Error{constructor(){super("maxBuffer exceeded"),this.name="MaxBufferError"}};async function eb(t,e){if(!t)return Promise.reject(new Error("Expected a stream"));e={maxBuffer:1/0,...e};let{maxBuffer:r}=e,o;return await new Promise((a,n)=>{let u=A=>{A&&(A.bufferedData=o.getBufferedValue()),n(A)};o=vnt(t,Dnt(e),A=>{if(A){u(A);return}a()}),o.on("data",()=>{o.getBufferedLength()>r&&u(new $S)})}),o.getBufferedValue()}IE.exports=eb;IE.exports.default=eb;IE.exports.buffer=(t,e)=>eb(t,{...e,encoding:"buffer"});IE.exports.array=(t,e)=>eb(t,{...e,array:!0});IE.exports.MaxBufferError=$S});var Poe=_((mLt,Doe)=>{"use strict";var Pnt=new Set([200,203,204,206,300,301,404,405,410,414,501]),Snt=new Set([200,203,204,300,301,302,303,307,308,404,405,410,414,501]),bnt=new Set([500,502,503,504]),xnt={date:!0,connection:!0,"keep-alive":!0,"proxy-authenticate":!0,"proxy-authorization":!0,te:!0,trailer:!0,"transfer-encoding":!0,upgrade:!0},knt={"content-length":!0,"content-encoding":!0,"transfer-encoding":!0,"content-range":!0};function vd(t){let e=parseInt(t,10);return isFinite(e)?e:0}function Qnt(t){return t?bnt.has(t.status):!0}function _M(t){let e={};if(!t)return e;let r=t.trim().split(/\s*,\s*/);for(let o of r){let[a,n]=o.split(/\s*=\s*/,2);e[a]=n===void 0?!0:n.replace(/^"|"$/g,"")}return e}function Fnt(t){let e=[];for(let r in t){let o=t[r];e.push(o===!0?r:r+"="+o)}if(!!e.length)return e.join(", ")}Doe.exports=class{constructor(e,r,{shared:o,cacheHeuristic:a,immutableMinTimeToLive:n,ignoreCargoCult:u,_fromObject:A}={}){if(A){this._fromObject(A);return}if(!r||!r.headers)throw Error("Response headers missing");this._assertRequestHasHeaders(e),this._responseTime=this.now(),this._isShared=o!==!1,this._cacheHeuristic=a!==void 0?a:.1,this._immutableMinTtl=n!==void 0?n:24*3600*1e3,this._status="status"in r?r.status:200,this._resHeaders=r.headers,this._rescc=_M(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=_M(e.headers["cache-control"]),u&&"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":Fnt(this._rescc)}),delete this._resHeaders.expires,delete this._resHeaders.pragma),r.headers["cache-control"]==null&&/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())&&Snt.has(this._status)&&!this._rescc["no-store"]&&(!this._isShared||!this._rescc.private)&&(!this._isShared||this._noAuthorization||this._allowsStoringAuthenticated())&&(this._resHeaders.expires||this._rescc["max-age"]||this._isShared&&this._rescc["s-maxage"]||this._rescc.public||Pnt.has(this._status)))}_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=_M(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 o of r)if(e.headers[o]!==this._reqHeaders[o])return!1;return!0}_copyWithoutHopByHopHeaders(e){let r={};for(let o in e)xnt[o]||(r[o]=e[o]);if(e.connection){let o=e.connection.trim().split(/\s*,\s*/);for(let a of o)delete r[a]}if(r.warning){let o=r.warning.split(/,/).filter(a=>!/^\s*1[0-9][0-9]/.test(a));o.length?r.warning=o.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(){let e=Date.parse(this._resHeaders.date);return isFinite(e)?e:this._responseTime}age(){let e=this._ageValue(),r=(this.now()-this._responseTime)/1e3;return e+r}_ageValue(){return vd(this._resHeaders.age)}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 vd(this._rescc["s-maxage"])}if(this._rescc["max-age"])return vd(this._rescc["max-age"]);let e=this._rescc.immutable?this._immutableMinTtl:0,r=this.date();if(this._resHeaders.expires){let o=Date.parse(this._resHeaders.expires);return Number.isNaN(o)||oo)return Math.max(e,(r-o)/1e3*this._cacheHeuristic)}return e}timeToLive(){let e=this.maxAge()-this.age(),r=e+vd(this._rescc["stale-if-error"]),o=e+vd(this._rescc["stale-while-revalidate"]);return Math.max(0,e,r,o)*1e3}stale(){return this.maxAge()<=this.age()}_useStaleIfError(){return this.maxAge()+vd(this._rescc["stale-if-error"])>this.age()}useStaleWhileRevalidate(){return this.maxAge()+vd(this._rescc["stale-while-revalidate"])>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 a=r["if-none-match"].split(/,/).filter(n=>!/^\s*W\//.test(n));a.length?r["if-none-match"]=a.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),this._useStaleIfError()&&Qnt(r))return{modified:!1,matches:!1,policy:this};if(!r||!r.headers)throw Error("Response headers missing");let o=!1;if(r.status!==void 0&&r.status!=304?o=!1:r.headers.etag&&!/^\s*W\//.test(r.headers.etag)?o=this._resHeaders.etag&&this._resHeaders.etag.replace(/^\s*W\//,"")===r.headers.etag:this._resHeaders.etag&&r.headers.etag?o=this._resHeaders.etag.replace(/^\s*W\//,"")===r.headers.etag.replace(/^\s*W\//,""):this._resHeaders["last-modified"]?o=this._resHeaders["last-modified"]===r.headers["last-modified"]:!this._resHeaders.etag&&!this._resHeaders["last-modified"]&&!r.headers.etag&&!r.headers["last-modified"]&&(o=!0),!o)return{policy:new this.constructor(e,r),modified:r.status!=304,matches:!1};let a={};for(let u in this._resHeaders)a[u]=u in r.headers&&!knt[u]?r.headers[u]:this._resHeaders[u];let n=Object.assign({},r,{status:this._status,method:this._method,headers:a});return{policy:new this.constructor(e,n,{shared:this._isShared,cacheHeuristic:this._cacheHeuristic,immutableMinTimeToLive:this._immutableMinTtl}),modified:!1,matches:!0}}}});var tb=_((yLt,Soe)=>{"use strict";Soe.exports=t=>{let e={};for(let[r,o]of Object.entries(t))e[r.toLowerCase()]=o;return e}});var xoe=_((ELt,boe)=>{"use strict";var Rnt=Be("stream").Readable,Tnt=tb(),HM=class extends Rnt{constructor(e,r,o,a){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(!(o instanceof Buffer))throw new TypeError("Argument `body` should be a buffer");if(typeof a!="string")throw new TypeError("Argument `url` should be a string");super(),this.statusCode=e,this.headers=Tnt(r),this.body=o,this.url=a}_read(){this.push(this.body),this.push(null)}};boe.exports=HM});var Qoe=_((CLt,koe)=>{"use strict";var Nnt=["destroy","setTimeout","socket","headers","trailers","rawHeaders","statusCode","httpVersion","httpVersionMinor","httpVersionMajor","rawTrailers","statusMessage"];koe.exports=(t,e)=>{let r=new Set(Object.keys(t).concat(Nnt));for(let o of r)o in e||(e[o]=typeof t[o]=="function"?t[o].bind(t):t[o])}});var Roe=_((wLt,Foe)=>{"use strict";var Lnt=Be("stream").PassThrough,Ont=Qoe(),Mnt=t=>{if(!(t&&t.pipe))throw new TypeError("Parameter `response` must be a response stream.");let e=new Lnt;return Ont(t,e),t.pipe(e)};Foe.exports=Mnt});var Toe=_(jM=>{jM.stringify=function t(e){if(typeof e>"u")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="",o=Array.isArray(e);r=o?"[":"{";var a=!0;for(var n in e){var u=typeof e[n]=="function"||!o&&typeof e[n]>"u";Object.hasOwnProperty.call(e,n)&&!u&&(a||(r+=","),a=!1,o?e[n]==null?r+="null":r+=t(e[n]):e[n]!==void 0&&(r+=t(n)+":"+t(e[n])))}return r+=o?"]":"}",r}else return typeof e=="string"?JSON.stringify(/^:/.test(e)?":"+e:e):typeof e>"u"?"null":JSON.stringify(e)};jM.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 Ooe=_((BLt,Loe)=>{"use strict";var Unt=Be("events"),Noe=Toe(),_nt=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(Be(e[r]))(t)}return new Map},qM=class extends Unt{constructor(e,r){if(super(),this.opts=Object.assign({namespace:"keyv",serialize:Noe.stringify,deserialize:Noe.parse},typeof e=="string"?{uri:e}:e,r),!this.opts.store){let o=Object.assign({},this.opts);this.opts.store=_nt(o)}typeof this.opts.store.on=="function"&&this.opts.store.on("error",o=>this.emit("error",o)),this.opts.store.namespace=this.opts.namespace}_getKeyPrefix(e){return`${this.opts.namespace}:${e}`}get(e,r){e=this._getKeyPrefix(e);let{store:o}=this.opts;return Promise.resolve().then(()=>o.get(e)).then(a=>typeof a=="string"?this.opts.deserialize(a):a).then(a=>{if(a!==void 0){if(typeof a.expires=="number"&&Date.now()>a.expires){this.delete(e);return}return r&&r.raw?a:a.value}})}set(e,r,o){e=this._getKeyPrefix(e),typeof o>"u"&&(o=this.opts.ttl),o===0&&(o=void 0);let{store:a}=this.opts;return Promise.resolve().then(()=>{let n=typeof o=="number"?Date.now()+o:null;return r={value:r,expires:n},this.opts.serialize(r)}).then(n=>a.set(e,n,o)).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())}};Loe.exports=qM});var _oe=_((DLt,Uoe)=>{"use strict";var Hnt=Be("events"),rb=Be("url"),jnt=Aoe(),qnt=voe(),GM=Poe(),Moe=xoe(),Gnt=tb(),Ynt=Roe(),Wnt=Ooe(),jc=class{constructor(e,r){if(typeof e!="function")throw new TypeError("Parameter `request` must be a function");return this.cache=new Wnt({uri:typeof r=="string"&&r,store:typeof r!="string"&&r,namespace:"cacheable-request"}),this.createCacheableRequest(e)}createCacheableRequest(e){return(r,o)=>{let a;if(typeof r=="string")a=YM(rb.parse(r)),r={};else if(r instanceof rb.URL)a=YM(rb.parse(r.toString())),r={};else{let[I,...v]=(r.path||"").split("?"),x=v.length>0?`?${v.join("?")}`:"";a=YM({...r,pathname:I,search:x})}r={headers:{},method:"GET",cache:!0,strictTtl:!1,automaticFailover:!1,...r,...Knt(a)},r.headers=Gnt(r.headers);let n=new Hnt,u=jnt(rb.format(a),{stripWWW:!1,removeTrailingSlash:!1,stripAuthentication:!1}),A=`${r.method}:${u}`,p=!1,h=!1,C=I=>{h=!0;let v=!1,x,E=new Promise(L=>{x=()=>{v||(v=!0,L())}}),R=L=>{if(p&&!I.forceRefresh){L.status=L.statusCode;let z=GM.fromObject(p.cachePolicy).revalidatedPolicy(I,L);if(!z.modified){let te=z.policy.responseHeaders();L=new Moe(p.statusCode,te,p.body,p.url),L.cachePolicy=z.policy,L.fromCache=!0}}L.fromCache||(L.cachePolicy=new GM(I,L,I),L.fromCache=!1);let U;I.cache&&L.cachePolicy.storable()?(U=Ynt(L),(async()=>{try{let z=qnt.buffer(L);if(await Promise.race([E,new Promise(Ae=>L.once("end",Ae))]),v)return;let te=await z,le={cachePolicy:L.cachePolicy.toObject(),url:L.url,statusCode:L.fromCache?p.statusCode:L.statusCode,body:te},he=I.strictTtl?L.cachePolicy.timeToLive():void 0;I.maxTtl&&(he=he?Math.min(he,I.maxTtl):I.maxTtl),await this.cache.set(A,le,he)}catch(z){n.emit("error",new jc.CacheError(z))}})()):I.cache&&p&&(async()=>{try{await this.cache.delete(A)}catch(z){n.emit("error",new jc.CacheError(z))}})(),n.emit("response",U||L),typeof o=="function"&&o(U||L)};try{let L=e(I,R);L.once("error",x),L.once("abort",x),n.emit("request",L)}catch(L){n.emit("error",new jc.RequestError(L))}};return(async()=>{let I=async x=>{await Promise.resolve();let E=x.cache?await this.cache.get(A):void 0;if(typeof E>"u")return C(x);let R=GM.fromObject(E.cachePolicy);if(R.satisfiesWithoutRevalidation(x)&&!x.forceRefresh){let L=R.responseHeaders(),U=new Moe(E.statusCode,L,E.body,E.url);U.cachePolicy=R,U.fromCache=!0,n.emit("response",U),typeof o=="function"&&o(U)}else p=E,x.headers=R.revalidationHeaders(x),C(x)},v=x=>n.emit("error",new jc.CacheError(x));this.cache.once("error",v),n.on("response",()=>this.cache.removeListener("error",v));try{await I(r)}catch(x){r.automaticFailover&&!h&&C(r),n.emit("error",new jc.CacheError(x))}})(),n}}};function Knt(t){let e={...t};return e.path=`${t.pathname||"/"}${t.search||""}`,delete e.pathname,delete e.search,e}function YM(t){return{protocol:t.protocol,auth:t.auth,hostname:t.hostname||t.host||"localhost",port:t.port,pathname:t.pathname,search:t.search}}jc.RequestError=class extends Error{constructor(t){super(t.message),this.name="RequestError",Object.assign(this,t)}};jc.CacheError=class extends Error{constructor(t){super(t.message),this.name="CacheError",Object.assign(this,t)}};Uoe.exports=jc});var joe=_((bLt,Hoe)=>{"use strict";var Vnt=["aborted","complete","headers","httpVersion","httpVersionMinor","httpVersionMajor","method","rawHeaders","rawTrailers","setTimeout","socket","statusCode","statusMessage","trailers","url"];Hoe.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(Vnt)),o={};for(let a of r)a in e||(o[a]={get(){let n=t[a];return typeof n=="function"?n.bind(t):n},set(n){t[a]=n},enumerable:!0,configurable:!1});return Object.defineProperties(e,o),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 Goe=_((xLt,qoe)=>{"use strict";var{Transform:znt,PassThrough:Jnt}=Be("stream"),WM=Be("zlib"),Xnt=joe();qoe.exports=t=>{let e=(t.headers["content-encoding"]||"").toLowerCase();if(!["gzip","deflate","br"].includes(e))return t;let r=e==="br";if(r&&typeof WM.createBrotliDecompress!="function")return t.destroy(new Error("Brotli is not supported on Node.js < 12")),t;let o=!0,a=new znt({transform(A,p,h){o=!1,h(null,A)},flush(A){A()}}),n=new Jnt({autoDestroy:!1,destroy(A,p){t.destroy(),p(A)}}),u=r?WM.createBrotliDecompress():WM.createUnzip();return u.once("error",A=>{if(o&&!t.readable){n.end();return}n.destroy(A)}),Xnt(t,n),t.pipe(a).pipe(u).pipe(n),n}});var VM=_((kLt,Yoe)=>{"use strict";var KM=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[o,a]of this.oldCache.entries())this.onEviction(o,a);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)}};Yoe.exports=KM});var JM=_((QLt,zoe)=>{"use strict";var Znt=Be("events"),$nt=Be("tls"),eit=Be("http2"),tit=VM(),ea=Symbol("currentStreamsCount"),Woe=Symbol("request"),Wl=Symbol("cachedOriginSet"),BE=Symbol("gracefullyClosing"),rit=["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"],nit=(t,e,r)=>{let o=0,a=t.length;for(;o>>1;r(t[n],e)?o=n+1:a=n}return o},iit=(t,e)=>t.remoteSettings.maxConcurrentStreams>e.remoteSettings.maxConcurrentStreams,zM=(t,e)=>{for(let r of t)r[Wl].lengthe[Wl].includes(o))&&r[ea]+e[ea]<=e.remoteSettings.maxConcurrentStreams&&Voe(r)},sit=(t,e)=>{for(let r of t)e[Wl].lengthr[Wl].includes(o))&&e[ea]+r[ea]<=r.remoteSettings.maxConcurrentStreams&&Voe(e)},Koe=({agent:t,isFree:e})=>{let r={};for(let o in t.sessions){let n=t.sessions[o].filter(u=>{let A=u[tA.kCurrentStreamsCount]{t[BE]=!0,t[ea]===0&&t.close()},tA=class extends Znt{constructor({timeout:e=6e4,maxSessions:r=1/0,maxFreeSessions:o=10,maxCachedTlsSessions:a=100}={}){super(),this.sessions={},this.queue={},this.timeout=e,this.maxSessions=r,this.maxFreeSessions=o,this._freeSessionsCount=0,this._sessionsCount=0,this.settings={enablePush:!1},this.tlsSessionCache=new tit({maxSize:a})}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 o of rit)e[o]&&(r+=`:${e[o]}`);return r}_tryToCreateNewSession(e,r){if(!(e in this.queue)||!(r in this.queue[e]))return;let o=this.queue[e][r];this._sessionsCount{Array.isArray(o)?(o=[...o],a()):o=[{resolve:a,reject:n}];let u=this.normalizeOptions(r),A=tA.normalizeOrigin(e,r&&r.servername);if(A===void 0){for(let{reject:C}of o)C(new TypeError("The `origin` argument needs to be a string or an URL object"));return}if(u in this.sessions){let C=this.sessions[u],I=-1,v=-1,x;for(let E of C){let R=E.remoteSettings.maxConcurrentStreams;if(R=R||E[BE]||E.destroyed)continue;x||(I=R),L>v&&(x=E,v=L)}}if(x){if(o.length!==1){for(let{reject:E}of o){let R=new Error(`Expected the length of listeners to be 1, got ${o.length}. +Please report this to https://github.com/szmarczak/http2-wrapper/`);E(R)}return}o[0].resolve(x);return}}if(u in this.queue){if(A in this.queue[u]){this.queue[u][A].listeners.push(...o),this._tryToCreateNewSession(u,A);return}}else this.queue[u]={};let p=()=>{u in this.queue&&this.queue[u][A]===h&&(delete this.queue[u][A],Object.keys(this.queue[u]).length===0&&delete this.queue[u])},h=()=>{let C=`${A}:${u}`,I=!1;try{let v=eit.connect(e,{createConnection:this.createConnection,settings:this.settings,session:this.tlsSessionCache.get(C),...r});v[ea]=0,v[BE]=!1;let x=()=>v[ea]{this.tlsSessionCache.set(C,L)}),v.once("error",L=>{for(let{reject:U}of o)U(L);this.tlsSessionCache.delete(C)}),v.setTimeout(this.timeout,()=>{v.destroy()}),v.once("close",()=>{if(I){E&&this._freeSessionsCount--,this._sessionsCount--;let L=this.sessions[u];L.splice(L.indexOf(v),1),L.length===0&&delete this.sessions[u]}else{let L=new Error("Session closed without receiving a SETTINGS frame");L.code="HTTP2WRAPPER_NOSETTINGS";for(let{reject:U}of o)U(L);p()}this._tryToCreateNewSession(u,A)});let R=()=>{if(!(!(u in this.queue)||!x())){for(let L of v[Wl])if(L in this.queue[u]){let{listeners:U}=this.queue[u][L];for(;U.length!==0&&x();)U.shift().resolve(v);let z=this.queue[u];if(z[L].listeners.length===0&&(delete z[L],Object.keys(z).length===0)){delete this.queue[u];break}if(!x())break}}};v.on("origin",()=>{v[Wl]=v.originSet,x()&&(R(),zM(this.sessions[u],v))}),v.once("remoteSettings",()=>{if(v.ref(),v.unref(),this._sessionsCount++,h.destroyed){let L=new Error("Agent has been destroyed");for(let U of o)U.reject(L);v.destroy();return}v[Wl]=v.originSet;{let L=this.sessions;if(u in L){let U=L[u];U.splice(nit(U,v,iit),0,v)}else L[u]=[v]}this._freeSessionsCount+=1,I=!0,this.emit("session",v),R(),p(),v[ea]===0&&this._freeSessionsCount>this.maxFreeSessions&&v.close(),o.length!==0&&(this.getSession(A,r,o),o.length=0),v.on("remoteSettings",()=>{R(),zM(this.sessions[u],v)})}),v[Woe]=v.request,v.request=(L,U)=>{if(v[BE])throw new Error("The session is gracefully closing. No new streams are allowed.");let z=v[Woe](L,U);return v.ref(),++v[ea],v[ea]===v.remoteSettings.maxConcurrentStreams&&this._freeSessionsCount--,z.once("close",()=>{if(E=x(),--v[ea],!v.destroyed&&!v.closed&&(sit(this.sessions[u],v),x()&&!v.closed)){E||(this._freeSessionsCount++,E=!0);let te=v[ea]===0;te&&v.unref(),te&&(this._freeSessionsCount>this.maxFreeSessions||v[BE])?v.close():(zM(this.sessions[u],v),R())}}),z}}catch(v){for(let x of o)x.reject(v);p()}};h.listeners=o,h.completed=!1,h.destroyed=!1,this.queue[u][A]=h,this._tryToCreateNewSession(u,A)})}request(e,r,o,a){return new Promise((n,u)=>{this.getSession(e,r,[{reject:u,resolve:A=>{try{n(A.request(o,a))}catch(p){u(p)}}}])})}createConnection(e,r){return tA.connect(e,r)}static connect(e,r){r.ALPNProtocols=["h2"];let o=e.port||443,a=e.hostname||e.host;return typeof r.servername>"u"&&(r.servername=a),$nt.connect(o,a,r)}closeFreeSessions(){for(let e of Object.values(this.sessions))for(let r of e)r[ea]===0&&r.close()}destroy(e){for(let r of Object.values(this.sessions))for(let o of r)o.destroy(e);for(let r of Object.values(this.queue))for(let o of Object.values(r))o.destroyed=!0;this.queue={}}get freeSessions(){return Koe({agent:this,isFree:!0})}get busySessions(){return Koe({agent:this,isFree:!1})}};tA.kCurrentStreamsCount=ea;tA.kGracefullyClosing=BE;zoe.exports={Agent:tA,globalAgent:new tA}});var ZM=_((FLt,Joe)=>{"use strict";var{Readable:oit}=Be("stream"),XM=class extends oit{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()}};Joe.exports=XM});var $M=_((RLt,Xoe)=>{"use strict";Xoe.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 $oe=_((TLt,Zoe)=>{"use strict";Zoe.exports=(t,e,r)=>{for(let o of r)t.on(o,(...a)=>e.emit(o,...a))}});var tae=_((NLt,eae)=>{"use strict";eae.exports=t=>{switch(t){case":method":case":scheme":case":authority":case":path":return!0;default:return!1}}});var nae=_((OLt,rae)=>{"use strict";var vE=(t,e,r)=>{rae.exports[e]=class extends t{constructor(...a){super(typeof r=="string"?r:r(a)),this.name=`${super.name} [${e}]`,this.code=e}}};vE(TypeError,"ERR_INVALID_ARG_TYPE",t=>{let e=t[0].includes(".")?"property":"argument",r=t[1],o=Array.isArray(r);return o&&(r=`${r.slice(0,-1).join(", ")} or ${r.slice(-1)}`),`The "${t[0]}" ${e} must be ${o?"one of":"of"} type ${r}. Received ${typeof t[2]}`});vE(TypeError,"ERR_INVALID_PROTOCOL",t=>`Protocol "${t[0]}" not supported. Expected "${t[1]}"`);vE(Error,"ERR_HTTP_HEADERS_SENT",t=>`Cannot ${t[0]} headers after they are sent to the client`);vE(TypeError,"ERR_INVALID_HTTP_TOKEN",t=>`${t[0]} must be a valid HTTP token [${t[1]}]`);vE(TypeError,"ERR_HTTP_INVALID_HEADER_VALUE",t=>`Invalid value "${t[0]} for header "${t[1]}"`);vE(TypeError,"ERR_INVALID_CHAR",t=>`Invalid character in ${t[0]} [${t[1]}]`)});var i4=_((MLt,uae)=>{"use strict";var ait=Be("http2"),{Writable:lit}=Be("stream"),{Agent:iae,globalAgent:cit}=JM(),uit=ZM(),Ait=$M(),fit=$oe(),pit=tae(),{ERR_INVALID_ARG_TYPE:e4,ERR_INVALID_PROTOCOL:hit,ERR_HTTP_HEADERS_SENT:sae,ERR_INVALID_HTTP_TOKEN:git,ERR_HTTP_INVALID_HEADER_VALUE:dit,ERR_INVALID_CHAR:mit}=nae(),{HTTP2_HEADER_STATUS:oae,HTTP2_HEADER_METHOD:aae,HTTP2_HEADER_PATH:lae,HTTP2_METHOD_CONNECT:yit}=ait.constants,Qo=Symbol("headers"),t4=Symbol("origin"),r4=Symbol("session"),cae=Symbol("options"),nb=Symbol("flushedHeaders"),f1=Symbol("jobs"),Eit=/^[\^`\-\w!#$%&*+.|~]+$/,Cit=/[^\t\u0020-\u007E\u0080-\u00FF]/,n4=class extends lit{constructor(e,r,o){super({autoDestroy:!1});let a=typeof e=="string"||e instanceof URL;if(a&&(e=Ait(e instanceof URL?e:new URL(e))),typeof r=="function"||r===void 0?(o=r,r=a?e:{...e}):r={...e,...r},r.h2session)this[r4]=r.h2session;else if(r.agent===!1)this.agent=new iae({maxFreeSessions:0});else if(typeof r.agent>"u"||r.agent===null)typeof r.createConnection=="function"?(this.agent=new iae({maxFreeSessions:0}),this.agent.createConnection=r.createConnection):this.agent=cit;else if(typeof r.agent.request=="function")this.agent=r.agent;else throw new e4("options.agent",["Agent-like Object","undefined","false"],r.agent);if(r.protocol&&r.protocol!=="https:")throw new hit(r.protocol,"https:");let n=r.port||r.defaultPort||this.agent&&this.agent.defaultPort||443,u=r.hostname||r.host||"localhost";delete r.hostname,delete r.host,delete r.port;let{timeout:A}=r;if(r.timeout=void 0,this[Qo]=Object.create(null),this[f1]=[],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[p,h]of Object.entries(r.headers))this.setHeader(p,h);r.auth&&!("authorization"in this[Qo])&&(this[Qo].authorization="Basic "+Buffer.from(r.auth).toString("base64")),r.session=r.tlsSession,r.path=r.socketPath,this[cae]=r,n===443?(this[t4]=`https://${u}`,":authority"in this[Qo]||(this[Qo][":authority"]=u)):(this[t4]=`https://${u}:${n}`,":authority"in this[Qo]||(this[Qo][":authority"]=`${u}:${n}`)),A&&this.setTimeout(A),o&&this.once("response",o),this[nb]=!1}get method(){return this[Qo][aae]}set method(e){e&&(this[Qo][aae]=e.toUpperCase())}get path(){return this[Qo][lae]}set path(e){e&&(this[Qo][lae]=e)}get _mustNotHaveABody(){return this.method==="GET"||this.method==="HEAD"||this.method==="DELETE"}_write(e,r,o){if(this._mustNotHaveABody){o(new Error("The GET, HEAD and DELETE methods must NOT have a body"));return}this.flushHeaders();let a=()=>this._request.write(e,r,o);this._request?a():this[f1].push(a)}_final(e){if(this.destroyed)return;this.flushHeaders();let r=()=>{if(this._mustNotHaveABody){e();return}this._request.end(e)};this._request?r():this[f1].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[nb]||this.destroyed)return;this[nb]=!0;let e=this.method===yit,r=o=>{if(this._request=o,this.destroyed){o.destroy();return}e||fit(o,this,["timeout","continue","close","error"]);let a=u=>(...A)=>{!this.writable&&!this.destroyed?u(...A):this.once("finish",()=>{u(...A)})};o.once("response",a((u,A,p)=>{let h=new uit(this.socket,o.readableHighWaterMark);this.res=h,h.req=this,h.statusCode=u[oae],h.headers=u,h.rawHeaders=p,h.once("end",()=>{this.aborted?(h.aborted=!0,h.emit("aborted")):(h.complete=!0,h.socket=null,h.connection=null)}),e?(h.upgrade=!0,this.emit("connect",h,o,Buffer.alloc(0))?this.emit("close"):o.destroy()):(o.on("data",C=>{!h._dumped&&!h.push(C)&&o.pause()}),o.once("end",()=>{h.push(null)}),this.emit("response",h)||h._dump())})),o.once("headers",a(u=>this.emit("information",{statusCode:u[oae]}))),o.once("trailers",a((u,A,p)=>{let{res:h}=this;h.trailers=u,h.rawTrailers=p}));let{socket:n}=o.session;this.socket=n,this.connection=n;for(let u of this[f1])u();this.emit("socket",this.socket)};if(this[r4])try{r(this[r4].request(this[Qo]))}catch(o){this.emit("error",o)}else{this.reusedSocket=!0;try{r(await this.agent.request(this[t4],this[cae],this[Qo]))}catch(o){this.emit("error",o)}}}getHeader(e){if(typeof e!="string")throw new e4("name","string",e);return this[Qo][e.toLowerCase()]}get headersSent(){return this[nb]}removeHeader(e){if(typeof e!="string")throw new e4("name","string",e);if(this.headersSent)throw new sae("remove");delete this[Qo][e.toLowerCase()]}setHeader(e,r){if(this.headersSent)throw new sae("set");if(typeof e!="string"||!Eit.test(e)&&!pit(e))throw new git("Header name",e);if(typeof r>"u")throw new dit(r,e);if(Cit.test(r))throw new mit("header content",e);this[Qo][e.toLowerCase()]=r}setNoDelay(){}setSocketKeepAlive(){}setTimeout(e,r){let o=()=>this._request.setTimeout(e,r);return this._request?o():this[f1].push(o),this}get maxHeadersCount(){if(!this.destroyed&&this._request)return this._request.session.localSettings.maxHeaderListSize}set maxHeadersCount(e){}};uae.exports=n4});var fae=_((ULt,Aae)=>{"use strict";var wit=Be("tls");Aae.exports=(t={})=>new Promise((e,r)=>{let o=wit.connect(t,()=>{t.resolveSocket?(o.off("error",r),e({alpnProtocol:o.alpnProtocol,socket:o})):(o.destroy(),e({alpnProtocol:o.alpnProtocol}))});o.on("error",r)})});var hae=_((_Lt,pae)=>{"use strict";var Iit=Be("net");pae.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]),Iit.isIP(e)?"":e}});var mae=_((HLt,o4)=>{"use strict";var gae=Be("http"),s4=Be("https"),Bit=fae(),vit=VM(),Dit=i4(),Pit=hae(),Sit=$M(),ib=new vit({maxSize:100}),p1=new Map,dae=(t,e,r)=>{e._httpMessage={shouldKeepAlive:!0};let o=()=>{t.emit("free",e,r)};e.on("free",o);let a=()=>{t.removeSocket(e,r)};e.on("close",a);let n=()=>{t.removeSocket(e,r),e.off("close",a),e.off("free",o),e.off("agentRemove",n)};e.on("agentRemove",n),t.emit("free",e,r)},bit=async t=>{let e=`${t.host}:${t.port}:${t.ALPNProtocols.sort()}`;if(!ib.has(e)){if(p1.has(e))return(await p1.get(e)).alpnProtocol;let{path:r,agent:o}=t;t.path=t.socketPath;let a=Bit(t);p1.set(e,a);try{let{socket:n,alpnProtocol:u}=await a;if(ib.set(e,u),t.path=r,u==="h2")n.destroy();else{let{globalAgent:A}=s4,p=s4.Agent.prototype.createConnection;o?o.createConnection===p?dae(o,n,t):n.destroy():A.createConnection===p?dae(A,n,t):n.destroy()}return p1.delete(e),u}catch(n){throw p1.delete(e),n}}return ib.get(e)};o4.exports=async(t,e,r)=>{if((typeof t=="string"||t instanceof URL)&&(t=Sit(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 o=e.protocol==="https:";e.host=e.hostname||e.host||"localhost",e.session=e.tlsSession,e.servername=e.servername||Pit(e),e.port=e.port||(o?443:80),e._defaultAgent=o?s4.globalAgent:gae.globalAgent;let a=e.agent;if(a){if(a.addRequest)throw new Error("The `options.agent` object can contain only `http`, `https` or `http2` properties");e.agent=a[o?"https":"http"]}return o&&await bit(e)==="h2"?(a&&(e.agent=a.http2),new Dit(e,r)):gae.request(e,r)};o4.exports.protocolCache=ib});var Eae=_((jLt,yae)=>{"use strict";var xit=Be("http2"),kit=JM(),a4=i4(),Qit=ZM(),Fit=mae(),Rit=(t,e,r)=>new a4(t,e,r),Tit=(t,e,r)=>{let o=new a4(t,e,r);return o.end(),o};yae.exports={...xit,ClientRequest:a4,IncomingMessage:Qit,...kit,request:Rit,get:Tit,auto:Fit}});var c4=_(l4=>{"use strict";Object.defineProperty(l4,"__esModule",{value:!0});var Cae=Ff();l4.default=t=>Cae.default.nodeStream(t)&&Cae.default.function_(t.getBoundary)});var vae=_(u4=>{"use strict";Object.defineProperty(u4,"__esModule",{value:!0});var Iae=Be("fs"),Bae=Be("util"),wae=Ff(),Nit=c4(),Lit=Bae.promisify(Iae.stat);u4.default=async(t,e)=>{if(e&&"content-length"in e)return Number(e["content-length"]);if(!t)return 0;if(wae.default.string(t))return Buffer.byteLength(t);if(wae.default.buffer(t))return t.length;if(Nit.default(t))return Bae.promisify(t.getLength.bind(t))();if(t instanceof Iae.ReadStream){let{size:r}=await Lit(t.path);return r===0?void 0:r}}});var f4=_(A4=>{"use strict";Object.defineProperty(A4,"__esModule",{value:!0});function Oit(t,e,r){let o={};for(let a of r)o[a]=(...n)=>{e.emit(a,...n)},t.on(a,o[a]);return()=>{for(let a of r)t.off(a,o[a])}}A4.default=Oit});var Dae=_(p4=>{"use strict";Object.defineProperty(p4,"__esModule",{value:!0});p4.default=()=>{let t=[];return{once(e,r,o){e.once(r,o),t.push({origin:e,event:r,fn:o})},unhandleAll(){for(let e of t){let{origin:r,event:o,fn:a}=e;r.removeListener(o,a)}t.length=0}}}});var Sae=_(h1=>{"use strict";Object.defineProperty(h1,"__esModule",{value:!0});h1.TimeoutError=void 0;var Mit=Be("net"),Uit=Dae(),Pae=Symbol("reentry"),_it=()=>{},sb=class extends Error{constructor(e,r){super(`Timeout awaiting '${r}' for ${e}ms`),this.event=r,this.name="TimeoutError",this.code="ETIMEDOUT"}};h1.TimeoutError=sb;h1.default=(t,e,r)=>{if(Pae in t)return _it;t[Pae]=!0;let o=[],{once:a,unhandleAll:n}=Uit.default(),u=(I,v,x)=>{var E;let R=setTimeout(v,I,I,x);(E=R.unref)===null||E===void 0||E.call(R);let L=()=>{clearTimeout(R)};return o.push(L),L},{host:A,hostname:p}=r,h=(I,v)=>{t.destroy(new sb(I,v))},C=()=>{for(let I of o)I();n()};if(t.once("error",I=>{if(C(),t.listenerCount("error")===0)throw I}),t.once("close",C),a(t,"response",I=>{a(I,"end",C)}),typeof e.request<"u"&&u(e.request,h,"request"),typeof e.socket<"u"){let I=()=>{h(e.socket,"socket")};t.setTimeout(e.socket,I),o.push(()=>{t.removeListener("timeout",I)})}return a(t,"socket",I=>{var v;let{socketPath:x}=t;if(I.connecting){let E=Boolean(x??Mit.isIP((v=p??A)!==null&&v!==void 0?v:"")!==0);if(typeof e.lookup<"u"&&!E&&typeof I.address().address>"u"){let R=u(e.lookup,h,"lookup");a(I,"lookup",R)}if(typeof e.connect<"u"){let R=()=>u(e.connect,h,"connect");E?a(I,"connect",R()):a(I,"lookup",L=>{L===null&&a(I,"connect",R())})}typeof e.secureConnect<"u"&&r.protocol==="https:"&&a(I,"connect",()=>{let R=u(e.secureConnect,h,"secureConnect");a(I,"secureConnect",R)})}if(typeof e.send<"u"){let E=()=>u(e.send,h,"send");I.connecting?a(I,"connect",()=>{a(t,"upload-complete",E())}):a(t,"upload-complete",E())}}),typeof e.response<"u"&&a(t,"upload-complete",()=>{let I=u(e.response,h,"response");a(t,"response",I)}),C}});var xae=_(h4=>{"use strict";Object.defineProperty(h4,"__esModule",{value:!0});var bae=Ff();h4.default=t=>{t=t;let e={protocol:t.protocol,hostname:bae.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 bae.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 kae=_(g4=>{"use strict";Object.defineProperty(g4,"__esModule",{value:!0});var Hit=Be("url"),jit=["protocol","host","hostname","port","pathname","search"];g4.default=(t,e)=>{var r,o;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}//${(o=(r=e.hostname)!==null&&r!==void 0?r:e.host)!==null&&o!==void 0?o:""}`}let a=new Hit.URL(t);if(e.path){let n=e.path.indexOf("?");n===-1?e.pathname=e.path:(e.pathname=e.path.slice(0,n),e.search=e.path.slice(n+1)),delete e.path}for(let n of jit)e[n]&&(a[n]=e[n].toString());return a}});var Qae=_(m4=>{"use strict";Object.defineProperty(m4,"__esModule",{value:!0});var d4=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)}};m4.default=d4});var E4=_(y4=>{"use strict";Object.defineProperty(y4,"__esModule",{value:!0});var qit=async t=>{let e=[],r=0;for await(let o of t)e.push(o),r+=Buffer.byteLength(o);return Buffer.isBuffer(e[0])?Buffer.concat(e,r):Buffer.from(e.join(""))};y4.default=qit});var Rae=_(Dd=>{"use strict";Object.defineProperty(Dd,"__esModule",{value:!0});Dd.dnsLookupIpVersionToFamily=Dd.isDnsLookupIpVersion=void 0;var Fae={auto:0,ipv4:4,ipv6:6};Dd.isDnsLookupIpVersion=t=>t in Fae;Dd.dnsLookupIpVersionToFamily=t=>{if(Dd.isDnsLookupIpVersion(t))return Fae[t];throw new Error("Invalid DNS lookup IP version")}});var C4=_(ob=>{"use strict";Object.defineProperty(ob,"__esModule",{value:!0});ob.isResponseOk=void 0;ob.isResponseOk=t=>{let{statusCode:e}=t,r=t.request.options.followRedirect?299:399;return e>=200&&e<=r||e===304}});var Nae=_(w4=>{"use strict";Object.defineProperty(w4,"__esModule",{value:!0});var Tae=new Set;w4.default=t=>{Tae.has(t)||(Tae.add(t),process.emitWarning(`Got: ${t}`,{type:"DeprecationWarning"}))}});var Lae=_(I4=>{"use strict";Object.defineProperty(I4,"__esModule",{value:!0});var Ai=Ff(),Git=(t,e)=>{if(Ai.default.null_(t.encoding))throw new TypeError("To get a Buffer, set `options.responseType` to `buffer` instead");Ai.assert.any([Ai.default.string,Ai.default.undefined],t.encoding),Ai.assert.any([Ai.default.boolean,Ai.default.undefined],t.resolveBodyOnly),Ai.assert.any([Ai.default.boolean,Ai.default.undefined],t.methodRewriting),Ai.assert.any([Ai.default.boolean,Ai.default.undefined],t.isStream),Ai.assert.any([Ai.default.string,Ai.default.undefined],t.responseType),t.responseType===void 0&&(t.responseType="text");let{retry:r}=t;if(e?t.retry={...e.retry}:t.retry={calculateDelay:o=>o.computedValue,limit:0,methods:[],statusCodes:[],errorCodes:[],maxRetryAfter:void 0},Ai.default.object(r)?(t.retry={...t.retry,...r},t.retry.methods=[...new Set(t.retry.methods.map(o=>o.toUpperCase()))],t.retry.statusCodes=[...new Set(t.retry.statusCodes)],t.retry.errorCodes=[...new Set(t.retry.errorCodes)]):Ai.default.number(r)&&(t.retry.limit=r),Ai.default.undefined(t.retry.maxRetryAfter)&&(t.retry.maxRetryAfter=Math.min(...[t.timeout.request,t.timeout.connect].filter(Ai.default.number))),Ai.default.object(t.pagination)){e&&(t.pagination={...e.pagination,...t.pagination});let{pagination:o}=t;if(!Ai.default.function_(o.transform))throw new Error("`options.pagination.transform` must be implemented");if(!Ai.default.function_(o.shouldContinue))throw new Error("`options.pagination.shouldContinue` must be implemented");if(!Ai.default.function_(o.filter))throw new TypeError("`options.pagination.filter` must be implemented");if(!Ai.default.function_(o.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};I4.default=Git});var Oae=_(g1=>{"use strict";Object.defineProperty(g1,"__esModule",{value:!0});g1.retryAfterStatusCodes=void 0;g1.retryAfterStatusCodes=new Set([413,429,503]);var Yit=({attemptCount:t,retryOptions:e,error:r,retryAfter:o})=>{if(t>e.limit)return 0;let a=e.methods.includes(r.options.method),n=e.errorCodes.includes(r.code),u=r.response&&e.statusCodes.includes(r.response.statusCode);if(!a||!n&&!u)return 0;if(r.response){if(o)return e.maxRetryAfter===void 0||o>e.maxRetryAfter?0:o;if(r.response.statusCode===413)return 0}let A=Math.random()*100;return 2**(t-1)*1e3+A};g1.default=Yit});var y1=_(Bn=>{"use strict";Object.defineProperty(Bn,"__esModule",{value:!0});Bn.UnsupportedProtocolError=Bn.ReadError=Bn.TimeoutError=Bn.UploadError=Bn.CacheError=Bn.HTTPError=Bn.MaxRedirectsError=Bn.RequestError=Bn.setNonEnumerableProperties=Bn.knownHookEvents=Bn.withoutBody=Bn.kIsNormalizedAlready=void 0;var Mae=Be("util"),Uae=Be("stream"),Wit=Be("fs"),oh=Be("url"),_ae=Be("http"),B4=Be("http"),Kit=Be("https"),Vit=toe(),zit=loe(),Hae=_oe(),Jit=Goe(),Xit=Eae(),Zit=tb(),st=Ff(),$it=vae(),jae=c4(),est=f4(),qae=Sae(),tst=xae(),Gae=kae(),rst=Qae(),nst=E4(),Yae=Rae(),ist=C4(),ah=Nae(),sst=Lae(),ost=Oae(),v4,Zs=Symbol("request"),ub=Symbol("response"),DE=Symbol("responseSize"),PE=Symbol("downloadedSize"),SE=Symbol("bodySize"),bE=Symbol("uploadedSize"),ab=Symbol("serverResponsesPiped"),Wae=Symbol("unproxyEvents"),Kae=Symbol("isFromCache"),D4=Symbol("cancelTimeouts"),Vae=Symbol("startedReading"),xE=Symbol("stopReading"),lb=Symbol("triggerRead"),lh=Symbol("body"),d1=Symbol("jobs"),zae=Symbol("originalResponse"),Jae=Symbol("retryTimeout");Bn.kIsNormalizedAlready=Symbol("isNormalizedAlready");var ast=st.default.string(process.versions.brotli);Bn.withoutBody=new Set(["GET","HEAD"]);Bn.knownHookEvents=["init","beforeRequest","beforeRedirect","beforeError","beforeRetry","afterResponse"];function lst(t){for(let e in t){let r=t[e];if(!st.default.string(r)&&!st.default.number(r)&&!st.default.boolean(r)&&!st.default.null_(r)&&!st.default.undefined(r))throw new TypeError(`The \`searchParams\` value '${String(r)}' must be a string, number, boolean or null`)}}function cst(t){return st.default.object(t)&&!("statusCode"in t)}var P4=new rst.default,ust=async t=>new Promise((e,r)=>{let o=a=>{r(a)};t.pending||e(),t.once("error",o),t.once("ready",()=>{t.off("error",o),e()})}),Ast=new Set([300,301,302,303,304,307,308]),fst=["context","body","json","form"];Bn.setNonEnumerableProperties=(t,e)=>{let r={};for(let o of t)if(!!o)for(let a of fst)a in o&&(r[a]={writable:!0,configurable:!0,enumerable:!1,value:o[a]});Object.defineProperties(e,r)};var Vi=class extends Error{constructor(e,r,o){var a;if(super(e),Error.captureStackTrace(this,this.constructor),this.name="RequestError",this.code=r.code,o instanceof mb?(Object.defineProperty(this,"request",{enumerable:!1,value:o}),Object.defineProperty(this,"response",{enumerable:!1,value:o[ub]}),Object.defineProperty(this,"options",{enumerable:!1,value:o.options})):Object.defineProperty(this,"options",{enumerable:!1,value:o}),this.timings=(a=this.request)===null||a===void 0?void 0:a.timings,st.default.string(r.stack)&&st.default.string(this.stack)){let n=this.stack.indexOf(this.message)+this.message.length,u=this.stack.slice(n).split(` +`).reverse(),A=r.stack.slice(r.stack.indexOf(r.message)+r.message.length).split(` +`).reverse();for(;A.length!==0&&A[0]===u[0];)u.shift();this.stack=`${this.stack.slice(0,n)}${u.reverse().join(` +`)}${A.reverse().join(` +`)}`}}};Bn.RequestError=Vi;var Ab=class extends Vi{constructor(e){super(`Redirected ${e.options.maxRedirects} times. Aborting.`,{},e),this.name="MaxRedirectsError"}};Bn.MaxRedirectsError=Ab;var fb=class extends Vi{constructor(e){super(`Response code ${e.statusCode} (${e.statusMessage})`,{},e.request),this.name="HTTPError"}};Bn.HTTPError=fb;var pb=class extends Vi{constructor(e,r){super(e.message,e,r),this.name="CacheError"}};Bn.CacheError=pb;var hb=class extends Vi{constructor(e,r){super(e.message,e,r),this.name="UploadError"}};Bn.UploadError=hb;var gb=class extends Vi{constructor(e,r,o){super(e.message,e,o),this.name="TimeoutError",this.event=e.event,this.timings=r}};Bn.TimeoutError=gb;var m1=class extends Vi{constructor(e,r){super(e.message,e,r),this.name="ReadError"}};Bn.ReadError=m1;var db=class extends Vi{constructor(e){super(`Unsupported protocol "${e.url.protocol}"`,{},e),this.name="UnsupportedProtocolError"}};Bn.UnsupportedProtocolError=db;var pst=["socket","connect","continue","information","upgrade","timeout"],mb=class extends Uae.Duplex{constructor(e,r={},o){super({autoDestroy:!1,highWaterMark:0}),this[PE]=0,this[bE]=0,this.requestInitialized=!1,this[ab]=new Set,this.redirects=[],this[xE]=!1,this[lb]=!1,this[d1]=[],this.retryCount=0,this._progressCallbacks=[];let a=()=>this._unlockWrite(),n=()=>this._lockWrite();this.on("pipe",h=>{h.prependListener("data",a),h.on("data",n),h.prependListener("end",a),h.on("end",n)}),this.on("unpipe",h=>{h.off("data",a),h.off("data",n),h.off("end",a),h.off("end",n)}),this.on("pipe",h=>{h instanceof B4.IncomingMessage&&(this.options.headers={...h.headers,...this.options.headers})});let{json:u,body:A,form:p}=r;if((u||A||p)&&this._lockWrite(),Bn.kIsNormalizedAlready in r)this.options=r;else try{this.options=this.constructor.normalizeArguments(e,r,o)}catch(h){st.default.nodeStream(r.body)&&r.body.destroy(),this.destroy(h);return}(async()=>{var h;try{this.options.body instanceof Wit.ReadStream&&await ust(this.options.body);let{url:C}=this.options;if(!C)throw new TypeError("Missing `url` property");if(this.requestUrl=C.toString(),decodeURI(this.requestUrl),await this._finalizeBody(),await this._makeRequest(),this.destroyed){(h=this[Zs])===null||h===void 0||h.destroy();return}for(let I of this[d1])I();this[d1].length=0,this.requestInitialized=!0}catch(C){if(C instanceof Vi){this._beforeError(C);return}this.destroyed||this.destroy(C)}})()}static normalizeArguments(e,r,o){var a,n,u,A,p;let h=r;if(st.default.object(e)&&!st.default.urlInstance(e))r={...o,...e,...r};else{if(e&&r&&r.url!==void 0)throw new TypeError("The `url` option is mutually exclusive with the `input` argument");r={...o,...r},e!==void 0&&(r.url=e),st.default.urlInstance(r.url)&&(r.url=new oh.URL(r.url.toString()))}if(r.cache===!1&&(r.cache=void 0),r.dnsCache===!1&&(r.dnsCache=void 0),st.assert.any([st.default.string,st.default.undefined],r.method),st.assert.any([st.default.object,st.default.undefined],r.headers),st.assert.any([st.default.string,st.default.urlInstance,st.default.undefined],r.prefixUrl),st.assert.any([st.default.object,st.default.undefined],r.cookieJar),st.assert.any([st.default.object,st.default.string,st.default.undefined],r.searchParams),st.assert.any([st.default.object,st.default.string,st.default.undefined],r.cache),st.assert.any([st.default.object,st.default.number,st.default.undefined],r.timeout),st.assert.any([st.default.object,st.default.undefined],r.context),st.assert.any([st.default.object,st.default.undefined],r.hooks),st.assert.any([st.default.boolean,st.default.undefined],r.decompress),st.assert.any([st.default.boolean,st.default.undefined],r.ignoreInvalidCookies),st.assert.any([st.default.boolean,st.default.undefined],r.followRedirect),st.assert.any([st.default.number,st.default.undefined],r.maxRedirects),st.assert.any([st.default.boolean,st.default.undefined],r.throwHttpErrors),st.assert.any([st.default.boolean,st.default.undefined],r.http2),st.assert.any([st.default.boolean,st.default.undefined],r.allowGetBody),st.assert.any([st.default.string,st.default.undefined],r.localAddress),st.assert.any([Yae.isDnsLookupIpVersion,st.default.undefined],r.dnsLookupIpVersion),st.assert.any([st.default.object,st.default.undefined],r.https),st.assert.any([st.default.boolean,st.default.undefined],r.rejectUnauthorized),r.https&&(st.assert.any([st.default.boolean,st.default.undefined],r.https.rejectUnauthorized),st.assert.any([st.default.function_,st.default.undefined],r.https.checkServerIdentity),st.assert.any([st.default.string,st.default.object,st.default.array,st.default.undefined],r.https.certificateAuthority),st.assert.any([st.default.string,st.default.object,st.default.array,st.default.undefined],r.https.key),st.assert.any([st.default.string,st.default.object,st.default.array,st.default.undefined],r.https.certificate),st.assert.any([st.default.string,st.default.undefined],r.https.passphrase),st.assert.any([st.default.string,st.default.buffer,st.default.array,st.default.undefined],r.https.pfx)),st.assert.any([st.default.object,st.default.undefined],r.cacheOptions),st.default.string(r.method)?r.method=r.method.toUpperCase():r.method="GET",r.headers===o?.headers?r.headers={...r.headers}:r.headers=Zit({...o?.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!==o?.searchParams){let x;if(st.default.string(r.searchParams)||r.searchParams instanceof oh.URLSearchParams)x=new oh.URLSearchParams(r.searchParams);else{lst(r.searchParams),x=new oh.URLSearchParams;for(let E in r.searchParams){let R=r.searchParams[E];R===null?x.append(E,""):R!==void 0&&x.append(E,R)}}(a=o?.searchParams)===null||a===void 0||a.forEach((E,R)=>{x.has(R)||x.append(R,E)}),r.searchParams=x}if(r.username=(n=r.username)!==null&&n!==void 0?n:"",r.password=(u=r.password)!==null&&u!==void 0?u:"",st.default.undefined(r.prefixUrl)?r.prefixUrl=(A=o?.prefixUrl)!==null&&A!==void 0?A:"":(r.prefixUrl=r.prefixUrl.toString(),r.prefixUrl!==""&&!r.prefixUrl.endsWith("/")&&(r.prefixUrl+="/")),st.default.string(r.url)){if(r.url.startsWith("/"))throw new Error("`input` must not start with a slash when using `prefixUrl`");r.url=Gae.default(r.prefixUrl+r.url,r)}else(st.default.undefined(r.url)&&r.prefixUrl!==""||r.protocol)&&(r.url=Gae.default(r.prefixUrl,r));if(r.url){"port"in r&&delete r.port;let{prefixUrl:x}=r;Object.defineProperty(r,"prefixUrl",{set:R=>{let L=r.url;if(!L.href.startsWith(R))throw new Error(`Cannot change \`prefixUrl\` from ${x} to ${R}: ${L.href}`);r.url=new oh.URL(R+L.href.slice(x.length)),x=R},get:()=>x});let{protocol:E}=r.url;if(E==="unix:"&&(E="http:",r.url=new oh.URL(`http://unix${r.url.pathname}${r.url.search}`)),r.searchParams&&(r.url.search=r.searchParams.toString()),E!=="http:"&&E!=="https:")throw new db(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:C}=r;if(C){let{setCookie:x,getCookieString:E}=C;st.assert.function_(x),st.assert.function_(E),x.length===4&&E.length===0&&(x=Mae.promisify(x.bind(r.cookieJar)),E=Mae.promisify(E.bind(r.cookieJar)),r.cookieJar={setCookie:x,getCookieString:E})}let{cache:I}=r;if(I&&(P4.has(I)||P4.set(I,new Hae((x,E)=>{let R=x[Zs](x,E);return st.default.promise(R)&&(R.once=(L,U)=>{if(L==="error")R.catch(U);else if(L==="abort")(async()=>{try{(await R).once("abort",U)}catch{}})();else throw new Error(`Unknown HTTP2 promise event: ${L}`);return R}),R},I))),r.cacheOptions={...r.cacheOptions},r.dnsCache===!0)v4||(v4=new zit.default),r.dnsCache=v4;else if(!st.default.undefined(r.dnsCache)&&!r.dnsCache.lookup)throw new TypeError(`Parameter \`dnsCache\` must be a CacheableLookup instance or a boolean, got ${st.default(r.dnsCache)}`);st.default.number(r.timeout)?r.timeout={request:r.timeout}:o&&r.timeout!==o.timeout?r.timeout={...o.timeout,...r.timeout}:r.timeout={...r.timeout},r.context||(r.context={});let v=r.hooks===o?.hooks;r.hooks={...r.hooks};for(let x of Bn.knownHookEvents)if(x in r.hooks)if(st.default.array(r.hooks[x]))r.hooks[x]=[...r.hooks[x]];else throw new TypeError(`Parameter \`${x}\` must be an Array, got ${st.default(r.hooks[x])}`);else r.hooks[x]=[];if(o&&!v)for(let x of Bn.knownHookEvents)o.hooks[x].length>0&&(r.hooks[x]=[...o.hooks[x],...r.hooks[x]]);if("family"in r&&ah.default('"options.family" was never documented, please use "options.dnsLookupIpVersion"'),o?.https&&(r.https={...o.https,...r.https}),"rejectUnauthorized"in r&&ah.default('"options.rejectUnauthorized" is now deprecated, please use "options.https.rejectUnauthorized"'),"checkServerIdentity"in r&&ah.default('"options.checkServerIdentity" was never documented, please use "options.https.checkServerIdentity"'),"ca"in r&&ah.default('"options.ca" was never documented, please use "options.https.certificateAuthority"'),"key"in r&&ah.default('"options.key" was never documented, please use "options.https.key"'),"cert"in r&&ah.default('"options.cert" was never documented, please use "options.https.certificate"'),"passphrase"in r&&ah.default('"options.passphrase" was never documented, please use "options.https.passphrase"'),"pfx"in r&&ah.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 x in r.agent)if(x!=="http"&&x!=="https"&&x!=="http2")throw new TypeError(`Expected the \`options.agent\` properties to be \`http\`, \`https\` or \`http2\`, got \`${x}\``)}return r.maxRedirects=(p=r.maxRedirects)!==null&&p!==void 0?p:0,Bn.setNonEnumerableProperties([o,h],r),sst.default(r,o)}_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,o=!st.default.undefined(e.form),a=!st.default.undefined(e.json),n=!st.default.undefined(e.body),u=o||a||n,A=Bn.withoutBody.has(e.method)&&!(e.method==="GET"&&e.allowGetBody);if(this._cannotHaveBody=A,u){if(A)throw new TypeError(`The \`${e.method}\` method cannot be used with a body`);if([n,o,a].filter(p=>p).length>1)throw new TypeError("The `body`, `json` and `form` options are mutually exclusive");if(n&&!(e.body instanceof Uae.Readable)&&!st.default.string(e.body)&&!st.default.buffer(e.body)&&!jae.default(e.body))throw new TypeError("The `body` option must be a stream.Readable, string or Buffer");if(o&&!st.default.object(e.form))throw new TypeError("The `form` option must be an Object");{let p=!st.default.string(r["content-type"]);n?(jae.default(e.body)&&p&&(r["content-type"]=`multipart/form-data; boundary=${e.body.getBoundary()}`),this[lh]=e.body):o?(p&&(r["content-type"]="application/x-www-form-urlencoded"),this[lh]=new oh.URLSearchParams(e.form).toString()):(p&&(r["content-type"]="application/json"),this[lh]=e.stringifyJson(e.json));let h=await $it.default(this[lh],e.headers);st.default.undefined(r["content-length"])&&st.default.undefined(r["transfer-encoding"])&&!A&&!st.default.undefined(h)&&(r["content-length"]=String(h))}}else A?this._lockWrite():this._unlockWrite();this[SE]=Number(r["content-length"])||void 0}async _onResponseBase(e){let{options:r}=this,{url:o}=r;this[zae]=e,r.decompress&&(e=Jit(e));let a=e.statusCode,n=e;n.statusMessage=n.statusMessage?n.statusMessage:_ae.STATUS_CODES[a],n.url=r.url.toString(),n.requestUrl=this.requestUrl,n.redirectUrls=this.redirects,n.request=this,n.isFromCache=e.fromCache||!1,n.ip=this.ip,n.retryCount=this.retryCount,this[Kae]=n.isFromCache,this[DE]=Number(e.headers["content-length"])||void 0,this[ub]=e,e.once("end",()=>{this[DE]=this[PE],this.emit("downloadProgress",this.downloadProgress)}),e.once("error",A=>{e.destroy(),this._beforeError(new m1(A,this))}),e.once("aborted",()=>{this._beforeError(new m1({name:"Error",message:"The server aborted pending request",code:"ECONNRESET"},this))}),this.emit("downloadProgress",this.downloadProgress);let u=e.headers["set-cookie"];if(st.default.object(r.cookieJar)&&u){let A=u.map(async p=>r.cookieJar.setCookie(p,o.toString()));r.ignoreInvalidCookies&&(A=A.map(async p=>p.catch(()=>{})));try{await Promise.all(A)}catch(p){this._beforeError(p);return}}if(r.followRedirect&&e.headers.location&&Ast.has(a)){if(e.resume(),this[Zs]&&(this[D4](),delete this[Zs],this[Wae]()),(a===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[lh]=void 0,delete r.headers["content-length"]),this.redirects.length>=r.maxRedirects){this._beforeError(new Ab(this));return}try{let p=Buffer.from(e.headers.location,"binary").toString(),h=new oh.URL(p,o),C=h.toString();decodeURI(C),h.hostname!==o.hostname||h.port!==o.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="")):(h.username=r.username,h.password=r.password),this.redirects.push(C),r.url=h;for(let I of r.hooks.beforeRedirect)await I(r,n);this.emit("redirect",n,r),await this._makeRequest()}catch(p){this._beforeError(p);return}return}if(r.isStream&&r.throwHttpErrors&&!ist.isResponseOk(n)){this._beforeError(new fb(n));return}e.on("readable",()=>{this[lb]&&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[ab])if(!A.headersSent){for(let p in e.headers){let h=r.decompress?p!=="content-encoding":!0,C=e.headers[p];h&&A.setHeader(p,C)}A.statusCode=a}}async _onResponse(e){try{await this._onResponseBase(e)}catch(r){this._beforeError(r)}}_onRequest(e){let{options:r}=this,{timeout:o,url:a}=r;Vit.default(e),this[D4]=qae.default(e,o,a);let n=r.cache?"cacheableResponse":"response";e.once(n,p=>{this._onResponse(p)}),e.once("error",p=>{var h;e.destroy(),(h=e.res)===null||h===void 0||h.removeAllListeners("end"),p=p instanceof qae.TimeoutError?new gb(p,this.timings,this):new Vi(p.message,p,this),this._beforeError(p)}),this[Wae]=est.default(e,this,pst),this[Zs]=e,this.emit("uploadProgress",this.uploadProgress);let u=this[lh],A=this.redirects.length===0?this:e;st.default.nodeStream(u)?(u.pipe(A),u.once("error",p=>{this._beforeError(new hb(p,this))})):(this._unlockWrite(),st.default.undefined(u)?(this._cannotHaveBody||this._noPipe)&&(A.end(),this._lockWrite()):(this._writeRequest(u,void 0,()=>{}),A.end(),this._lockWrite())),this.emit("request",e)}async _createCacheableRequest(e,r){return new Promise((o,a)=>{Object.assign(r,tst.default(e)),delete r.url;let n,u=P4.get(r.cache)(r,async A=>{A._readableState.autoDestroy=!1,n&&(await n).emit("cacheableResponse",A),o(A)});r.url=e,u.once("error",a),u.once("request",async A=>{n=A,o(n)})})}async _makeRequest(){var e,r,o,a,n;let{options:u}=this,{headers:A}=u;for(let U in A)if(st.default.undefined(A[U]))delete A[U];else if(st.default.null_(A[U]))throw new TypeError(`Use \`undefined\` instead of \`null\` to delete the \`${U}\` header`);if(u.decompress&&st.default.undefined(A["accept-encoding"])&&(A["accept-encoding"]=ast?"gzip, deflate, br":"gzip, deflate"),u.cookieJar){let U=await u.cookieJar.getCookieString(u.url.toString());st.default.nonEmptyString(U)&&(u.headers.cookie=U)}for(let U of u.hooks.beforeRequest){let z=await U(u);if(!st.default.undefined(z)){u.request=()=>z;break}}u.body&&this[lh]!==u.body&&(this[lh]=u.body);let{agent:p,request:h,timeout:C,url:I}=u;if(u.dnsCache&&!("lookup"in u)&&(u.lookup=u.dnsCache.lookup),I.hostname==="unix"){let U=/(?.+?):(?.+)/.exec(`${I.pathname}${I.search}`);if(U?.groups){let{socketPath:z,path:te}=U.groups;Object.assign(u,{socketPath:z,path:te,host:""})}}let v=I.protocol==="https:",x;u.http2?x=Xit.auto:x=v?Kit.request:_ae.request;let E=(e=u.request)!==null&&e!==void 0?e:x,R=u.cache?this._createCacheableRequest:E;p&&!u.http2&&(u.agent=p[v?"https":"http"]),u[Zs]=E,delete u.request,delete u.timeout;let L=u;if(L.shared=(r=u.cacheOptions)===null||r===void 0?void 0:r.shared,L.cacheHeuristic=(o=u.cacheOptions)===null||o===void 0?void 0:o.cacheHeuristic,L.immutableMinTimeToLive=(a=u.cacheOptions)===null||a===void 0?void 0:a.immutableMinTimeToLive,L.ignoreCargoCult=(n=u.cacheOptions)===null||n===void 0?void 0:n.ignoreCargoCult,u.dnsLookupIpVersion!==void 0)try{L.family=Yae.dnsLookupIpVersionToFamily(u.dnsLookupIpVersion)}catch{throw new Error("Invalid `dnsLookupIpVersion` option value")}u.https&&("rejectUnauthorized"in u.https&&(L.rejectUnauthorized=u.https.rejectUnauthorized),u.https.checkServerIdentity&&(L.checkServerIdentity=u.https.checkServerIdentity),u.https.certificateAuthority&&(L.ca=u.https.certificateAuthority),u.https.certificate&&(L.cert=u.https.certificate),u.https.key&&(L.key=u.https.key),u.https.passphrase&&(L.passphrase=u.https.passphrase),u.https.pfx&&(L.pfx=u.https.pfx));try{let U=await R(I,L);st.default.undefined(U)&&(U=x(I,L)),u.request=h,u.timeout=C,u.agent=p,u.https&&("rejectUnauthorized"in u.https&&delete L.rejectUnauthorized,u.https.checkServerIdentity&&delete L.checkServerIdentity,u.https.certificateAuthority&&delete L.ca,u.https.certificate&&delete L.cert,u.https.key&&delete L.key,u.https.passphrase&&delete L.passphrase,u.https.pfx&&delete L.pfx),cst(U)?this._onRequest(U):this.writable?(this.once("finish",()=>{this._onResponse(U)}),this._unlockWrite(),this.end(),this._lockWrite()):this._onResponse(U)}catch(U){throw U instanceof Hae.CacheError?new pb(U,this):new Vi(U.message,U,this)}}async _error(e){try{for(let r of this.options.hooks.beforeError)e=await r(e)}catch(r){e=new Vi(r.message,r,this)}this.destroy(e)}_beforeError(e){if(this[xE])return;let{options:r}=this,o=this.retryCount+1;this[xE]=!0,e instanceof Vi||(e=new Vi(e.message,e,this));let a=e,{response:n}=a;(async()=>{if(n&&!n.body){n.setEncoding(this._readableState.encoding);try{n.rawBody=await nst.default(n),n.body=n.rawBody.toString()}catch{}}if(this.listenerCount("retry")!==0){let u;try{let A;n&&"retry-after"in n.headers&&(A=Number(n.headers["retry-after"]),Number.isNaN(A)?(A=Date.parse(n.headers["retry-after"])-Date.now(),A<=0&&(A=1)):A*=1e3),u=await r.retry.calculateDelay({attemptCount:o,retryOptions:r.retry,error:a,retryAfter:A,computedValue:ost.default({attemptCount:o,retryOptions:r.retry,error:a,retryAfter:A,computedValue:0})})}catch(A){this._error(new Vi(A.message,A,this));return}if(u){let A=async()=>{try{for(let p of this.options.hooks.beforeRetry)await p(this.options,a,o)}catch(p){this._error(new Vi(p.message,e,this));return}this.destroyed||(this.destroy(),this.emit("retry",o,e))};this[Jae]=setTimeout(A,u);return}}this._error(a)})()}_read(){this[lb]=!0;let e=this[ub];if(e&&!this[xE]){e.readableLength&&(this[lb]=!1);let r;for(;(r=e.read())!==null;){this[PE]+=r.length,this[Vae]=!0;let o=this.downloadProgress;o.percent<1&&this.emit("downloadProgress",o),this.push(r)}}}_write(e,r,o){let a=()=>{this._writeRequest(e,r,o)};this.requestInitialized?a():this[d1].push(a)}_writeRequest(e,r,o){this[Zs].destroyed||(this._progressCallbacks.push(()=>{this[bE]+=Buffer.byteLength(e,r);let a=this.uploadProgress;a.percent<1&&this.emit("uploadProgress",a)}),this[Zs].write(e,r,a=>{!a&&this._progressCallbacks.length>0&&this._progressCallbacks.shift()(),o(a)}))}_final(e){let r=()=>{for(;this._progressCallbacks.length!==0;)this._progressCallbacks.shift()();if(!(Zs in this)){e();return}if(this[Zs].destroyed){e();return}this[Zs].end(o=>{o||(this[SE]=this[bE],this.emit("uploadProgress",this.uploadProgress),this[Zs].emit("upload-complete")),e(o)})};this.requestInitialized?r():this[d1].push(r)}_destroy(e,r){var o;this[xE]=!0,clearTimeout(this[Jae]),Zs in this&&(this[D4](),!((o=this[ub])===null||o===void 0)&&o.complete||this[Zs].destroy()),e!==null&&!st.default.undefined(e)&&!(e instanceof Vi)&&(e=new Vi(e.message,e,this)),r(e)}get _isAboutToError(){return this[xE]}get ip(){var e;return(e=this.socket)===null||e===void 0?void 0:e.remoteAddress}get aborted(){var e,r,o;return((r=(e=this[Zs])===null||e===void 0?void 0:e.destroyed)!==null&&r!==void 0?r:this.destroyed)&&!(!((o=this[zae])===null||o===void 0)&&o.complete)}get socket(){var e,r;return(r=(e=this[Zs])===null||e===void 0?void 0:e.socket)!==null&&r!==void 0?r:void 0}get downloadProgress(){let e;return this[DE]?e=this[PE]/this[DE]:this[DE]===this[PE]?e=1:e=0,{percent:e,transferred:this[PE],total:this[DE]}}get uploadProgress(){let e;return this[SE]?e=this[bE]/this[SE]:this[SE]===this[bE]?e=1:e=0,{percent:e,transferred:this[bE],total:this[SE]}}get timings(){var e;return(e=this[Zs])===null||e===void 0?void 0:e.timings}get isFromCache(){return this[Kae]}pipe(e,r){if(this[Vae])throw new Error("Failed to pipe. The response has been emitted already.");return e instanceof B4.ServerResponse&&this[ab].add(e),super.pipe(e,r)}unpipe(e){return e instanceof B4.ServerResponse&&this[ab].delete(e),super.unpipe(e),this}};Bn.default=mb});var E1=_(qc=>{"use strict";var hst=qc&&qc.__createBinding||(Object.create?function(t,e,r,o){o===void 0&&(o=r),Object.defineProperty(t,o,{enumerable:!0,get:function(){return e[r]}})}:function(t,e,r,o){o===void 0&&(o=r),t[o]=e[r]}),gst=qc&&qc.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&hst(e,t,r)};Object.defineProperty(qc,"__esModule",{value:!0});qc.CancelError=qc.ParseError=void 0;var Xae=y1(),S4=class extends Xae.RequestError{constructor(e,r){let{options:o}=r.request;super(`${e.message} in "${o.url.toString()}"`,e,r.request),this.name="ParseError"}};qc.ParseError=S4;var b4=class extends Xae.RequestError{constructor(e){super("Promise was canceled",{},e),this.name="CancelError"}get isCanceled(){return!0}};qc.CancelError=b4;gst(y1(),qc)});var $ae=_(x4=>{"use strict";Object.defineProperty(x4,"__esModule",{value:!0});var Zae=E1(),dst=(t,e,r,o)=>{let{rawBody:a}=t;try{if(e==="text")return a.toString(o);if(e==="json")return a.length===0?"":r(a.toString());if(e==="buffer")return a;throw new Zae.ParseError({message:`Unknown body type '${e}'`,name:"Error"},t)}catch(n){throw new Zae.ParseError(n,t)}};x4.default=dst});var k4=_(ch=>{"use strict";var mst=ch&&ch.__createBinding||(Object.create?function(t,e,r,o){o===void 0&&(o=r),Object.defineProperty(t,o,{enumerable:!0,get:function(){return e[r]}})}:function(t,e,r,o){o===void 0&&(o=r),t[o]=e[r]}),yst=ch&&ch.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&mst(e,t,r)};Object.defineProperty(ch,"__esModule",{value:!0});var Est=Be("events"),Cst=Ff(),wst=$se(),yb=E1(),ele=$ae(),tle=y1(),Ist=f4(),Bst=E4(),rle=C4(),vst=["request","response","redirect","uploadProgress","downloadProgress"];function nle(t){let e,r,o=new Est.EventEmitter,a=new wst((u,A,p)=>{let h=C=>{let I=new tle.default(void 0,t);I.retryCount=C,I._noPipe=!0,p(()=>I.destroy()),p.shouldReject=!1,p(()=>A(new yb.CancelError(I))),e=I,I.once("response",async E=>{var R;if(E.retryCount=C,E.request.aborted)return;let L;try{L=await Bst.default(I),E.rawBody=L}catch{return}if(I._isAboutToError)return;let U=((R=E.headers["content-encoding"])!==null&&R!==void 0?R:"").toLowerCase(),z=["gzip","deflate","br"].includes(U),{options:te}=I;if(z&&!te.decompress)E.body=L;else try{E.body=ele.default(E,te.responseType,te.parseJson,te.encoding)}catch(le){if(E.body=L.toString(),rle.isResponseOk(E)){I._beforeError(le);return}}try{for(let[le,he]of te.hooks.afterResponse.entries())E=await he(E,async Ae=>{let ye=tle.default.normalizeArguments(void 0,{...Ae,retry:{calculateDelay:()=>0},throwHttpErrors:!1,resolveBodyOnly:!1},te);ye.hooks.afterResponse=ye.hooks.afterResponse.slice(0,le);for(let Ie of ye.hooks.beforeRetry)await Ie(ye);let ae=nle(ye);return p(()=>{ae.catch(()=>{}),ae.cancel()}),ae})}catch(le){I._beforeError(new yb.RequestError(le.message,le,I));return}if(!rle.isResponseOk(E)){I._beforeError(new yb.HTTPError(E));return}r=E,u(I.options.resolveBodyOnly?E.body:E)});let v=E=>{if(a.isCanceled)return;let{options:R}=I;if(E instanceof yb.HTTPError&&!R.throwHttpErrors){let{response:L}=E;u(I.options.resolveBodyOnly?L.body:L);return}A(E)};I.once("error",v);let x=I.options.body;I.once("retry",(E,R)=>{var L,U;if(x===((L=R.request)===null||L===void 0?void 0:L.options.body)&&Cst.default.nodeStream((U=R.request)===null||U===void 0?void 0:U.options.body)){v(R);return}h(E)}),Ist.default(I,o,vst)};h(0)});a.on=(u,A)=>(o.on(u,A),a);let n=u=>{let A=(async()=>{await a;let{options:p}=r.request;return ele.default(r,u,p.parseJson,p.encoding)})();return Object.defineProperties(A,Object.getOwnPropertyDescriptors(a)),A};return a.json=()=>{let{headers:u}=e.options;return!e.writableFinished&&u.accept===void 0&&(u.accept="application/json"),n("json")},a.buffer=()=>n("buffer"),a.text=()=>n("text"),a}ch.default=nle;yst(E1(),ch)});var ile=_(Q4=>{"use strict";Object.defineProperty(Q4,"__esModule",{value:!0});var Dst=E1();function Pst(t,...e){let r=(async()=>{if(t instanceof Dst.RequestError)try{for(let a of e)if(a)for(let n of a)t=await n(t)}catch(a){t=a}throw t})(),o=()=>r;return r.json=o,r.text=o,r.buffer=o,r.on=o,r}Q4.default=Pst});var ale=_(F4=>{"use strict";Object.defineProperty(F4,"__esModule",{value:!0});var sle=Ff();function ole(t){for(let e of Object.values(t))(sle.default.plainObject(e)||sle.default.array(e))&&ole(e);return Object.freeze(t)}F4.default=ole});var cle=_(lle=>{"use strict";Object.defineProperty(lle,"__esModule",{value:!0})});var R4=_(Vl=>{"use strict";var Sst=Vl&&Vl.__createBinding||(Object.create?function(t,e,r,o){o===void 0&&(o=r),Object.defineProperty(t,o,{enumerable:!0,get:function(){return e[r]}})}:function(t,e,r,o){o===void 0&&(o=r),t[o]=e[r]}),bst=Vl&&Vl.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&Sst(e,t,r)};Object.defineProperty(Vl,"__esModule",{value:!0});Vl.defaultHandler=void 0;var ule=Ff(),Kl=k4(),xst=ile(),Cb=y1(),kst=ale(),Qst={RequestError:Kl.RequestError,CacheError:Kl.CacheError,ReadError:Kl.ReadError,HTTPError:Kl.HTTPError,MaxRedirectsError:Kl.MaxRedirectsError,TimeoutError:Kl.TimeoutError,ParseError:Kl.ParseError,CancelError:Kl.CancelError,UnsupportedProtocolError:Kl.UnsupportedProtocolError,UploadError:Kl.UploadError},Fst=async t=>new Promise(e=>{setTimeout(e,t)}),{normalizeArguments:Eb}=Cb.default,Ale=(...t)=>{let e;for(let r of t)e=Eb(void 0,r,e);return e},Rst=t=>t.isStream?new Cb.default(void 0,t):Kl.default(t),Tst=t=>"defaults"in t&&"options"in t.defaults,Nst=["get","post","put","patch","head","delete"];Vl.defaultHandler=(t,e)=>e(t);var fle=(t,e)=>{if(t)for(let r of t)r(e)},ple=t=>{t._rawHandlers=t.handlers,t.handlers=t.handlers.map(o=>(a,n)=>{let u,A=o(a,p=>(u=n(p),u));if(A!==u&&!a.isStream&&u){let p=A,{then:h,catch:C,finally:I}=p;Object.setPrototypeOf(p,Object.getPrototypeOf(u)),Object.defineProperties(p,Object.getOwnPropertyDescriptors(u)),p.then=h,p.catch=C,p.finally=I}return A});let e=(o,a={},n)=>{var u,A;let p=0,h=C=>t.handlers[p++](C,p===t.handlers.length?Rst:h);if(ule.default.plainObject(o)){let C={...o,...a};Cb.setNonEnumerableProperties([o,a],C),a=C,o=void 0}try{let C;try{fle(t.options.hooks.init,a),fle((u=a.hooks)===null||u===void 0?void 0:u.init,a)}catch(v){C=v}let I=Eb(o,a,n??t.options);if(I[Cb.kIsNormalizedAlready]=!0,C)throw new Kl.RequestError(C.message,C,I);return h(I)}catch(C){if(a.isStream)throw C;return xst.default(C,t.options.hooks.beforeError,(A=a.hooks)===null||A===void 0?void 0:A.beforeError)}};e.extend=(...o)=>{let a=[t.options],n=[...t._rawHandlers],u;for(let A of o)Tst(A)?(a.push(A.defaults.options),n.push(...A.defaults._rawHandlers),u=A.defaults.mutableDefaults):(a.push(A),"handlers"in A&&n.push(...A.handlers),u=A.mutableDefaults);return n=n.filter(A=>A!==Vl.defaultHandler),n.length===0&&n.push(Vl.defaultHandler),ple({options:Ale(...a),handlers:n,mutableDefaults:Boolean(u)})};let r=async function*(o,a){let n=Eb(o,a,t.options);n.resolveBodyOnly=!1;let u=n.pagination;if(!ule.default.object(u))throw new TypeError("`options.pagination` must be implemented");let A=[],{countLimit:p}=u,h=0;for(;h{let n=[];for await(let u of r(o,a))n.push(u);return n},e.paginate.each=r,e.stream=(o,a)=>e(o,{...a,isStream:!0});for(let o of Nst)e[o]=(a,n)=>e(a,{...n,method:o}),e.stream[o]=(a,n)=>e(a,{...n,method:o,isStream:!0});return Object.assign(e,Qst),Object.defineProperty(e,"defaults",{value:t.mutableDefaults?t:kst.default(t),writable:t.mutableDefaults,configurable:t.mutableDefaults,enumerable:!0}),e.mergeOptions=Ale,e};Vl.default=ple;bst(cle(),Vl)});var dle=_((Rf,wb)=>{"use strict";var Lst=Rf&&Rf.__createBinding||(Object.create?function(t,e,r,o){o===void 0&&(o=r),Object.defineProperty(t,o,{enumerable:!0,get:function(){return e[r]}})}:function(t,e,r,o){o===void 0&&(o=r),t[o]=e[r]}),hle=Rf&&Rf.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&Lst(e,t,r)};Object.defineProperty(Rf,"__esModule",{value:!0});var Ost=Be("url"),gle=R4(),Mst={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 o of e){let a=o.split(";");if(a[1].includes("next")){r=a[0].trimStart().trim(),r=r.slice(1,-1);break}}return r?{url:new Ost.URL(r)}:!1},filter:()=>!0,shouldContinue:()=>!0,countLimit:1/0,backoff:0,requestLimit:1e4,stackAllItems:!0},parseJson:t=>JSON.parse(t),stringifyJson:t=>JSON.stringify(t),cacheOptions:{}},handlers:[gle.defaultHandler],mutableDefaults:!1},T4=gle.default(Mst);Rf.default=T4;wb.exports=T4;wb.exports.default=T4;wb.exports.__esModule=!0;hle(R4(),Rf);hle(k4(),Rf)});var rn={};Vt(rn,{Method:()=>Ble,del:()=>qst,get:()=>M4,getNetworkSettings:()=>Ile,post:()=>U4,put:()=>jst,request:()=>C1});function Ele(t){let e=new Ib.URL(t),r={host:e.hostname,headers:{}};return e.port&&(r.port=Number(e.port)),e.username&&e.password&&(r.proxyAuth=`${e.username}:${e.password}`),{proxy:r}}async function N4(t){return ol(yle,t,()=>oe.readFilePromise(t).then(e=>(yle.set(t,e),e)))}function Hst({statusCode:t,statusMessage:e},r){let o=Mt(r,t,yt.NUMBER),a=`https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/${t}`;return Jy(r,`${o}${e?` (${e})`:""}`,a)}async function Bb(t,{configuration:e,customErrorMessage:r}){try{return await t}catch(o){if(o.name!=="HTTPError")throw o;let a=r?.(o,e)??o.response.body?.error;a==null&&(o.message.startsWith("Response code")?a="The remote server failed to provide the requested resource":a=o.message),o.code==="ETIMEDOUT"&&o.event==="socket"&&(a+=`(can be increased via ${Mt(e,"httpTimeout",yt.SETTING)})`);let n=new Jt(35,a,u=>{o.response&&u.reportError(35,` ${Ju(e,{label:"Response Code",value:_c(yt.NO_HINT,Hst(o.response,e))})}`),o.request&&(u.reportError(35,` ${Ju(e,{label:"Request Method",value:_c(yt.NO_HINT,o.request.options.method)})}`),u.reportError(35,` ${Ju(e,{label:"Request URL",value:_c(yt.URL,o.request.requestUrl)})}`)),o.request.redirects.length>0&&u.reportError(35,` ${Ju(e,{label:"Request Redirects",value:_c(yt.NO_HINT,xL(e,o.request.redirects,yt.URL))})}`),o.request.retryCount===o.request.options.retry.limit&&u.reportError(35,` ${Ju(e,{label:"Request Retry Count",value:_c(yt.NO_HINT,`${Mt(e,o.request.retryCount,yt.NUMBER)} (can be increased via ${Mt(e,"httpRetry",yt.SETTING)})`)})}`)});throw n.originalError=o,n}}function Ile(t,e){let r=[...e.configuration.get("networkSettings")].sort(([u],[A])=>A.length-u.length),o={enableNetwork:void 0,httpsCaFilePath:void 0,httpProxy:void 0,httpsProxy:void 0,httpsKeyFilePath:void 0,httpsCertFilePath:void 0},a=Object.keys(o),n=typeof t=="string"?new Ib.URL(t):t;for(let[u,A]of r)if(O4.default.isMatch(n.hostname,u))for(let p of a){let h=A.get(p);h!==null&&typeof o[p]>"u"&&(o[p]=h)}for(let u of a)typeof o[u]>"u"&&(o[u]=e.configuration.get(u));return o}async function C1(t,e,{configuration:r,headers:o,jsonRequest:a,jsonResponse:n,method:u="GET",wrapNetworkRequest:A}){let p={target:t,body:e,configuration:r,headers:o,jsonRequest:a,jsonResponse:n,method:u},h=async()=>await Gst(t,e,p),C=typeof A<"u"?await A(h,p):h;return await(await r.reduceHook(v=>v.wrapNetworkRequest,C,p))()}async function M4(t,{configuration:e,jsonResponse:r,customErrorMessage:o,wrapNetworkRequest:a,...n}){let u=()=>Bb(C1(t,null,{configuration:e,wrapNetworkRequest:a,...n}),{configuration:e,customErrorMessage:o}).then(p=>p.body),A=await(typeof a<"u"?u():ol(mle,t,()=>u().then(p=>(mle.set(t,p),p))));return r?JSON.parse(A.toString()):A}async function jst(t,e,{customErrorMessage:r,...o}){return(await Bb(C1(t,e,{...o,method:"PUT"}),{customErrorMessage:r,configuration:o.configuration})).body}async function U4(t,e,{customErrorMessage:r,...o}){return(await Bb(C1(t,e,{...o,method:"POST"}),{customErrorMessage:r,configuration:o.configuration})).body}async function qst(t,{customErrorMessage:e,...r}){return(await Bb(C1(t,null,{...r,method:"DELETE"}),{customErrorMessage:e,configuration:r.configuration})).body}async function Gst(t,e,{configuration:r,headers:o,jsonRequest:a,jsonResponse:n,method:u="GET"}){let A=typeof t=="string"?new Ib.URL(t):t,p=Ile(A,{configuration:r});if(p.enableNetwork===!1)throw new Jt(80,`Request to '${A.href}' has been blocked because of your configuration settings`);if(A.protocol==="http:"&&!O4.default.isMatch(A.hostname,r.get("unsafeHttpWhitelist")))throw new Jt(81,`Unsafe http requests must be explicitly whitelisted in your configuration (${A.hostname})`);let C={agent:{http:p.httpProxy?L4.default.httpOverHttp(Ele(p.httpProxy)):Ust,https:p.httpsProxy?L4.default.httpsOverHttp(Ele(p.httpsProxy)):_st},headers:o,method:u};C.responseType=n?"json":"buffer",e!==null&&(Buffer.isBuffer(e)||!a&&typeof e=="string"?C.body=e:C.json=e);let I=r.get("httpTimeout"),v=r.get("httpRetry"),x=r.get("enableStrictSsl"),E=p.httpsCaFilePath,R=p.httpsCertFilePath,L=p.httpsKeyFilePath,{default:U}=await Promise.resolve().then(()=>$e(dle())),z=E?await N4(E):void 0,te=R?await N4(R):void 0,le=L?await N4(L):void 0,he=U.extend({timeout:{socket:I},retry:v,https:{rejectUnauthorized:x,certificateAuthority:z,certificate:te,key:le},...C});return r.getLimit("networkConcurrency")(()=>he(A))}var Cle,wle,O4,L4,Ib,mle,yle,Ust,_st,Ble,vb=Et(()=>{Pt();Cle=Be("https"),wle=Be("http"),O4=$e(Zo()),L4=$e(Vse()),Ib=Be("url");Yl();ql();jl();mle=new Map,yle=new Map,Ust=new wle.Agent({keepAlive:!0}),_st=new Cle.Agent({keepAlive:!0});Ble=(a=>(a.GET="GET",a.PUT="PUT",a.POST="POST",a.DELETE="DELETE",a))(Ble||{})});var zi={};Vt(zi,{availableParallelism:()=>H4,getArchitecture:()=>w1,getArchitectureName:()=>Vst,getArchitectureSet:()=>_4,getCaller:()=>Zst,major:()=>Yst,openUrl:()=>Wst});function Kst(){if(process.platform==="darwin"||process.platform==="win32")return null;let e=(process.report?.getReport()??{}).sharedObjects??[],r=/\/(?:(ld-linux-|[^/]+-linux-gnu\/)|(libc.musl-|ld-musl-))/;return YI(e,o=>{let a=o.match(r);if(!a)return YI.skip;if(a[1])return"glibc";if(a[2])return"musl";throw new Error("Assertion failed: Expected the libc variant to have been detected")})??null}function w1(){return Dle=Dle??{os:process.platform,cpu:process.arch,libc:Kst()}}function Vst(t=w1()){return t.libc?`${t.os}-${t.cpu}-${t.libc}`:`${t.os}-${t.cpu}`}function _4(){let t=w1();return Ple=Ple??{os:[t.os],cpu:[t.cpu],libc:t.libc?[t.libc]:[]}}function Xst(t){let e=zst.exec(t);if(!e)return null;let r=e[2]&&e[2].indexOf("native")===0,o=e[2]&&e[2].indexOf("eval")===0,a=Jst.exec(e[2]);return o&&a!=null&&(e[2]=a[1],e[3]=a[2],e[4]=a[3]),{file:r?null:e[2],methodName:e[1]||"",arguments:r?[e[2]]:[],line:e[3]?+e[3]:null,column:e[4]?+e[4]:null}}function Zst(){let e=new Error().stack.split(` +`)[3];return Xst(e)}function H4(){return typeof Db.default.availableParallelism<"u"?Db.default.availableParallelism():Math.max(1,Db.default.cpus().length)}var Db,Yst,vle,Wst,Dle,Ple,zst,Jst,Pb=Et(()=>{Pt();Db=$e(Be("os"));Sb();jl();Yst=Number(process.versions.node.split(".")[0]),vle=new Map([["darwin","open"],["linux","xdg-open"],["win32","explorer.exe"]]).get(process.platform),Wst=typeof vle<"u"?async t=>{try{return await j4(vle,[t],{cwd:V.cwd()}),!0}catch{return!1}}:void 0;zst=/^\s*at (.*?) ?\(((?:file|https?|blob|chrome-extension|native|eval|webpack||\/|[a-z]:\\|\\\\).*?)(?::(\d+))?(?::(\d+))?\)?\s*$/i,Jst=/\((\S*)(?::(\d+))(?::(\d+))\)/});function K4(t,e,r,o,a){let n=c1(r);if(o.isArray||o.type==="ANY"&&Array.isArray(n))return Array.isArray(n)?n.map((u,A)=>q4(t,`${e}[${A}]`,u,o,a)):String(n).split(/,/).map(u=>q4(t,e,u,o,a));if(Array.isArray(n))throw new Error(`Non-array configuration settings "${e}" cannot be an array`);return q4(t,e,r,o,a)}function q4(t,e,r,o,a){let n=c1(r);switch(o.type){case"ANY":return YS(n);case"SHAPE":return rot(t,e,r,o,a);case"MAP":return not(t,e,r,o,a)}if(n===null&&!o.isNullable&&o.default!==null)throw new Error(`Non-nullable configuration settings "${e}" cannot be set to null`);if(o.values?.includes(n))return n;let A=(()=>{if(o.type==="BOOLEAN"&&typeof n!="string")return WI(n);if(typeof n!="string")throw new Error(`Expected configuration setting "${e}" to be a string, got ${typeof n}`);let p=sS(n,{env:t.env});switch(o.type){case"ABSOLUTE_PATH":{let h=a,C=EM(r);return C&&C[0]!=="<"&&(h=V.dirname(C)),V.resolve(h,ue.toPortablePath(p))}case"LOCATOR_LOOSE":return Sf(p,!1);case"NUMBER":return parseInt(p);case"LOCATOR":return Sf(p);case"BOOLEAN":return WI(p);default:return p}})();if(o.values&&!o.values.includes(A))throw new Error(`Invalid value, expected one of ${o.values.join(", ")}`);return A}function rot(t,e,r,o,a){let n=c1(r);if(typeof n!="object"||Array.isArray(n))throw new it(`Object configuration settings "${e}" must be an object`);let u=V4(t,o,{ignoreArrays:!0});if(n===null)return u;for(let[A,p]of Object.entries(n)){let h=`${e}.${A}`;if(!o.properties[A])throw new it(`Unrecognized configuration settings found: ${e}.${A} - run "yarn config -v" to see the list of settings supported in Yarn`);u.set(A,K4(t,h,p,o.properties[A],a))}return u}function not(t,e,r,o,a){let n=c1(r),u=new Map;if(typeof n!="object"||Array.isArray(n))throw new it(`Map configuration settings "${e}" must be an object`);if(n===null)return u;for(let[A,p]of Object.entries(n)){let h=o.normalizeKeys?o.normalizeKeys(A):A,C=`${e}['${h}']`,I=o.valueDefinition;u.set(h,K4(t,C,p,I,a))}return u}function V4(t,e,{ignoreArrays:r=!1}={}){switch(e.type){case"SHAPE":{if(e.isArray&&!r)return[];let o=new Map;for(let[a,n]of Object.entries(e.properties))o.set(a,V4(t,n));return o}break;case"MAP":return e.isArray&&!r?[]:new Map;case"ABSOLUTE_PATH":return e.default===null?null:t.projectCwd===null?Array.isArray(e.default)?e.default.map(o=>V.normalize(o)):V.isAbsolute(e.default)?V.normalize(e.default):e.isNullable?null:void 0:Array.isArray(e.default)?e.default.map(o=>V.resolve(t.projectCwd,o)):V.resolve(t.projectCwd,e.default);default:return e.default}}function xb(t,e,r){if(e.type==="SECRET"&&typeof t=="string"&&r.hideSecrets)return tot;if(e.type==="ABSOLUTE_PATH"&&typeof t=="string"&&r.getNativePaths)return ue.fromPortablePath(t);if(e.isArray&&Array.isArray(t)){let o=[];for(let a of t)o.push(xb(a,e,r));return o}if(e.type==="MAP"&&t instanceof Map){if(t.size===0)return;let o=new Map;for(let[a,n]of t.entries()){let u=xb(n,e.valueDefinition,r);typeof u<"u"&&o.set(a,u)}return o}if(e.type==="SHAPE"&&t instanceof Map){if(t.size===0)return;let o=new Map;for(let[a,n]of t.entries()){let u=e.properties[a],A=xb(n,u,r);typeof A<"u"&&o.set(a,A)}return o}return t}function iot(){let t={};for(let[e,r]of Object.entries(process.env))e=e.toLowerCase(),e.startsWith(kb)&&(e=(0,ble.default)(e.slice(kb.length)),t[e]=r);return t}function Y4(){let t=`${kb}rc_filename`;for(let[e,r]of Object.entries(process.env))if(e.toLowerCase()===t&&typeof r=="string")return r;return W4}async function Sle(t){try{return await oe.readFilePromise(t)}catch{return Buffer.of()}}async function sot(t,e){return Buffer.compare(...await Promise.all([Sle(t),Sle(e)]))===0}async function oot(t,e){let[r,o]=await Promise.all([oe.statPromise(t),oe.statPromise(e)]);return r.dev===o.dev&&r.ino===o.ino}async function lot({configuration:t,selfPath:e}){let r=t.get("yarnPath");return t.get("ignorePath")||r===null||r===e||await aot(r,e)?null:r}var ble,Tf,xle,kle,Qle,G4,$st,I1,eot,kE,kb,W4,tot,B1,Fle,Qb,bb,aot,rA,Ke,v1=Et(()=>{Pt();Nl();ble=$e(lV()),Tf=$e($g());qt();xle=$e(tz()),kle=Be("module"),Qle=$e(rd()),G4=Be("stream");cse();uE();AM();fM();pM();Ose();hM();Id();jse();KS();ql();rh();vb();jl();Pb();xf();bo();$st=function(){if(Tf.GITHUB_ACTIONS&&process.env.GITHUB_EVENT_PATH){let t=ue.toPortablePath(process.env.GITHUB_EVENT_PATH);try{return!(oe.readJsonSync(t).repository?.private??!0)}catch{return!1}}return!1}(),I1=new Set(["@yarnpkg/plugin-constraints","@yarnpkg/plugin-exec","@yarnpkg/plugin-interactive-tools","@yarnpkg/plugin-stage","@yarnpkg/plugin-typescript","@yarnpkg/plugin-version","@yarnpkg/plugin-workspace-tools"]),eot=new Set(["isTestEnv","injectNpmUser","injectNpmPassword","injectNpm2FaToken","cacheCheckpointOverride","cacheVersionOverride","lockfileVersionOverride","binFolder","version","flags","profile","gpg","ignoreNode","wrapOutput","home","confDir","registry","ignoreCwd"]),kE=/^(?!v)[a-z0-9._-]+$/i,kb="yarn_",W4=".yarnrc.yml",tot="********",B1=(C=>(C.ANY="ANY",C.BOOLEAN="BOOLEAN",C.ABSOLUTE_PATH="ABSOLUTE_PATH",C.LOCATOR="LOCATOR",C.LOCATOR_LOOSE="LOCATOR_LOOSE",C.NUMBER="NUMBER",C.STRING="STRING",C.SECRET="SECRET",C.SHAPE="SHAPE",C.MAP="MAP",C))(B1||{}),Fle=yt,Qb=(r=>(r.JUNCTIONS="junctions",r.SYMLINKS="symlinks",r))(Qb||{}),bb={lastUpdateCheck:{description:"Last timestamp we checked whether new Yarn versions were available",type:"STRING",default:null},yarnPath:{description:"Path to the local executable that must be used over the global one",type:"ABSOLUTE_PATH",default:null},ignorePath:{description:"If true, the local executable will be ignored when using the global one",type:"BOOLEAN",default:!1},globalFolder:{description:"Folder where all system-global files are stored",type:"ABSOLUTE_PATH",default:wM()},cacheFolder:{description:"Folder where the cache files must be written",type:"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:"NUMBER",values:["mixed",0,1,2,3,4,5,6,7,8,9],default:0},virtualFolder:{description:"Folder where the virtual packages (cf doc) will be mapped on the disk (must be named __virtual__)",type:"ABSOLUTE_PATH",default:"./.yarn/__virtual__"},installStatePath:{description:"Path of the file where the install state will be persisted",type:"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:"STRING",default:[],isArray:!0},rcFilename:{description:"Name of the files where the configuration can be found",type:"STRING",default:Y4()},enableGlobalCache:{description:"If true, the system-wide cache folder will be used regardless of `cache-folder`",type:"BOOLEAN",default:!0},cacheMigrationMode:{description:"Defines the conditions under which Yarn upgrades should cause the cache archives to be regenerated.",type:"STRING",values:["always","match-spec","required-only"],default:"always"},enableColors:{description:"If true, the CLI is allowed to use colors in its output",type:"BOOLEAN",default:lS,defaultText:""},enableHyperlinks:{description:"If true, the CLI is allowed to use hyperlinks in its output",type:"BOOLEAN",default:bL,defaultText:""},enableInlineBuilds:{description:"If true, the CLI will print the build output on the command line",type:"BOOLEAN",default:Tf.isCI,defaultText:""},enableMessageNames:{description:"If true, the CLI will prefix most messages with codes suitable for search engines",type:"BOOLEAN",default:!0},enableProgressBars:{description:"If true, the CLI is allowed to show a progress bar for long-running events",type:"BOOLEAN",default:!Tf.isCI,defaultText:""},enableTimers:{description:"If true, the CLI is allowed to print the time spent executing commands",type:"BOOLEAN",default:!0},enableTips:{description:"If true, installs will print a helpful message every day of the week",type:"BOOLEAN",default:!Tf.isCI,defaultText:""},preferInteractive:{description:"If true, the CLI will automatically use the interactive mode when called from a TTY",type:"BOOLEAN",default:!1},preferTruncatedLines:{description:"If true, the CLI will truncate lines that would go beyond the size of the terminal",type:"BOOLEAN",default:!1},progressBarStyle:{description:"Which style of progress bar should be used (only when progress bars are enabled)",type:"STRING",default:void 0,defaultText:""},defaultLanguageName:{description:"Default language mode that should be used when a package doesn't offer any insight",type:"STRING",default:"node"},defaultProtocol:{description:"Default resolution protocol used when resolving pure semver and tag ranges",type:"STRING",default:"npm:"},enableTransparentWorkspaces:{description:"If false, Yarn won't automatically resolve workspace dependencies unless they use the `workspace:` protocol",type:"BOOLEAN",default:!0},supportedArchitectures:{description:"Architectures that Yarn will fetch and inject into the resolver",type:"SHAPE",properties:{os:{description:"Array of supported process.platform strings, or null to target them all",type:"STRING",isArray:!0,isNullable:!0,default:["current"]},cpu:{description:"Array of supported process.arch strings, or null to target them all",type:"STRING",isArray:!0,isNullable:!0,default:["current"]},libc:{description:"Array of supported libc libraries, or null to target them all",type:"STRING",isArray:!0,isNullable:!0,default:["current"]}}},enableMirror:{description:"If true, the downloaded packages will be retrieved and stored in both the local and global folders",type:"BOOLEAN",default:!0},enableNetwork:{description:"If false, Yarn will refuse to use the network if required to",type:"BOOLEAN",default:!0},enableOfflineMode:{description:"If true, Yarn will attempt to retrieve files and metadata from the global cache rather than the network",type:"BOOLEAN",default:!1},httpProxy:{description:"URL of the http proxy that must be used for outgoing http requests",type:"STRING",default:null},httpsProxy:{description:"URL of the http proxy that must be used for outgoing https requests",type:"STRING",default:null},unsafeHttpWhitelist:{description:"List of the hostnames for which http queries are allowed (glob patterns are supported)",type:"STRING",default:[],isArray:!0},httpTimeout:{description:"Timeout of each http request in milliseconds",type:"NUMBER",default:6e4},httpRetry:{description:"Retry times on http failure",type:"NUMBER",default:3},networkConcurrency:{description:"Maximal number of concurrent requests",type:"NUMBER",default:50},taskPoolConcurrency:{description:"Maximal amount of concurrent heavy task processing",type:"NUMBER",default:H4()},taskPoolMode:{description:"Execution strategy for heavy tasks",type:"STRING",values:["async","workers"],default:"workers"},networkSettings:{description:"Network settings per hostname (glob patterns are supported)",type:"MAP",valueDefinition:{description:"",type:"SHAPE",properties:{httpsCaFilePath:{description:"Path to file containing one or multiple Certificate Authority signing certificates",type:"ABSOLUTE_PATH",default:null},enableNetwork:{description:"If false, the package manager will refuse to use the network if required to",type:"BOOLEAN",default:null},httpProxy:{description:"URL of the http proxy that must be used for outgoing http requests",type:"STRING",default:null},httpsProxy:{description:"URL of the http proxy that must be used for outgoing https requests",type:"STRING",default:null},httpsKeyFilePath:{description:"Path to file containing private key in PEM format",type:"ABSOLUTE_PATH",default:null},httpsCertFilePath:{description:"Path to file containing certificate chain in PEM format",type:"ABSOLUTE_PATH",default:null}}}},httpsCaFilePath:{description:"A path to a file containing one or multiple Certificate Authority signing certificates",type:"ABSOLUTE_PATH",default:null},httpsKeyFilePath:{description:"Path to file containing private key in PEM format",type:"ABSOLUTE_PATH",default:null},httpsCertFilePath:{description:"Path to file containing certificate chain in PEM format",type:"ABSOLUTE_PATH",default:null},enableStrictSsl:{description:"If false, SSL certificate errors will be ignored",type:"BOOLEAN",default:!0},logFilters:{description:"Overrides for log levels",type:"SHAPE",isArray:!0,concatenateValues:!0,properties:{code:{description:"Code of the messages covered by this override",type:"STRING",default:void 0},text:{description:"Code of the texts covered by this override",type:"STRING",default:void 0},pattern:{description:"Code of the patterns covered by this override",type:"STRING",default:void 0},level:{description:"Log level override, set to null to remove override",type:"STRING",values:Object.values(uS),isNullable:!0,default:void 0}}},enableTelemetry:{description:"If true, telemetry will be periodically sent, following the rules in https://yarnpkg.com/advanced/telemetry",type:"BOOLEAN",default:!0},telemetryInterval:{description:"Minimal amount of time between two telemetry uploads, in days",type:"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:"STRING",default:null},enableHardenedMode:{description:"If true, automatically enable --check-resolutions --refresh-lockfile on installs",type:"BOOLEAN",default:Tf.isPR&&$st,defaultText:""},enableScripts:{description:"If true, packages are allowed to have install scripts by default",type:"BOOLEAN",default:!0},enableStrictSettings:{description:"If true, unknown settings will cause Yarn to abort",type:"BOOLEAN",default:!0},enableImmutableCache:{description:"If true, the cache is reputed immutable and actions that would modify it will throw",type:"BOOLEAN",default:!1},checksumBehavior:{description:"Enumeration defining what to do when a checksum doesn't match expectations",type:"STRING",default:"throw"},injectEnvironmentFiles:{description:"List of all the environment files that Yarn should inject inside the process when it starts",type:"ABSOLUTE_PATH",default:[".env.yarn?"],isArray:!0},packageExtensions:{description:"Map of package corrections to apply on the dependency tree",type:"MAP",valueDefinition:{description:"The extension that will be applied to any package whose version matches the specified range",type:"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:"MAP",valueDefinition:{description:"A range",type:"STRING"}},peerDependencies:{description:"Inherited dependencies - the consumer of the package will be tasked to provide them",type:"MAP",valueDefinition:{description:"A semver range",type:"STRING"}},peerDependenciesMeta:{description:"Extra information related to the dependencies listed in the peerDependencies field",type:"MAP",valueDefinition:{description:"The peerDependency meta",type:"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:"BOOLEAN",default:!1}}}}}}}};aot=process.platform==="win32"?sot:oot;rA=class{constructor(e){this.isCI=Tf.isCI;this.projectCwd=null;this.plugins=new Map;this.settings=new Map;this.values=new Map;this.sources=new Map;this.invalid=new Map;this.env={};this.limits=new Map;this.packageExtensions=null;this.startingCwd=e}static create(e,r,o){let a=new rA(e);typeof r<"u"&&!(r instanceof Map)&&(a.projectCwd=r),a.importSettings(bb);let n=typeof o<"u"?o:r instanceof Map?r:new Map;for(let[u,A]of n)a.activatePlugin(u,A);return a}static async find(e,r,{strict:o=!0,usePathCheck:a=null,useRc:n=!0}={}){let u=iot();delete u.rcFilename;let A=new rA(e),p=await rA.findRcFiles(e),h=await rA.findFolderRcFile(mE());h&&(p.find(ye=>ye.path===h.path)||p.unshift(h));let C=Hse(p.map(Ae=>[Ae.path,Ae.data])),I=Bt.dot,v=new Set(Object.keys(bb)),x=({yarnPath:Ae,ignorePath:ye,injectEnvironmentFiles:ae})=>({yarnPath:Ae,ignorePath:ye,injectEnvironmentFiles:ae}),E=({yarnPath:Ae,ignorePath:ye,injectEnvironmentFiles:ae,...Ie})=>{let Fe={};for(let[g,Ee]of Object.entries(Ie))v.has(g)&&(Fe[g]=Ee);return Fe},R=({yarnPath:Ae,ignorePath:ye,...ae})=>{let Ie={};for(let[Fe,g]of Object.entries(ae))v.has(Fe)||(Ie[Fe]=g);return Ie};if(A.importSettings(x(bb)),A.useWithSource("",x(u),e,{strict:!1}),C){let[Ae,ye]=C;A.useWithSource(Ae,x(ye),I,{strict:!1})}if(a){if(await lot({configuration:A,selfPath:a})!==null)return A;A.useWithSource("",{ignorePath:!0},e,{strict:!1,overwrite:!0})}let L=await rA.findProjectCwd(e);A.startingCwd=e,A.projectCwd=L;let U=Object.assign(Object.create(null),process.env);A.env=U;let z=await Promise.all(A.get("injectEnvironmentFiles").map(async Ae=>{let ye=Ae.endsWith("?")?await oe.readFilePromise(Ae.slice(0,-1),"utf8").catch(()=>""):await oe.readFilePromise(Ae,"utf8");return(0,xle.parse)(ye)}));for(let Ae of z)for(let[ye,ae]of Object.entries(Ae))A.env[ye]=sS(ae,{env:U});if(A.importSettings(E(bb)),A.useWithSource("",E(u),e,{strict:o}),C){let[Ae,ye]=C;A.useWithSource(Ae,E(ye),I,{strict:o})}let te=Ae=>"default"in Ae?Ae.default:Ae,le=new Map([["@@core",lse]]);if(r!==null)for(let Ae of r.plugins.keys())le.set(Ae,te(r.modules.get(Ae)));for(let[Ae,ye]of le)A.activatePlugin(Ae,ye);let he=new Map([]);if(r!==null){let Ae=new Map;for(let Ie of kle.builtinModules)Ae.set(Ie,()=>zp(Ie));for(let[Ie,Fe]of r.modules)Ae.set(Ie,()=>Fe);let ye=new Set,ae=async(Ie,Fe)=>{let{factory:g,name:Ee}=zp(Ie);if(!g||ye.has(Ee))return;let De=new Map(Ae),ce=ee=>{if(De.has(ee))return De.get(ee)();throw new it(`This plugin cannot access the package referenced via ${ee} which is neither a builtin, nor an exposed entry`)},ne=await Yy(async()=>te(await g(ce)),ee=>`${ee} (when initializing ${Ee}, defined in ${Fe})`);Ae.set(Ee,()=>ne),ye.add(Ee),he.set(Ee,ne)};if(u.plugins)for(let Ie of u.plugins.split(";")){let Fe=V.resolve(e,ue.toPortablePath(Ie));await ae(Fe,"")}for(let{path:Ie,cwd:Fe,data:g}of p)if(!!n&&!!Array.isArray(g.plugins))for(let Ee of g.plugins){let De=typeof Ee!="string"?Ee.path:Ee,ce=Ee?.spec??"",ne=Ee?.checksum??"";if(I1.has(ce))continue;let ee=V.resolve(Fe,ue.toPortablePath(De));if(!await oe.existsPromise(ee)){if(!ce){let ht=Mt(A,V.basename(ee,".cjs"),yt.NAME),H=Mt(A,".gitignore",yt.NAME),lt=Mt(A,A.values.get("rcFilename"),yt.NAME),Te=Mt(A,"https://yarnpkg.com/getting-started/qa#which-files-should-be-gitignored",yt.URL);throw new it(`Missing source for the ${ht} plugin - please try to remove the plugin from ${lt} then reinstall it manually. This error usually occurs because ${H} is incorrect, check ${Te} to make sure your plugin folder isn't gitignored.`)}if(!ce.match(/^https?:/)){let ht=Mt(A,V.basename(ee,".cjs"),yt.NAME),H=Mt(A,A.values.get("rcFilename"),yt.NAME);throw new it(`Failed to recognize the source for the ${ht} plugin - please try to delete the plugin from ${H} then reinstall it manually.`)}let we=await M4(ce,{configuration:A}),xe=Js(we);if(ne&&ne!==xe){let ht=Mt(A,V.basename(ee,".cjs"),yt.NAME),H=Mt(A,A.values.get("rcFilename"),yt.NAME),lt=Mt(A,`yarn plugin import ${ce}`,yt.CODE);throw new it(`Failed to fetch the ${ht} plugin from its remote location: its checksum seems to have changed. If this is expected, please remove the plugin from ${H} then run ${lt} to reimport it.`)}await oe.mkdirPromise(V.dirname(ee),{recursive:!0}),await oe.writeFilePromise(ee,we)}await ae(ee,Ie)}}for(let[Ae,ye]of he)A.activatePlugin(Ae,ye);if(A.useWithSource("",R(u),e,{strict:o}),C){let[Ae,ye]=C;A.useWithSource(Ae,R(ye),I,{strict:o})}return A.get("enableGlobalCache")&&(A.values.set("cacheFolder",`${A.get("globalFolder")}/cache`),A.sources.set("cacheFolder","")),A}static async findRcFiles(e){let r=Y4(),o=[],a=e,n=null;for(;a!==n;){n=a;let u=V.join(n,r);if(oe.existsSync(u)){let A=await oe.readFilePromise(u,"utf8"),p;try{p=Ki(A)}catch{let C="";throw A.match(/^\s+(?!-)[^:]+\s+\S+/m)&&(C=" (in particular, make sure you list the colons after each key name)"),new it(`Parse error when loading ${u}; please check it's proper Yaml${C}`)}o.unshift({path:u,cwd:n,data:p})}a=V.dirname(n)}return o}static async findFolderRcFile(e){let r=V.join(e,dr.rc),o;try{o=await oe.readFilePromise(r,"utf8")}catch(n){if(n.code==="ENOENT")return null;throw n}let a=Ki(o);return{path:r,cwd:e,data:a}}static async findProjectCwd(e){let r=null,o=e,a=null;for(;o!==a;){if(a=o,oe.existsSync(V.join(a,dr.lockfile)))return a;oe.existsSync(V.join(a,dr.manifest))&&(r=a),o=V.dirname(a)}return r}static async updateConfiguration(e,r,o={}){let a=Y4(),n=V.join(e,a),u=oe.existsSync(n)?Ki(await oe.readFilePromise(n,"utf8")):{},A=!1,p;if(typeof r=="function"){try{p=r(u)}catch{p=r({})}if(p===u)return!1}else{p=u;for(let h of Object.keys(r)){let C=u[h],I=r[h],v;if(typeof I=="function")try{v=I(C)}catch{v=I(void 0)}else v=I;C!==v&&(v===rA.deleteProperty?delete p[h]:p[h]=v,A=!0)}if(!A)return!1}return await oe.changeFilePromise(n,Ba(p),{automaticNewlines:!0}),!0}static async addPlugin(e,r){r.length!==0&&await rA.updateConfiguration(e,o=>{let a=o.plugins??[];if(a.length===0)return{...o,plugins:r};let n=[],u=[...r];for(let A of a){let p=typeof A!="string"?A.path:A,h=u.find(C=>C.path===p);h?(n.push(h),u=u.filter(C=>C!==h)):n.push(A)}return n.push(...u),{...o,plugins:n}})}static async updateHomeConfiguration(e){let r=mE();return await rA.updateConfiguration(r,e)}activatePlugin(e,r){this.plugins.set(e,r),typeof r.configuration<"u"&&this.importSettings(r.configuration)}importSettings(e){for(let[r,o]of Object.entries(e))if(o!=null){if(this.settings.has(r))throw new Error(`Cannot redefine settings "${r}"`);this.settings.set(r,o),this.values.set(r,V4(this,o))}}useWithSource(e,r,o,a){try{this.use(e,r,o,a)}catch(n){throw n.message+=` (in ${Mt(this,e,yt.PATH)})`,n}}use(e,r,o,{strict:a=!0,overwrite:n=!1}={}){a=a&&this.get("enableStrictSettings");for(let u of["enableStrictSettings",...Object.keys(r)]){let A=r[u],p=EM(A);if(p&&(e=p),typeof A>"u"||u==="plugins"||e===""&&eot.has(u))continue;if(u==="rcFilename")throw new it(`The rcFilename settings can only be set via ${`${kb}RC_FILENAME`.toUpperCase()}, not via a rc file`);let h=this.settings.get(u);if(!h){let I=mE(),v=e[0]!=="<"?V.dirname(e):null;if(a&&!(v!==null?I===v:!1))throw new it(`Unrecognized or legacy configuration settings found: ${u} - run "yarn config -v" to see the list of settings supported in Yarn`);this.invalid.set(u,e);continue}if(this.sources.has(u)&&!(n||h.type==="MAP"||h.isArray&&h.concatenateValues))continue;let C;try{C=K4(this,u,A,h,o)}catch(I){throw I.message+=` in ${Mt(this,e,yt.PATH)}`,I}if(u==="enableStrictSettings"&&e!==""){a=C;continue}if(h.type==="MAP"){let I=this.values.get(u);this.values.set(u,new Map(n?[...I,...C]:[...C,...I])),this.sources.set(u,`${this.sources.get(u)}, ${e}`)}else if(h.isArray&&h.concatenateValues){let I=this.values.get(u);this.values.set(u,n?[...I,...C]:[...C,...I]),this.sources.set(u,`${this.sources.get(u)}, ${e}`)}else this.values.set(u,C),this.sources.set(u,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:o=!1}){let a=this.get(e),n=this.settings.get(e);if(typeof n>"u")throw new it(`Couldn't find a configuration settings named "${e}"`);return xb(a,n,{hideSecrets:r,getNativePaths:o})}getSubprocessStreams(e,{header:r,prefix:o,report:a}){let n,u,A=oe.createWriteStream(e);if(this.get("enableInlineBuilds")){let p=a.createStreamReporter(`${o} ${Mt(this,"STDOUT","green")}`),h=a.createStreamReporter(`${o} ${Mt(this,"STDERR","red")}`);n=new G4.PassThrough,n.pipe(p),n.pipe(A),u=new G4.PassThrough,u.pipe(h),u.pipe(A)}else n=A,u=A,typeof r<"u"&&n.write(`${r} +`);return{stdout:n,stderr:u}}makeResolver(){let e=[];for(let r of this.plugins.values())for(let o of r.resolvers||[])e.push(new o);return new Bd([new a1,new Xn,...e])}makeFetcher(){let e=[];for(let r of this.plugins.values())for(let o of r.fetchers||[])e.push(new o);return new fE([new pE,new gE,...e])}getLinkers(){let e=[];for(let r of this.plugins.values())for(let o of r.linkers||[])e.push(new o);return e}getSupportedArchitectures(){let e=w1(),r=this.get("supportedArchitectures"),o=r.get("os");o!==null&&(o=o.map(u=>u==="current"?e.os:u));let a=r.get("cpu");a!==null&&(a=a.map(u=>u==="current"?e.cpu:u));let n=r.get("libc");return n!==null&&(n=sl(n,u=>u==="current"?e.libc??sl.skip:u)),{os:o,cpu:a,libc:n}}async getPackageExtensions(){if(this.packageExtensions!==null)return this.packageExtensions;this.packageExtensions=new Map;let e=this.packageExtensions,r=(o,a,{userProvided:n=!1}={})=>{if(!xa(o.range))throw new Error("Only semver ranges are allowed as keys for the packageExtensions setting");let u=new Ot;u.load(a,{yamlCompatibilityMode:!0});let A=qy(e,o.identHash),p=[];A.push([o.range,p]);let h={status:"inactive",userProvided:n,parentDescriptor:o};for(let C of u.dependencies.values())p.push({...h,type:"Dependency",descriptor:C});for(let C of u.peerDependencies.values())p.push({...h,type:"PeerDependency",descriptor:C});for(let[C,I]of u.peerDependenciesMeta)for(let[v,x]of Object.entries(I))p.push({...h,type:"PeerDependencyMeta",selector:C,key:v,value:x})};await this.triggerHook(o=>o.registerPackageExtensions,this,r);for(let[o,a]of this.get("packageExtensions"))r(nh(o,!0),iS(a),{userProvided:!0});return e}normalizeLocator(e){return xa(e.reference)?Qs(e,`${this.get("defaultProtocol")}${e.reference}`):kE.test(e.reference)?Qs(e,`${this.get("defaultProtocol")}${e.reference}`):e}normalizeDependency(e){return xa(e.range)?In(e,`${this.get("defaultProtocol")}${e.range}`):kE.test(e.range)?In(e,`${this.get("defaultProtocol")}${e.range}`):e}normalizeDependencyMap(e){return new Map([...e].map(([r,o])=>[r,this.normalizeDependency(o)]))}normalizePackage(e,{packageExtensions:r}){let o=ZI(e),a=r.get(e.identHash);if(typeof a<"u"){let u=e.version;if(u!==null){for(let[A,p]of a)if(!!bf(u,A))for(let h of p)switch(h.status==="inactive"&&(h.status="redundant"),h.type){case"Dependency":typeof o.dependencies.get(h.descriptor.identHash)>"u"&&(h.status="active",o.dependencies.set(h.descriptor.identHash,this.normalizeDependency(h.descriptor)));break;case"PeerDependency":typeof o.peerDependencies.get(h.descriptor.identHash)>"u"&&(h.status="active",o.peerDependencies.set(h.descriptor.identHash,h.descriptor));break;case"PeerDependencyMeta":{let C=o.peerDependenciesMeta.get(h.selector);(typeof C>"u"||!Object.hasOwn(C,h.key)||C[h.key]!==h.value)&&(h.status="active",ol(o.peerDependenciesMeta,h.selector,()=>({}))[h.key]=h.value)}break;default:CL(h);break}}}let n=u=>u.scope?`${u.scope}__${u.name}`:`${u.name}`;for(let u of o.peerDependenciesMeta.keys()){let A=zs(u);o.peerDependencies.has(A.identHash)||o.peerDependencies.set(A.identHash,In(A,"*"))}for(let u of o.peerDependencies.values()){if(u.scope==="types")continue;let A=n(u),p=eA("types",A),h=fn(p);o.peerDependencies.has(p.identHash)||o.peerDependenciesMeta.has(h)||(o.peerDependencies.set(p.identHash,In(p,"*")),o.peerDependenciesMeta.set(h,{optional:!0}))}return o.dependencies=new Map(ks(o.dependencies,([,u])=>Sa(u))),o.peerDependencies=new Map(ks(o.peerDependencies,([,u])=>Sa(u))),o}getLimit(e){return ol(this.limits,e,()=>(0,Qle.default)(this.get(e)))}async triggerHook(e,...r){for(let o of this.plugins.values()){let a=o.hooks;if(!a)continue;let n=e(a);!n||await n(...r)}}async triggerMultipleHooks(e,r){for(let o of r)await this.triggerHook(e,...o)}async reduceHook(e,r,...o){let a=r;for(let n of this.plugins.values()){let u=n.hooks;if(!u)continue;let A=e(u);!A||(a=await A(a,...o))}return a}async firstHook(e,...r){for(let o of this.plugins.values()){let a=o.hooks;if(!a)continue;let n=e(a);if(!n)continue;let u=await n(...r);if(typeof u<"u")return u}return null}},Ke=rA;Ke.deleteProperty=Symbol(),Ke.telemetry=null});var Ur={};Vt(Ur,{EndStrategy:()=>Z4,ExecError:()=>Fb,PipeError:()=>D1,execvp:()=>j4,pipevp:()=>Gc});function Pd(t){return t!==null&&typeof t.fd=="number"}function z4(){}function J4(){for(let t of Sd)t.kill()}async function Gc(t,e,{cwd:r,env:o=process.env,strict:a=!1,stdin:n=null,stdout:u,stderr:A,end:p=2}){let h=["pipe","pipe","pipe"];n===null?h[0]="ignore":Pd(n)&&(h[0]=n),Pd(u)&&(h[1]=u),Pd(A)&&(h[2]=A);let C=(0,X4.default)(t,e,{cwd:ue.fromPortablePath(r),env:{...o,PWD:ue.fromPortablePath(r)},stdio:h});Sd.add(C),Sd.size===1&&(process.on("SIGINT",z4),process.on("SIGTERM",J4)),!Pd(n)&&n!==null&&n.pipe(C.stdin),Pd(u)||C.stdout.pipe(u,{end:!1}),Pd(A)||C.stderr.pipe(A,{end:!1});let I=()=>{for(let v of new Set([u,A]))Pd(v)||v.end()};return new Promise((v,x)=>{C.on("error",E=>{Sd.delete(C),Sd.size===0&&(process.off("SIGINT",z4),process.off("SIGTERM",J4)),(p===2||p===1)&&I(),x(E)}),C.on("close",(E,R)=>{Sd.delete(C),Sd.size===0&&(process.off("SIGINT",z4),process.off("SIGTERM",J4)),(p===2||p===1&&E!==0)&&I(),E===0||!a?v({code:$4(E,R)}):x(new D1({fileName:t,code:E,signal:R}))})})}async function j4(t,e,{cwd:r,env:o=process.env,encoding:a="utf8",strict:n=!1}){let u=["ignore","pipe","pipe"],A=[],p=[],h=ue.fromPortablePath(r);typeof o.PWD<"u"&&(o={...o,PWD:h});let C=(0,X4.default)(t,e,{cwd:h,env:o,stdio:u});return C.stdout.on("data",I=>{A.push(I)}),C.stderr.on("data",I=>{p.push(I)}),await new Promise((I,v)=>{C.on("error",x=>{let E=Ke.create(r),R=Mt(E,t,yt.PATH);v(new Jt(1,`Process ${R} failed to spawn`,L=>{L.reportError(1,` ${Ju(E,{label:"Thrown Error",value:_c(yt.NO_HINT,x.message)})}`)}))}),C.on("close",(x,E)=>{let R=a==="buffer"?Buffer.concat(A):Buffer.concat(A).toString(a),L=a==="buffer"?Buffer.concat(p):Buffer.concat(p).toString(a);x===0||!n?I({code:$4(x,E),stdout:R,stderr:L}):v(new Fb({fileName:t,code:x,signal:E,stdout:R,stderr:L}))})})}function $4(t,e){let r=cot.get(e);return typeof r<"u"?128+r:t??1}function uot(t,e,{configuration:r,report:o}){o.reportError(1,` ${Ju(r,t!==null?{label:"Exit Code",value:_c(yt.NUMBER,t)}:{label:"Exit Signal",value:_c(yt.CODE,e)})}`)}var X4,Z4,D1,Fb,Sd,cot,Sb=Et(()=>{Pt();X4=$e(aT());v1();Yl();ql();Z4=(o=>(o[o.Never=0]="Never",o[o.ErrorCode=1]="ErrorCode",o[o.Always=2]="Always",o))(Z4||{}),D1=class extends Jt{constructor({fileName:r,code:o,signal:a}){let n=Ke.create(V.cwd()),u=Mt(n,r,yt.PATH);super(1,`Child ${u} reported an error`,A=>{uot(o,a,{configuration:n,report:A})});this.code=$4(o,a)}},Fb=class extends D1{constructor({fileName:r,code:o,signal:a,stdout:n,stderr:u}){super({fileName:r,code:o,signal:a});this.stdout=n,this.stderr=u}};Sd=new Set;cot=new Map([["SIGINT",2],["SIGQUIT",3],["SIGKILL",9],["SIGTERM",15]])});function Tle(t){Rle=t}function P1(){return typeof eU>"u"&&(eU=Rle()),eU}var eU,Rle,tU=Et(()=>{Rle=()=>{throw new Error("Assertion failed: No libzip instance is available, and no factory was configured")}});var Nle=_((Rb,nU)=>{var Aot=Object.assign({},Be("fs")),rU=function(){var t=typeof document<"u"&&document.currentScript?document.currentScript.src:void 0;return typeof __filename<"u"&&(t=t||__filename),function(e){e=e||{};var r=typeof e<"u"?e:{},o,a;r.ready=new Promise(function(We,tt){o=We,a=tt});var n={},u;for(u in r)r.hasOwnProperty(u)&&(n[u]=r[u]);var A=[],p="./this.program",h=function(We,tt){throw tt},C=!1,I=!0,v="";function x(We){return r.locateFile?r.locateFile(We,v):v+We}var E,R,L,U;I&&(C?v=Be("path").dirname(v)+"/":v=__dirname+"/",E=function(tt,It){var nr=ii(tt);return nr?It?nr:nr.toString():(L||(L=Aot),U||(U=Be("path")),tt=U.normalize(tt),L.readFileSync(tt,It?null:"utf8"))},R=function(tt){var It=E(tt,!0);return It.buffer||(It=new Uint8Array(It)),Ee(It.buffer),It},process.argv.length>1&&(p=process.argv[1].replace(/\\/g,"/")),A=process.argv.slice(2),h=function(We){process.exit(We)},r.inspect=function(){return"[Emscripten Module object]"});var z=r.print||console.log.bind(console),te=r.printErr||console.warn.bind(console);for(u in n)n.hasOwnProperty(u)&&(r[u]=n[u]);n=null,r.arguments&&(A=r.arguments),r.thisProgram&&(p=r.thisProgram),r.quit&&(h=r.quit);var le=0,he=function(We){le=We},Ae;r.wasmBinary&&(Ae=r.wasmBinary);var ye=r.noExitRuntime||!0;typeof WebAssembly!="object"&&Ti("no native wasm support detected");function ae(We,tt,It){switch(tt=tt||"i8",tt.charAt(tt.length-1)==="*"&&(tt="i32"),tt){case"i1":return _e[We>>0];case"i8":return _e[We>>0];case"i16":return ap((We>>1)*2);case"i32":return Os((We>>2)*4);case"i64":return Os((We>>2)*4);case"float":return cu((We>>2)*4);case"double":return op((We>>3)*8);default:Ti("invalid type for getValue: "+tt)}return null}var Ie,Fe=!1,g;function Ee(We,tt){We||Ti("Assertion failed: "+tt)}function De(We){var tt=r["_"+We];return Ee(tt,"Cannot call unknown function "+We+", make sure it is exported"),tt}function ce(We,tt,It,nr,$){var me={string:function(es){var bi=0;if(es!=null&&es!==0){var jo=(es.length<<2)+1;bi=Un(jo),ht(es,bi,jo)}return bi},array:function(es){var bi=Un(es.length);return Te(es,bi),bi}};function Le(es){return tt==="string"?we(es):tt==="boolean"?Boolean(es):es}var ft=De(We),pt=[],Tt=0;if(nr)for(var er=0;er=It)&&Re[nr];)++nr;return ee.decode(Re.subarray(We,nr))}function xe(We,tt,It,nr){if(!(nr>0))return 0;for(var $=It,me=It+nr-1,Le=0;Le=55296&&ft<=57343){var pt=We.charCodeAt(++Le);ft=65536+((ft&1023)<<10)|pt&1023}if(ft<=127){if(It>=me)break;tt[It++]=ft}else if(ft<=2047){if(It+1>=me)break;tt[It++]=192|ft>>6,tt[It++]=128|ft&63}else if(ft<=65535){if(It+2>=me)break;tt[It++]=224|ft>>12,tt[It++]=128|ft>>6&63,tt[It++]=128|ft&63}else{if(It+3>=me)break;tt[It++]=240|ft>>18,tt[It++]=128|ft>>12&63,tt[It++]=128|ft>>6&63,tt[It++]=128|ft&63}}return tt[It]=0,It-$}function ht(We,tt,It){return xe(We,Re,tt,It)}function H(We){for(var tt=0,It=0;It=55296&&nr<=57343&&(nr=65536+((nr&1023)<<10)|We.charCodeAt(++It)&1023),nr<=127?++tt:nr<=2047?tt+=2:nr<=65535?tt+=3:tt+=4}return tt}function lt(We){var tt=H(We)+1,It=Li(tt);return It&&xe(We,_e,It,tt),It}function Te(We,tt){_e.set(We,tt)}function ke(We,tt){return We%tt>0&&(We+=tt-We%tt),We}var be,_e,Re,ze,He,b,w,S,y,F;function J(We){be=We,r.HEAP_DATA_VIEW=F=new DataView(We),r.HEAP8=_e=new Int8Array(We),r.HEAP16=ze=new Int16Array(We),r.HEAP32=b=new Int32Array(We),r.HEAPU8=Re=new Uint8Array(We),r.HEAPU16=He=new Uint16Array(We),r.HEAPU32=w=new Uint32Array(We),r.HEAPF32=S=new Float32Array(We),r.HEAPF64=y=new Float64Array(We)}var X=r.INITIAL_MEMORY||16777216,Z,ie=[],Pe=[],Ne=[],ot=!1;function dt(){if(r.preRun)for(typeof r.preRun=="function"&&(r.preRun=[r.preRun]);r.preRun.length;)bt(r.preRun.shift());oo(ie)}function jt(){ot=!0,oo(Pe)}function $t(){if(r.postRun)for(typeof r.postRun=="function"&&(r.postRun=[r.postRun]);r.postRun.length;)Qr(r.postRun.shift());oo(Ne)}function bt(We){ie.unshift(We)}function an(We){Pe.unshift(We)}function Qr(We){Ne.unshift(We)}var mr=0,br=null,Wr=null;function Kn(We){mr++,r.monitorRunDependencies&&r.monitorRunDependencies(mr)}function Ns(We){if(mr--,r.monitorRunDependencies&&r.monitorRunDependencies(mr),mr==0&&(br!==null&&(clearInterval(br),br=null),Wr)){var tt=Wr;Wr=null,tt()}}r.preloadedImages={},r.preloadedAudios={};function Ti(We){r.onAbort&&r.onAbort(We),We+="",te(We),Fe=!0,g=1,We="abort("+We+"). Build with -s ASSERTIONS=1 for more info.";var tt=new WebAssembly.RuntimeError(We);throw a(tt),tt}var ps="data:application/octet-stream;base64,";function io(We){return We.startsWith(ps)}var Si="data:application/octet-stream;base64,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QCAAKAJIIgEgASADaiADEAcaAkAgAyAAKAJsIgFNBEAgACABIANrNgJsDAELIABCADcCbAsgACAAKAJoIANrIgE2AmggACAAKAJYIANrNgJYIAEgACgChC5JBEAgACABNgKELgsgAEH8gAEoAgARAwAgAiADaiECCwJAIAAoAgAiASgCBCIERQ0AIAAoAjwhBSAAIAIgBCACIARJGyICBH8gACgCSCAAKAJoaiAFaiEFIAEgBCACazYCBAJAAkACQAJAIAEoAhwiBCgCFEEBaw4CAQACCyAEQaABaiAFIAEoAgAgAkHcgAEoAgARCAAMAgsgASABKAIwIAUgASgCACACQcSAASgCABEEADYCMAwBCyAFIAEoAgAgAhAHGgsgASABKAIAIAJqNgIAIAEgASgCCCACajYCCCAAKAI8BSAFCyACaiICNgI8AkAgACgChC4iASACakEDSQ0AIAAoAmggAWshAQJAIAAoAnRBgQhPBEAgACAAIAAoAkggAWoiAi0AACACLQABIAAoAnwRAAA2AlQMAQsgAUUNACAAIAFBAWsgACgChAERAgAaCyAAKAKELiAAKAI8IgJBAUZrIgRFDQAgACABIAQgACgCgAERBQAgACAAKAKELiAEazYChC4gACgCPCECCyACQYUCSw0AIAAoAgAoAgRFDQAgACgCMCEBDAELCwJAIAAoAkQiAiAAKAJAIgNNDQAgAAJ/IAAoAjwgACgCaGoiASADSwRAIAAoAkggAWpBACACIAFrIgNBggIgA0GCAkkbIgMQGSABIANqDAELIAFBggJqIgEgA00NASAAKAJIIANqQQAgAiADayICIAEgA2siAyACIANJGyIDEBkgACgCQCADags2AkALC50CAQF/AkAgAAJ/IAAoAqAuIgFBwABGBEAgACgCBCAAKAIQaiAAKQOYLjcAACAAQgA3A5guIAAgACgCEEEIajYCEEEADAELIAFBIE4EQCAAKAIEIAAoAhBqIAApA5guPgAAIAAgAEGcLmo1AgA3A5guIAAgACgCEEEEajYCECAAIAAoAqAuQSBrIgE2AqAuCyABQRBOBEAgACgCBCAAKAIQaiAAKQOYLj0AACAAIAAoAhBBAmo2AhAgACAAKQOYLkIQiDcDmC4gACAAKAKgLkEQayIBNgKgLgsgAUEISA0BIAAgACgCECIBQQFqNgIQ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KAJUIgEEfyABQQAgARAiEBkgACgCVAVBAAsQBiAAQQA2AlQLC9wMAgl/AX4jAEFAaiIGJAACQAJAAkACQAJAIAEoAjBBABAjIgVBAkZBACABKAI4QQAQIyIEQQFGGw0AIAVBAUZBACAEQQJGGw0AIAVBAkciAw0BIARBAkcNAQsgASABLwEMQYAQcjsBDEEAIQMMAQsgASABLwEMQf/vA3E7AQxBACEFIANFBEBB9eABIAEoAjAgAEEIahBpIgVFDQILIAJBgAJxBEAgBSEDDAELIARBAkcEQCAFIQMMAQtB9cYBIAEoAjggAEEIahBpIgNFBEAgBRAcDAILIAMgBTYCAAsgASABLwEMQf7/A3EgAS8BUiIFQQBHcjsBDAJAAkACQAJAAn8CQAJAIAEpAyhC/v///w9WDQAgASkDIEL+////D1YNACACQYAEcUUNASABKQNIQv////8PVA0BCyAFQYECa0H//wNxQQNJIQdBAQwBCyAFQYECa0H//wNxIQQgAkGACnFBgApHDQEgBEEDSSEHQQALIQkgBkIcEBciBEUEQCAAQQhqIgAEQCAAQQA2AgQgAEEONgIACyADEBwMBQsgAkGACHEhBQJAAkAgAkGAAnEEQAJAIAUNACABKQMgQv////8PVg0AIAEpAyhCgICAgBBUDQMLIAQgASkDKBAYIAEpAyAhDAwBCwJAAkACQCAFDQAgASkDIEL/////D1YNACABKQMoIgxC/////w9WDQEgASkDSEKAgICAEFQNBAsgASkDKCIMQv////8PVA0BCyAEIAwQGAsgASkDICIMQv////8PWgRAIAQgDBAYCyABKQNIIgxC/////w9UDQELIAQgDBAYCyAELQAARQRAIABBCGoiAARAIABBADYCBCAAQRQ2AgALIAQQCCADEBwMBQtBASEKQQEgBC0AAAR+IAQpAxAFQgALp0H//wNxIAYQRyEFIAQQCCAFIAM2AgAgBw0BDAILIAMhBSAEQQJLDQELIAZCBxAXIgRFBEAgAEEIaiIABEAgAEEANgIEIABBDjYCAAsgBRAcDAMLIARBAhANIARBhxJBAhAsIAQgAS0AUhBwIAQgAS8BEBANIAQtAABFBEAgAEEIaiIABEAgAEEANgIEIABBFDYCAAsgBBAIDAILQYGyAkEHIAYQRyEDIAQQCCADIAU2AgBBASEL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NgIEIABB7A42AhggGiEdDAMLIARB/wFxIgJBwABxRQRAIAggDSADLwECQQJ0aiAdp0F/IAJ0QX9zcUECdGoiAy0AASICayEIIB0gAq2IIR0gAy0AACIERQ0HDAELCyAEQSBxBEAgB0G//gA2AgQgASECDAgLIAdB0f4ANgIEIABB0A42AhggASECDAcLIB1BfyAGdEF/c62DIBt8IhunIQUgCCAEQQ9xIgNrIQggGiAErUIPg4ghHSABIBdrIgYgAjMBAiAaQX8gA3RBf3Otg3ynIgRPDQIgBCAGayIGIBlNDQEgBygCjEdFDQEgB0HR/gA2AgQgAEG5DDYCGAsgASECIAshBQwFCwJAIA5FBEAgDCARIAZraiEDDAELIAYgDk0EQCAMIA4gBmtqIQMMAQsgDCARIAYgDmsiBmtqIQMgBSAGTQ0AIAUgBmshBQJAAkAgASADTSABIA8gAWusIhogBq0iGyAaIBtUGyIapyIGaiICIANLcQ0AIAMgBmogAUsgASADT3ENACABIAMgBhAHGiACIQEMAQsgASADIAMgAWsiASABQR91IgFqIAFzIgIQByACaiEBIBogAq0iHn0iHFANACACIANqIQIDQAJAIBwgHiAcIB5UGyIbQiBUBEAgGyEaDAELIBsiGkIgfSIgQgWIQgF8QgODIh9QRQRAA0AgASACKQAANwAAIAEgAikAGDcAGCABIAIpABA3ABAgASACKQAINwAIIBpCIH0hGiACQSBqIQIgAUEgaiEBIB9CAX0iH0IAUg0ACwsgIELgAFQNAANAIAEgAikAADcAACABIAIpABg3ABggASACKQAQNwAQIAEgAikACDcACCABIAIpADg3ADggASACKQAwNwAwIAEgAikAKDcAKCABIAIpACA3ACAgASACKQBYNwBYIAEgAikAUDcAUCABIAIpAEg3AEggASACKQBANwBAIAEgAikAYDcAYCABIAIpAGg3AGggASACKQBwNwBwIAEgAikAeDcAeCACQYABaiECIAFBgAFqIQEgGkKAAX0iGkIfVg0ACwsgGkIQWgRAIAEgAikAADcAACABIAIpAAg3AAggGkIQfSEaIAJBEGohAiABQRBqIQELIBpCCFoEQCABIAIpAAA3AAAgGkIIfSEaIAJBCGohAiABQQhqIQELIBpCBFoEQCABIAIoAAA2AAAgGkIEfSEaIAJBBGohAiABQQRqIQELIBpCAloEQCABIAIvAAA7AAAgGkICfSEaIAJBAmohAiABQQJqIQELIBwgG30hHCAaUEUEQCABIAItAAA6AAAgAkEBaiECIAFBAWohAQsgHEIAUg0ACwsgDiEGIAwhAwsgBSAGSwRAAkACQCABIANNIAEgDyABa6wiGiAGrSIbIBogG1QbIhqnIglqIgIgA0txDQAgAyAJaiABSyABIANPcQ0AIAEgAyAJEAcaDAELIAEgAyADIAFrIgEgAUEfdSIBaiABcyIBEAcgAWohAiAaIAGtIh59IhxQDQAgASADaiEBA0ACQCAcIB4gHCAeVBsiG0IgVARAIBshGgwBCyAbIhpCIH0iIEIFiEIBfEIDgyIfUEUEQANAIAIgASkAADcAACACIAEpABg3ABggAiABKQAQNwAQIAIgASkACDcACCAaQiB9IRogAUEgaiEBIAJBIGohAiAfQgF9Ih9CAFINAAsLICBC4ABUDQADQCACIAEpAAA3AAAgAiABKQAYNwAYIAIgASkAEDcAECACIAEpAAg3AAggAiABKQA4NwA4IAIgASkAMDcAMCACIAEpACg3ACggAiABKQAgNwAgIAIgASkAWDcAWCACIAEpAFA3AFAgAiABKQBINwBIIAIgASkAQDcAQCACIAEpAGA3AGAgAiABKQBoNwBoIAIgASkAcDcAcCACIAEpAHg3AHggAUGAAWohASACQYABaiECIBpCgAF9IhpCH1YNAAsLIBpCEFoEQCACIAEpAAA3AAAgAiABKQAINwAIIBpCEH0hGiACQRBqIQIgAUEQaiEBCyAaQghaBEAgAiABKQAANwAAIBpCCH0hGiACQQhqIQIgAUEIaiEBCyAaQgRaBEAgAiABKAAANgAAIBpCBH0hGiACQQRqIQIgAUEEaiEBCyAaQgJaBEAgAiABLwAAOwAAIBpCAn0hGiACQQJqIQIgAUECaiEBCyAcIBt9IRwgGlBFBEAgAiABLQAAOgAAIAJBAWohAiABQQFqIQELIBxCAFINAAsLIAUgBmshAUEAIARrIQUCQCAEQQdLBEAgBCEDDAELIAEgBE0EQCAEIQMMAQsgAiAEayEFA0ACQCACIAUpAAA3AAAgBEEBdCEDIAEgBGshASACIARqIQIgBEEDSw0AIAMhBCABIANLDQELC0EAIANrIQULIAIgBWohBAJAIAUgDyACa6wiGiABrSIbIBogG1QbIhqnIgFIIAVBf0pxDQAgBUEBSCABIARqIAJLcQ0AIAIgBCABEAcgAWohAgwDCyACIAQgAyADQR91IgFqIAFzIgEQByABaiECIBogAa0iHn0iHFANAiABIARqIQEDQAJAIBwgHiAcIB5UGyIbQiBUBEAgGyEaDAELIBsiGkIgfSIgQgWIQgF8QgODIh9QRQRAA0AgAiABKQAANwAAIAIgASkAGDcAGCACIAEpABA3ABAgAiABKQAINwAIIBpCIH0hGiABQSBqIQEgAkEgaiECIB9CAX0iH0IAUg0ACwsgIELgAFQNAANAIAIgASkAADcAACACIAEpABg3ABggAiABKQAQNwAQIAIgASkACDcACCACIAEpADg3ADggAiABKQAwNwAwIAIgASkAKDcAKCACIAEpACA3ACAgAiABKQBYNwBYIAIgASkAUDcAUCACIAEpAEg3AEggAiABKQBANwBAIAIgASkAYDcAYCACIAEpAGg3AGggAiABKQBwNwBwIAIgASkAeDcAeCABQYABaiEBIAJBgAFqIQIgGkKAAX0iGkIfVg0ACwsgGkIQWgRAIAIgASkAADcAACACIAEpAAg3AAggGkIQfSEaIAJBEGohAiABQRBqIQELIBpCCFoEQCACIAEpAAA3AAAgGkIIfSEaIAJBCGohAiABQQhqIQELIBpCBFoEQCACIAEoAAA2AAAgGkIEfSEaIAJBBGohAiABQQRqIQELIBpCAloEQCACIAEvAAA7AAAgGkICfSEaIAJBAmohAiABQQJqIQELIBwgG30hHCAaUEUEQCACIAEtAAA6AAAgAkEBaiECIAFBAWohAQsgHFBFDQALDAILAkAgASADTSABIA8gAWusIhogBa0iGyAaIBtUGyIapyIEaiICIANLcQ0AIAMgBGogAUsgASADT3ENACABIAMgBBAHGgwCCyABIAMgAyABayIBIAFBH3UiAWogAXMiARAHIAFqIQIgGiABrSIefSIcUA0BIAEgA2ohAQNAAkAgHCAeIBwgHlQbIhtCIFQEQCAbIRoMAQsgGyIaQiB9IiBCBYhCAXxCA4MiH1BFBEADQCACIAEpAAA3AAAgAiABKQAYNwAYIAIgASkAEDcAECACIAEpAAg3AAggGkIgfSEaIAFBIGohASACQSBqIQIgH0IBfSIfQgBSDQALCyAgQuAAVA0AA0AgAiABKQAANwAAIAIgASkAGDcAGCACIAEpABA3ABAgAiABKQAINwAIIAIgASkAODcAOCACIAEpADA3ADAgAiABKQAoNwAoIAIgASkAIDcAICACIAEpAFg3AFggAiABKQBQNwBQIAIgASkASDcASCACIAEpAEA3AEAgAiABKQBgNwBgIAIgASkAaDcAaCACIAEpAHA3AHAgAiABKQB4NwB4IAFBgAFqIQEgAkGAAWohAiAaQoABfSIaQh9WDQALCyAaQhBaBEAgAiABKQAANwAAIAIgASkACDcACCAaQhB9IRogAkEQaiECIAFBEGohAQsgGkIIWgRAIAIgASkAADcAACAaQgh9IRogAkEIaiECIAFBCGohAQsgGkIEWgRAIAIgASgAADYAACAaQgR9IRogAkEEaiECIAFBBGohAQsgGkICWgRAIAIgAS8AADsAACAaQgJ9IRogAkECaiECIAFBAmohAQsgHCAbfSEcIBpQRQRAIAIgAS0AADoAACACQQFqIQIgAUEBaiEBCyAcUEUNAAsMAQsCQAJAIBYEQAJAIAQgBUkEQCAHKAKYRyAESw0BCyABIARrIQMCQEEAIARrIgVBf0ogDyABa6wiGiAbIBogG1QbIhqnIgIgBUpxDQAgBUEBSCACIANqIAFLcQ0AIAEgAyACEAcgAmohAgwFCyABIAMgBCAEQR91IgFqIAFzIgEQByABaiECIBogAa0iHn0iHFANBCABIANqIQEDQAJAIBwgHiAcIB5UGyIbQiBUBEAgGyEaDAELIBsiGkIgfSIgQgWIQgF8QgODIh9QRQRAA0AgAiABKQAANwAAIAIgASkAGDcAGCACIAEpABA3ABAgAiABKQAINwAIIBpCIH0hGiABQSBqIQEgAkEgaiECIB9CAX0iH0IAUg0ACwsgIELgAFQNAANAIAIgASkAADcAACACIAEpABg3ABggAiABKQAQNwAQIAIgASkACDcACCACIAEpADg3ADggAiABKQAwNwAwIAIgASkAKDcAKCACIAEpACA3ACAgAiABKQBYNwBYIAIgASkAUDcAUCACIAEpAEg3AEggAiABKQBANwBAIAIgASkAYDcAYCACIAEpAGg3AGggAiABKQBwNwBwIAIgASkAeDcAeCABQYABaiEBIAJBgAFqIQIgGkKAAX0iGkIfVg0ACwsgGkIQWgRAIAIgASkAADcAACACIAEpAAg3AAggGkIQfSEaIAJBEGohAiABQRBqIQELIBpCCFoEQCACIAEpAAA3AAAgGkIIfSEaIAJBCGohAiABQQhqIQELIBpCBFoEQCACIAEoAAA2AAAgGkIEfSEaIAJBBGohAiABQQRqIQELIBpCAloEQCACIAEvAAA7AAAgGkICfSEaIAJBAmohAiABQQJqIQELIBwgG30hHCAaUEUEQCACIAEtAAA6AAAgAkEBaiECIAFBAWohAQsgHFBFDQALDAQLIBAgAWsiCUEBaiIGIAUgBSAGSxshAyABIARrIQIgAUEHcUUNAiADRQ0CIAEgAi0AADoAACACQQFqIQIgAUEBaiIGQQdxQQAgA0EBayIFGw0BIAYhASAFIQMgCSEGDAILAkAgBCAFSQRAIAcoAphHIARLDQELIAEgASAEayIGKQAANwAAIAEgBUEBa0EHcUEBaiIDaiECIAUgA2siBEUNAyADIAZqIQEDQCACIAEpAAA3AAAgAUEIaiEBIAJBCGohAiAEQQhrIgQNAAsMAwsgASAEIAUQPyECDAILIAEgAi0AADoAASAJQQFrIQYgA0ECayEFIAJBAWohAgJAIAFBAmoiCkEHcUUNACAFRQ0AIAEgAi0AADoAAiAJQQJrIQYgA0EDayEFIAJBAWohAgJAIAFBA2oiCkEHcUUNACAFRQ0AIAEgAi0AADoAAyAJQQNrIQYgA0EEayEFIAJBAWohAgJAIAFBBGoiCkEHcUUNACAFRQ0AIAEgAi0AADoABCAJQQRrIQYgA0EFayEFIAJBAWohAgJAIAFBBWoiCkEHcUUNACAFRQ0AIAEgAi0AADoABSAJQQVrIQYgA0EGayEFIAJBAWohAgJAIAFBBmoiCkEHcUUNACAFRQ0AIAEgAi0AADoABiAJQQZrIQYgA0EHayEFIAJBAWohAgJAIAFBB2oiCkEHcUUNACAFRQ0AIAEgAi0AADoAByAJQQdrIQYgA0EIayEDIAFBCGohASACQQFqIQIMBgsgCiEBIAUhAwwFCyAKIQEgBSEDDAQLIAohASAFIQMMAwsgCiEBIAUhAwwCCyAKIQEgBSEDDAELIAohASAFIQMLAkACQCAGQRdNBEAgA0UNASADQQFrIQUgA0EHcSIEBEADQCABIAItAAA6AAAgA0EBayEDIAFBAWohASACQQFqIQIgBEEBayIEDQALCyAFQQdJDQEDQCABIAItAAA6AAAgASACLQABOgABIAEgAi0AAjoAAiABIAItAAM6AAMgASACLQAEOgAEIAEgAi0ABToABSABIAItAAY6AAYgASACLQAHOgAHIAFBCGohASACQQhqIQIgA0EIayIDDQALDAELIAMNAQsgASECDAELIAEgBCADED8hAgsgCyEFDAELIAEgAy0AAjoAACABQQFqIQILIAUgFE8NACACIBNJDQELCyAAIAI2AgwgACAFIAhBA3ZrIgE2AgAgACATIAJrQYMCajYCECAAIBQgAWtBDmo2AgQgByAIQQdxIgA2AogBIAcgHUJ/IACthkJ/hYM+AoQBC+cFAQR/IAMgAiACIANLGyEEIAAgAWshAgJAIABBB3FFDQAgBEUNACAAIAItAAA6AAAgA0EBayEGIAJBAWohAiAAQQFqIgdBB3FBACAEQQFrIgUbRQRAIAchACAFIQQgBiEDDAELIAAgAi0AADoAASADQQJrIQYgBEECayEFIAJBAWohAgJAIABBAmoiB0EHcUUNACAFRQ0AIAAgAi0AADoAAiADQQNrIQYgBEEDayEFIAJBAWohAgJAIABBA2oiB0EHcUUNACAFRQ0AIAAgAi0AADoAAyADQQRrIQYgBEEEayEFIAJBAWohAgJAIABBBGoiB0EHcUUNACAFRQ0AIAAgAi0AADoABCADQQVrIQYgBEEFayEFIAJBAWohAgJAIABBBWoiB0EHcUUNACAFRQ0AIAAgAi0AADoABSADQQZrIQYgBEEGayEFIAJBAWohAgJAIABBBmoiB0EHcUUNACAFRQ0AIAAgAi0AADoABiADQQdrIQYgBEEHayEFIAJBAWohAgJAIABBB2oiB0EHcUUNACAFRQ0AIAAgAi0AADoAByADQQhrIQMgBEEIayEEIABBCGohACACQQFqIQIMBgsgByEAIAUhBCAGIQMMBQsgByEAIAUhBCAGIQMMBAsgByEAIAUhBCAGIQMMAwsgByEAIAUhBCAGIQMMAgsgByEAIAUhBCAGIQMMAQsgByEAIAUhBCAGIQMLAkAgA0EXTQRAIARFDQEgBEEBayEBIARBB3EiAwRAA0AgACACLQAAOgAAIARBAWshBCAAQQFqIQAgAkEBaiECIANBAWsi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CyAAIAMtAAAEfiADKQMQBUIAC6dB//8DcSADKAIEEEcLIQUgAxAICyAEQRBqJAAgBQvgAQICfwF+QTAQCSICRQRAIAEEQCABQQA2AgQgAUEONgIAC0EADwsgAkIANwMIIAJBADYCACACQgA3AxAgAkIANwMYIAJCADcDICACQgA3ACUgAFAEQCACDwsCQCAAQv////8AVg0AIACnQQR0EAkiA0UNACACIAM2AgBBACEBQgEhBANAIAMgAUEEdGoiAUIANwIAIAFCADcABSAAIARSBEAgBKchASAEQgF8IQQMAQsLIAIgADcDCCACIAA3AxAgAg8LIAEEQCABQQA2AgQgAUEONgIAC0EAEBAgAhAGQQAL7gECA38BfiMAQRBrIgQkAAJAIARBDGpCBBAXIgNFBEBBfyECDAELAkAgAQRAIAJBgAZxIQUDQAJAIAUgASgCBHFFDQACQCADKQMIQgBUBEAgA0EAOgAADAELIANCADcDECADQQE6AAALIAMgAS8BCBANIAMgAS8BChANIAMtAABFBEAgAEEIaiIABEAgAEEANgIEIABBFDYCAAtBfyECDAQLQX8hAiAAIARBDGpCBBAbQQBIDQMgATMBCiIGUA0AIAAgASgCDCAGEBtBAEgNAwsgASgCACIBDQALC0EAIQILIAMQCAsgBEEQaiQAIAILPAEBfyAABEAgAUGABnEhAQNAIAEgACgCBHEEQCACIAAvAQpqQQRqIQILIAAoAgAiAA0ACwsgAkH//wNxC5wBAQN/IABFBEBBAA8LIAAhAwNAAn8CQAJAIAAvAQgiAUH04AFNBEAgAUEBRg0BIAFB9cYBRg0BDAILIAFBgbICRg0AIAFB9eABRw0BCyAAKAIAIQEgAEEANgIAIAAoAgwQBiAAEAYgASADIAAgA0YbIQMCQCACRQRAQQAhAgwBCyACIAE2AgALIAEMAQsgACICKAIACyIADQALIAMLsgQCBX8BfgJAAkACQCAAIAGtEBciAQRAIAEtAAANAUEAIQAMAgsgBARAIARBADYCBCAEQQ42AgALQQAPC0EAIQADQCABLQAABH4gASkDCCABKQMQfQVCAAtCBFQNASABEAwhByABIAEQDCIGrRATIghFBEBBACECIAQEQCAEQQA2AgQgBEEVNgIACyABEAggAEUNAwNAIAAoAgAhASAAKAIMEAYg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DCAAQRg2AggLDAMLIAAgBiAFLwFqQQAgBCABEQYAIQEgBhALIAFFDQILAkAgDUUEQCABIQMMAQsgACABIAUvAWgQgQEhAyABEAsgA0UNAQsCQCAJRSAMckUEQCADIQEMAQsgACADQQEQgAEhASADEAsgAUUNAQsgASEDDAELQQAhAwsgBUHwAGokACADC4UBAQF/IAFFBEAgAEEIaiIABEAgAEEANgIEIABBEjYCAAtBAA8LQTgQCSIDRQRAIABBCGoiAARAIABBADYCBCAAQQ42AgALQQAPCyADQQA2AhAgA0IANwIIIANCADcDKCADQQA2AgQgAyACNgIAIANCADcDGCADQQA2AjAgACABQTsgAxBCCw8AIAAgASACQQBBABCCAQusAgECfyABRQRAIABBCGoiAARAIABBADYCBCAAQRI2AgALQQAPCwJAIAJBfUsNACACQf//A3FBCEYNACAAQQhqIgAEQCAAQQA2AgQgAEEQNgIAC0EADwsCQEGwwAAQCSIFBEAgBUEANgIIIAVCADcCACAFQYiBAUGogQEgAxs2AqhAIAUgAjYCFCAFIAM6ABAgBUEAOgAPIAVBADsBDCAFIAMgAkF9SyIGcToADiAFQQggAiAGG0H//wNxIAQgBUGIgQFBqIEBIAMbKAIAEQAAIgI2AqxAIAINASAFEDEgBRAGCyAAQQhqIgAEQCAAQQA2AgQgAEEONgIAC0EADwsgACABQTogBRBCIgAEfyAABSAFKAKsQCAFKAKoQCgCBBEDACAFEDEgBRAGQQALC6ABAQF/IAIgACgCBCIDIAIgA0kbIgIEQCAAIAMgAms2AgQCQAJAAkACQCAAKAIcIgMoAhRBAWsOAgEAAgsgA0GgAWogASAAKAIAIAJB3IABKAIAEQgADAILIAAgACgCMCABIAAoAgAgAkHEgAEoAgARBAA2AjAMAQsgASAAKAIAIAIQBxoLIAAgACgCACACajYCACAAIAAoAgggAmo2AggLC7cCAQR/QX4hAgJAIABFDQAgACgCIEUNACAAKAIkIgRFDQAgACgCHCIBRQ0AIAEoAgAgAEcNAAJAAkAgASgCICIDQTlrDjkBAgICAgICAgICAgIBAgICAQICAgICAgICAgICAgICAgICAQICAgICAgICAgICAQICAgICAgICAgEACyADQZoFRg0AIANBKkcN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DCABajYCDCAGIAYoAgggAWo2AgggBSAFKAIUIAFqNgIUIAUgBSgCECABazYCECAGIAYoAhAgAWsiATYCECABDQAgBiAGKAIENgIIC0EAIQRBACEJIAMoAhBFDQAMCgsgAygCHCgCJCEGIAMgAygCGCIBQQFqNgIYIAEgBmotAAAhASADIARBAWo2AhAgAygCBCAEaiABOgAAIAEEQCADKAIQIQQMAQsLIAMoAhwoAixFDQAgAygCECIGIAlNDQAgBQJ/IAUoAjAhBEEAIAMoAgQgCWoiAUUNABogBCABIAYgCWtB1IABKAIAEQAACzYCMAsgA0HnADYCIAsCQCADKAIcKAIsBEAgAygCDCADKAIQIgFBAmpJBH8gBRAKIAMoAhANAkEABSABCyADKAIEaiAFKAIwOwAAIAMgAygCEEECajYCECADQaABakHkgAEoAgARAQAaCyADQfEANgIgIAUQCiADKAIQRQ0BDAcLDAYLIAUoAgQNAQsgAygCPA0AIApFDQEgAygCIEGaBUYNAQsCfyADKAKIASIBRQRAIAMgChCFAQwBCwJAAkACQCADKAKMAUECaw4CAAECCwJ/AkADQAJAAkAgAygCPA0AIAMQLyADKAI8DQAgCg0BQQAMBAsgAygCSCADKAJoai0AACEEIAMgAygC8C0iAUEBajYC8C0gASADKALsLWpBADoAACADIAMoAvAtIgFBAWo2AvAtIAEgAygC7C1qQQA6AAAgAyADKALwLSIBQQFqNgLwLSABIAMoAuwtaiAEOgAAIAMgBEECdGoiASABLwHkAUEBajsB5AEgAyADKAI8QQFrNgI8IAMgAygCaEEBaiIBNgJoIAMoAvAtIAMoAvQtRw0BQQAhBCADIAMoAlgiBkEATgR/IAMoAkggBmoFQQALIAEgBmtBABAPIAMgAygCaDYCWCADKAIAEAogAygCACgCEA0BDAILCyADQQA2AoQuIApBBEYEQCADIAMoAlgiAUEATgR/IAMoAkggAWoFQQALIAMoAmggAWtBARAPIAMgAygCaDYCWCADKAIAEApBA0ECIAMoAgAoAhAbDAILIAMoAvAtBEBBACEEIAMgAygCWCIBQQBOBH8gAygCSCABagVBAAsgAygCaCABa0EAEA8gAyADKAJoNgJYIAMoAgAQCiADKAIAKAIQRQ0BC0EBIQQLIAQL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bGl0ZXJhbC9sZW5ndGhzIHNldABpbnZhbGlkIGNvZGUgbGVuZ3RocyBzZXQAdW5rbm93biBoZWFkZXIgZmxhZ3Mgc2V0AGludmFsaWQgZGlzdGFuY2VzIHNldABpbnZhbGlkIGJpdCBsZW5ndGggcmVwZWF0AEZpbGUgYWxyZWFkeSBleGlzdHMAdG9vIG1hbnkgbGVuZ3RoIG9yIGRpc3RhbmNlIHN5bWJvbHMAaW52YWxpZCBzdG9yZWQgYmxvY2sgbGVuZ3RocwAlcyVzJXMAYnVmZmVyIGVycm9yAE5vIGVycm9yAHN0cmVhbSBlcnJvcgBUZWxsIGVycm9yAEludGVybmFsIGVycm9yAFNlZWsgZXJyb3IAV3JpdGUgZXJyb3IAZmlsZSBlcnJvcgBSZWFkIGVycm9yAFpsaWIgZXJyb3IAZGF0YSBlcnJvcgBDUkMgZXJyb3IAaW5jb21wYXRpYmxlIHZlcnNpb24AaW52YWxpZCBjb2RlIC0tIG1pc3NpbmcgZW5kLW9mLWJsb2NrAGluY29ycmVjdCBoZWFkZXIgY2hlY2sAaW5jb3JyZWN0IGxlbmd0aCBjaGVjawBpbmNvcnJlY3QgZGF0YSBjaGVjawBpbnZhbGlkIGRpc3RhbmNlIHRvbyBmYXIgYmFjawBoZWFkZXIgY3JjIG1pc21hdGNoADEuMi4xMy56bGliLW5nAGludmFsaWQgd2luZG93IHNpemUAUmVhZC1vbmx5IGFyY2hpdmUATm90IGEgemlwIGFyY2hpdmUAUmVzb3VyY2Ugc3RpbGwgaW4gdXNlAE1hbGxvYyBmYWlsdXJlAGludmFsaWQgYmxvY2sgdHlwZQBGYWlsdXJlIHRvIGNyZWF0ZSB0ZW1wb3JhcnkgZmlsZQBDYW4ndCBvcGVuIGZpbGUATm8gc3VjaCBmaWxlAFByZW1hdHVyZSBlbmQgb2YgZmlsZQBDYW4ndCByZW1vdmUgZmlsZQBpbnZhbGlkIGxpdGVyYWwvbGVuZ3RoIGNvZGUAaW52YWxpZCBkaXN0YW5jZSBjb2RlAHVua25vd24gY29tcHJlc3Npb24gbWV0aG9kAHN0cmVhbSBlbmQAQ29tcHJlc3NlZCBkYXRhIGludmFsaWQATXVsdGktZGlzayB6aXAgYXJjaGl2ZXMgbm90IHN1cHBvcnRl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UgAIANIACAAyAAgAsgAIAHIACADyAAgACgAIAIoACABKAAgAygAIACoACACqAAgAagAIAOoACAAaAAgAmgAIAFoACADaAAgAOgAIALoACAB6AAgA+gAIAAYACACGAAgARgAIAMYACAAmAAgApgAIAGYACADmAAgAFgAIAJYACABWAAgA1gAIADYACAC2AAgAdgAIAPYACAAOAAgAjgAIAE4ACADOAAgALgAIAK4ACABuAAgA7gAIAB4ACACeAAgAXgAIAN4ACAA+AAgAvgAIAH4ACAD+AAgAAQAIAIEACABBAAgAwQAIACEACAChAAgAYQAIAOEACAARAAgAkQAIAFEACADRAAgAMQAIALEACABxAAgA8QAIAAkACACJAAgASQAIAMkACAApAAgAqQAIAGkACADpAAgAGQAIAJkACABZAAgA2QAIADkACAC5AAgAeQAIAPkACAAFAAgAhQAIAEUACADFAAgAJQAIAKUACABlAAgA5QAIABUACACVAAgAVQAIANUACAA1AAgAtQAIAHUACAD1AAgADQAIAI0ACABNAAgAzQAIAC0ACACtAAgAbQAIAO0ACAAdAAgAnQAIAF0ACADdAAgAPQAIAL0ACAB9AAgA/QAIABMACQATAQkAkwAJAJMBCQBTAAkAUwEJANMACQDTAQkAMwAJADMBCQCzAAkAswEJAHMACQBzAQkA8wAJAPMBCQALAAkACwEJAIsACQCLAQkASwAJAEsBCQDLAAkAywEJACsACQArAQkAqwAJAKsBCQBrAAkAawEJAOsACQDrAQkAGwAJABsBCQCbAAkAmwEJAFsACQBbAQkA2wAJANsBCQA7AAkAOwEJALsACQC7AQkAewAJAHsBCQD7AAkA+wEJAAcACQAHAQkAhwAJAIcBCQBHAAkARwEJAMcACQDHAQkAJwAJACcBCQCnAAkApwEJAGcACQBnAQkA5wAJAOcBCQAXAAkAFwEJAJcACQCXAQkAVwAJAFcBCQDXAAkA1wEJADcACQA3AQkAtwAJALcBCQB3AAkAdwEJAPcACQD3AQkADwAJAA8BCQCPAAkAjwEJAE8ACQBPAQkAzwAJAM8BCQAvAAkALwEJAK8ACQCvAQkAbwAJAG8BCQDvAAkA7wEJAB8ACQAfAQkAnwAJAJ8BCQBfAAkAXwEJAN8ACQDfAQkAPwAJAD8BCQC/AAkA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SXMgYSBkaXJlY3RvcnkAVGV4dCBmaWxlIGJ1c3kARXhlYyBmb3JtYXQgZXJyb3IASW52YWxpZCBhcmd1bWVudABBcmd1bWVudCBsaXN0IHRvbyBsb25nAFN5bWJvbGljIGxpbmsgbG9vcABGaWxlbmFtZSB0b28gbG9uZwBUb28gbWFueSBvcGVuIGZpbGVzIGluIHN5c3RlbQBObyBmaWxlIGRlc2NyaXB0b3JzIGF2YWlsYWJsZQBCYWQgZmlsZSBkZXNjcmlwdG9yAE5vIGNoaWxkIHByb2Nlc3MAQmFkIGFkZHJlc3MARmlsZSB0b28gbGFyZ2UAVG9vIG1hbnkgbGlua3MATm8gbG9ja3MgYXZhaWxhYmxlAFJlc291cmNlIGRlYWRsb2NrIHdvdWxkIG9jY3VyAFN0YXRlIG5vdCByZWNvdmVyYWJsZQBQcmV2aW91cyBvd25lciBkaWVkAE9wZXJhdGlvbiBjYW5jZWxlZABGdW5jdGlvbiBub3QgaW1wbGVtZW50ZWQATm8gbWVzc2FnZSBvZiBkZXNpcmVkIHR5cGUASWRlbnRpZmllciByZW1vdmVkAERldmljZSBub3QgYSBzdHJlYW0ATm8gZGF0YSBhdmFpbGFibGUARGV2aWNlIHRpbWVvdXQAT3V0IG9mIHN0cmVhbXMgcmVzb3VyY2VzAExpbmsgaGFzIGJlZW4gc2V2ZXJlZABQcm90b2NvbCBlcnJvcgBCYWQgbWVzc2FnZQBGaWxlIGRlc2NyaXB0b3IgaW4gYmFkIHN0YXRlAE5vdCBhIHNvY2tldABEZXN0aW5hdGlvbiBhZGRyZXNzIHJlcXVpcmVkAE1lc3NhZ2UgdG9vIGxhcmdlAFByb3RvY29sIHdyb25nIHR5cGUgZm9yIHNvY2tldABQcm90b2NvbCBub3QgYXZhaWxhYmxlAFByb3RvY29sIG5vdCBzdXBwb3J0ZWQAU29ja2V0IHR5cGUgbm90IHN1cHBvcnRlZABOb3Qgc3VwcG9ydGVkAFByb3RvY29sIGZhbWlseSBub3Qgc3VwcG9ydGVkAEFkZHJlc3MgZmFtaWx5IG5vdCBzdXBwb3J0ZWQgYnkgcHJvdG9jb2wAQWRkcmVzcyBub3QgYXZhaWxhYmxlAE5ldHdvcmsgaXMgZG93bgBOZXR3b3JrIHVucmVhY2hhYmxlAENvbm5lY3Rpb24gcmVzZXQgYnkgbmV0d29yawBDb25uZWN0aW9uIGFib3J0ZWQATm8gYnVmZmVyIHNwYWNlIGF2YWlsYWJsZQBTb2NrZXQgaXMgY29ubmVjdGVkAFNvY2tldCBub3QgY29ubmVjdGVkAENhbm5vdCBzZW5kIGFmdGVyIHNvY2tldCBzaHV0ZG93bgBPcGVyYXRpb24gYWxyZWFkeSBpbiBwcm9ncmVzcwBPcGVyYXRpb24gaW4gcHJvZ3Jlc3MAU3RhbGUgZmlsZSBoYW5kbGUAUmVtb3RlIEkvTyBlcnJvcgBRdW90YSBleGNlZWRlZABObyBtZWRpdW0gZm91bmQAV3JvbmcgbWVkaXVtIHR5cGUATm8gZXJyb3IgaW5mb3JtYXRpb24AQcCAAQuFARMAAAAUAAAAFQAAABYAAAAXAAAAGAAAABkAAAAaAAAAGwAAABwAAAAdAAAAHgAAAB8AAAAgAAAAIQAAACIAAAAjAAAAgERQADEAAAAyAAAAMwAAADQAAAA1AAAANgAAADcAAAA4AAAAOQAAADIAAAAzAAAANAAAADUAAAA2AAAANwAAADgAQfSCAQsCXEQAQbCDAQsQ/////////////////////w==";io(Si)||(Si=x(Si));function Ls(We){try{if(We==Si&&Ae)return new Uint8Array(Ae);var tt=ii(We);if(tt)return tt;if(R)return R(We);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(It){Ti(It)}}function so(We,tt){var It,nr,$;try{$=Ls(We),nr=new WebAssembly.Module($),It=new WebAssembly.Instance(nr,tt)}catch(Le){var me=Le.toString();throw te("failed to compile wasm module: "+me),(me.includes("imported Memory")||me.includes("memory import"))&&te("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)."),Le}return[It,nr]}function cc(){var We={a:Ma};function tt($,me){var Le=$.exports;r.asm=Le,Ie=r.asm.g,J(Ie.buffer),Z=r.asm.W,an(r.asm.h),Ns("wasm-instantiate")}if(Kn("wasm-instantiate"),r.instantiateWasm)try{var It=r.instantiateWasm(We,tt);return It}catch($){return te("Module.instantiateWasm callback failed with error: "+$),!1}var nr=so(Si,We);return tt(nr[0]),r.asm}function cu(We){return F.getFloat32(We,!0)}function op(We){return F.getFloat64(We,!0)}function ap(We){return F.getInt16(We,!0)}function Os(We){return F.getInt32(We,!0)}function Dn(We,tt){F.setInt32(We,tt,!0)}function oo(We){for(;We.length>0;){var tt=We.shift();if(typeof tt=="function"){tt(r);continue}var It=tt.func;typeof It=="number"?tt.arg===void 0?Z.get(It)():Z.get(It)(tt.arg):It(tt.arg===void 0?null:tt.arg)}}function Ms(We,tt){var It=new Date(Os((We>>2)*4)*1e3);Dn((tt>>2)*4,It.getUTCSeconds()),Dn((tt+4>>2)*4,It.getUTCMinutes()),Dn((tt+8>>2)*4,It.getUTCHours()),Dn((tt+12>>2)*4,It.getUTCDate()),Dn((tt+16>>2)*4,It.getUTCMonth()),Dn((tt+20>>2)*4,It.getUTCFullYear()-1900),Dn((tt+24>>2)*4,It.getUTCDay()),Dn((tt+36>>2)*4,0),Dn((tt+32>>2)*4,0);var nr=Date.UTC(It.getUTCFullYear(),0,1,0,0,0,0),$=(It.getTime()-nr)/(1e3*60*60*24)|0;return Dn((tt+28>>2)*4,$),Ms.GMTString||(Ms.GMTString=lt("GMT")),Dn((tt+40>>2)*4,Ms.GMTString),tt}function ml(We,tt){return Ms(We,tt)}function yl(We,tt,It){Re.copyWithin(We,tt,tt+It)}function ao(We){try{return Ie.grow(We-be.byteLength+65535>>>16),J(Ie.buffer),1}catch{}}function Vn(We){var tt=Re.length;We=We>>>0;var It=2147483648;if(We>It)return!1;for(var nr=1;nr<=4;nr*=2){var $=tt*(1+.2/nr);$=Math.min($,We+100663296);var me=Math.min(It,ke(Math.max(We,$),65536)),Le=ao(me);if(Le)return!0}return!1}function On(We){he(We)}function Ni(We){var tt=Date.now()/1e3|0;return We&&Dn((We>>2)*4,tt),tt}function Mn(){if(Mn.called)return;Mn.called=!0;var We=new Date().getFullYear(),tt=new Date(We,0,1),It=new Date(We,6,1),nr=tt.getTimezoneOffset(),$=It.getTimezoneOffset(),me=Math.max(nr,$);Dn((ds()>>2)*4,me*60),Dn((gs()>>2)*4,Number(nr!=$));function Le(Zr){var qi=Zr.toTimeString().match(/\(([A-Za-z ]+)\)$/);return qi?qi[1]:"GMT"}var ft=Le(tt),pt=Le(It),Tt=lt(ft),er=lt(pt);$>2)*4,Tt),Dn((wi()+4>>2)*4,er)):(Dn((wi()>>2)*4,er),Dn((wi()+4>>2)*4,Tt))}function _i(We){Mn();var tt=Date.UTC(Os((We+20>>2)*4)+1900,Os((We+16>>2)*4),Os((We+12>>2)*4),Os((We+8>>2)*4),Os((We+4>>2)*4),Os((We>>2)*4),0),It=new Date(tt);Dn((We+24>>2)*4,It.getUTCDay());var nr=Date.UTC(It.getUTCFullYear(),0,1,0,0,0,0),$=(It.getTime()-nr)/(1e3*60*60*24)|0;return Dn((We+28>>2)*4,$),It.getTime()/1e3|0}var tr=typeof atob=="function"?atob:function(We){var tt="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",It="",nr,$,me,Le,ft,pt,Tt,er=0;We=We.replace(/[^A-Za-z0-9\+\/\=]/g,"");do Le=tt.indexOf(We.charAt(er++)),ft=tt.indexOf(We.charAt(er++)),pt=tt.indexOf(We.charAt(er++)),Tt=tt.indexOf(We.charAt(er++)),nr=Le<<2|ft>>4,$=(ft&15)<<4|pt>>2,me=(pt&3)<<6|Tt,It=It+String.fromCharCode(nr),pt!==64&&(It=It+String.fromCharCode($)),Tt!==64&&(It=It+String.fromCharCode(me));while(er0||(dt(),mr>0))return;function tt(){Pn||(Pn=!0,r.calledRun=!0,!Fe&&(jt(),o(r),r.onRuntimeInitialized&&r.onRuntimeInitialized(),$t()))}r.setStatus?(r.setStatus("Running..."),setTimeout(function(){setTimeout(function(){r.setStatus("")},1),tt()},1)):tt()}if(r.run=ys,r.preInit)for(typeof r.preInit=="function"&&(r.preInit=[r.preInit]);r.preInit.length>0;)r.preInit.pop()();return ys(),e}}();typeof Rb=="object"&&typeof nU=="object"?nU.exports=rU:typeof define=="function"&&define.amd?define([],function(){return rU}):typeof Rb=="object"&&(Rb.createModule=rU)});var Nf,Lle,Ole,Mle=Et(()=>{Nf=["number","number"],Lle=(ee=>(ee[ee.ZIP_ER_OK=0]="ZIP_ER_OK",ee[ee.ZIP_ER_MULTIDISK=1]="ZIP_ER_MULTIDISK",ee[ee.ZIP_ER_RENAME=2]="ZIP_ER_RENAME",ee[ee.ZIP_ER_CLOSE=3]="ZIP_ER_CLOSE",ee[ee.ZIP_ER_SEEK=4]="ZIP_ER_SEEK",ee[ee.ZIP_ER_READ=5]="ZIP_ER_READ",ee[ee.ZIP_ER_WRITE=6]="ZIP_ER_WRITE",ee[ee.ZIP_ER_CRC=7]="ZIP_ER_CRC",ee[ee.ZIP_ER_ZIPCLOSED=8]="ZIP_ER_ZIPCLOSED",ee[ee.ZIP_ER_NOENT=9]="ZIP_ER_NOENT",ee[ee.ZIP_ER_EXISTS=10]="ZIP_ER_EXISTS",ee[ee.ZIP_ER_OPEN=11]="ZIP_ER_OPEN",ee[ee.ZIP_ER_TMPOPEN=12]="ZIP_ER_TMPOPEN",ee[ee.ZIP_ER_ZLIB=13]="ZIP_ER_ZLIB",ee[ee.ZIP_ER_MEMORY=14]="ZIP_ER_MEMORY",ee[ee.ZIP_ER_CHANGED=15]="ZIP_ER_CHANGED",ee[ee.ZIP_ER_COMPNOTSUPP=16]="ZIP_ER_COMPNOTSUPP",ee[ee.ZIP_ER_EOF=17]="ZIP_ER_EOF",ee[ee.ZIP_ER_INVAL=18]="ZIP_ER_INVAL",ee[ee.ZIP_ER_NOZIP=19]="ZIP_ER_NOZIP",ee[ee.ZIP_ER_INTERNAL=20]="ZIP_ER_INTERNAL",ee[ee.ZIP_ER_INCONS=21]="ZIP_ER_INCONS",ee[ee.ZIP_ER_REMOVE=22]="ZIP_ER_REMOVE",ee[ee.ZIP_ER_DELETED=23]="ZIP_ER_DELETED",ee[ee.ZIP_ER_ENCRNOTSUPP=24]="ZIP_ER_ENCRNOTSUPP",ee[ee.ZIP_ER_RDONLY=25]="ZIP_ER_RDONLY",ee[ee.ZIP_ER_NOPASSWD=26]="ZIP_ER_NOPASSWD",ee[ee.ZIP_ER_WRONGPASSWD=27]="ZIP_ER_WRONGPASSWD",ee[ee.ZIP_ER_OPNOTSUPP=28]="ZIP_ER_OPNOTSUPP",ee[ee.ZIP_ER_INUSE=29]="ZIP_ER_INUSE",ee[ee.ZIP_ER_TELL=30]="ZIP_ER_TELL",ee[ee.ZIP_ER_COMPRESSED_DATA=31]="ZIP_ER_COMPRESSED_DATA",ee))(Lle||{}),Ole=t=>({get HEAPU8(){return t.HEAPU8},errors:Lle,SEEK_SET:0,SEEK_CUR:1,SEEK_END:2,ZIP_CHECKCONS:4,ZIP_EXCL:2,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),uint32S:t._malloc(4),malloc:t._malloc,free:t._free,getValue:t.getValue,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"]),statIndex:t.cwrap("zip_stat_index","number",["number",...Nf,"number","number"]),fopenIndex:t.cwrap("zip_fopen_index","number",["number",...Nf,"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",...Nf,"number","number","number"]),setExternalAttributes:t.cwrap("zip_file_set_external_attributes","number",["number",...Nf,"number","number","number"]),setMtime:t.cwrap("zip_file_set_mtime","number",["number",...Nf,"number","number"]),setCompression:t.cwrap("zip_set_file_compression","number",["number",...Nf,"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",...Nf,"number","number"]),fromBuffer:t.cwrap("zip_source_buffer","number",["number","number",...Nf,"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",...Nf,"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"])},struct:{statS:t.cwrap("zipstruct_statS","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"]),errorS:t.cwrap("zipstruct_errorS","number",[]),errorCodeZip:t.cwrap("zipstruct_error_code_zip","number",["number"])}})});function iU(t,e){let r=t.indexOf(e);if(r<=0)return null;let o=r;for(;r>=0&&(o=r+e.length,t[o]!==V.sep);){if(t[r-1]===V.sep)return null;r=t.indexOf(e,o)}return t.length>o&&t[o]!==V.sep?null:t.slice(0,o)}var zl,Ule=Et(()=>{Pt();Pt();nA();zl=class extends Up{static async openPromise(e,r){let o=new zl(r);try{return await e(o)}finally{o.saveAndClose()}}constructor(e={}){let r=e.fileExtensions,o=e.readOnlyArchives,a=typeof r>"u"?A=>iU(A,".zip"):A=>{for(let p of r){let h=iU(A,p);if(h)return h}return null},n=(A,p)=>new Ji(p,{baseFs:A,readOnly:o,stats:A.statSync(p)}),u=async(A,p)=>{let h={baseFs:A,readOnly:o,stats:await A.statPromise(p)};return()=>new Ji(p,h)};super({...e,factorySync:n,factoryPromise:u,getMountPoint:a})}}});function fot(t){if(typeof t=="string"&&String(+t)===t)return+t;if(typeof t=="number"&&Number.isFinite(t))return t<0?Date.now()/1e3:t;if(_le.types.isDate(t))return t.getTime()/1e3;throw new Error("Invalid time")}function Tb(){return Buffer.from([80,75,5,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0])}var ta,sU,_le,oU,Hle,Nb,Ji,aU=Et(()=>{Pt();Pt();Pt();Pt();Pt();Pt();ta=Be("fs"),sU=Be("stream"),_le=Be("util"),oU=$e(Be("zlib"));tU();Hle="mixed";Nb=class extends Error{constructor(r,o){super(r);this.name="Libzip Error",this.code=o}},Ji=class extends Mu{constructor(r,o={}){super();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;let a=o;if(this.level=typeof a.level<"u"?a.level:Hle,r??=Tb(),typeof r=="string"){let{baseFs:A=new Tn}=a;this.baseFs=A,this.path=r}else this.path=null,this.baseFs=null;if(o.stats)this.stats=o.stats;else if(typeof r=="string")try{this.stats=this.baseFs.statSync(r)}catch(A){if(A.code==="ENOENT"&&a.create)this.stats=Ea.makeDefaultStats();else throw A}else this.stats=Ea.makeDefaultStats();this.libzip=P1();let n=this.libzip.malloc(4);try{let A=0;o.readOnly&&(A|=this.libzip.ZIP_RDONLY,this.readOnly=!0),typeof r=="string"&&(r=a.create?Tb():this.baseFs.readFileSync(r));let p=this.allocateUnattachedSource(r);try{this.zip=this.libzip.openFromSource(p,A,n),this.lzSource=p}catch(h){throw this.libzip.source.free(p),h}if(this.zip===0){let h=this.libzip.struct.errorS();throw this.libzip.error.initWithCode(h,this.libzip.getValue(n,"i32")),this.makeLibzipError(h)}}finally{this.libzip.free(n)}this.listings.set(Bt.root,new Set);let u=this.libzip.getNumEntries(this.zip,0);for(let A=0;Ar)throw new Error("Overread");let n=this.libzip.HEAPU8.subarray(o,o+r);return Buffer.from(n)}finally{this.libzip.free(o)}}finally{this.libzip.source.close(this.lzSource),this.libzip.source.free(this.lzSource),this.ready=!1}}discardAndClose(){this.prepareClose(),this.libzip.discard(this.zip),this.ready=!1}saveAndClose(){if(!this.path||!this.baseFs)throw new Error("ZipFS cannot be saved and must be discarded when loaded from a buffer");if(this.readOnly){this.discardAndClose();return}let r=this.baseFs.existsSync(this.path)||this.stats.mode===Ea.DEFAULT_MODE?void 0:this.stats.mode;this.baseFs.writeFileSync(this.path,this.getBufferAndClose(),{mode:r}),this.ready=!1}resolve(r){return V.resolve(Bt.root,r)}async openPromise(r,o,a){return this.openSync(r,o,a)}openSync(r,o,a){let n=this.nextFd++;return this.fds.set(n,{cursor:0,p:r}),n}hasOpenFileHandles(){return!!this.fds.size}async opendirPromise(r,o){return this.opendirSync(r,o)}opendirSync(r,o={}){let a=this.resolveFilename(`opendir '${r}'`,r);if(!this.entries.has(a)&&!this.listings.has(a))throw ar.ENOENT(`opendir '${r}'`);let n=this.listings.get(a);if(!n)throw ar.ENOTDIR(`opendir '${r}'`);let u=[...n],A=this.openSync(a,"r");return SD(this,a,u,{onClose:()=>{this.closeSync(A)}})}async readPromise(r,o,a,n,u){return this.readSync(r,o,a,n,u)}readSync(r,o,a=0,n=o.byteLength,u=-1){let A=this.fds.get(r);if(typeof A>"u")throw ar.EBADF("read");let p=u===-1||u===null?A.cursor:u,h=this.readFileSync(A.p);h.copy(o,a,p,p+n);let C=Math.max(0,Math.min(h.length-p,n));return(u===-1||u===null)&&(A.cursor+=C),C}async writePromise(r,o,a,n,u){return typeof o=="string"?this.writeSync(r,o,u):this.writeSync(r,o,a,n,u)}writeSync(r,o,a,n,u){throw typeof this.fds.get(r)>"u"?ar.EBADF("read"):new Error("Unimplemented")}async closePromise(r){return this.closeSync(r)}closeSync(r){if(typeof this.fds.get(r)>"u")throw ar.EBADF("read");this.fds.delete(r)}createReadStream(r,{encoding:o}={}){if(r===null)throw new Error("Unimplemented");let a=this.openSync(r,"r"),n=Object.assign(new sU.PassThrough({emitClose:!0,autoDestroy:!0,destroy:(A,p)=>{clearImmediate(u),this.closeSync(a),p(A)}}),{close(){n.destroy()},bytesRead:0,path:r,pending:!1}),u=setImmediate(async()=>{try{let A=await this.readFilePromise(r,o);n.bytesRead=A.length,n.end(A)}catch(A){n.destroy(A)}});return n}createWriteStream(r,{encoding:o}={}){if(this.readOnly)throw ar.EROFS(`open '${r}'`);if(r===null)throw new Error("Unimplemented");let a=[],n=this.openSync(r,"w"),u=Object.assign(new sU.PassThrough({autoDestroy:!0,emitClose:!0,destroy:(A,p)=>{try{A?p(A):(this.writeFileSync(r,Buffer.concat(a),o),p(null))}catch(h){p(h)}finally{this.closeSync(n)}}}),{close(){u.destroy()},bytesWritten:0,path:r,pending:!1});return u.on("data",A=>{let p=Buffer.from(A);u.bytesWritten+=p.length,a.push(p)}),u}async realpathPromise(r){return this.realpathSync(r)}realpathSync(r){let o=this.resolveFilename(`lstat '${r}'`,r);if(!this.entries.has(o)&&!this.listings.has(o))throw ar.ENOENT(`lstat '${r}'`);return o}async existsPromise(r){return this.existsSync(r)}existsSync(r){if(!this.ready)throw ar.EBUSY(`archive closed, existsSync '${r}'`);if(this.symlinkCount===0){let a=V.resolve(Bt.root,r);return this.entries.has(a)||this.listings.has(a)}let o;try{o=this.resolveFilename(`stat '${r}'`,r,void 0,!1)}catch{return!1}return o===void 0?!1:this.entries.has(o)||this.listings.has(o)}async accessPromise(r,o){return this.accessSync(r,o)}accessSync(r,o=ta.constants.F_OK){let a=this.resolveFilename(`access '${r}'`,r);if(!this.entries.has(a)&&!this.listings.has(a))throw ar.ENOENT(`access '${r}'`);if(this.readOnly&&o&ta.constants.W_OK)throw ar.EROFS(`access '${r}'`)}async statPromise(r,o={bigint:!1}){return o.bigint?this.statSync(r,{bigint:!0}):this.statSync(r)}statSync(r,o={bigint:!1,throwIfNoEntry:!0}){let a=this.resolveFilename(`stat '${r}'`,r,void 0,o.throwIfNoEntry);if(a!==void 0){if(!this.entries.has(a)&&!this.listings.has(a)){if(o.throwIfNoEntry===!1)return;throw ar.ENOENT(`stat '${r}'`)}if(r[r.length-1]==="/"&&!this.listings.has(a))throw ar.ENOTDIR(`stat '${r}'`);return this.statImpl(`stat '${r}'`,a,o)}}async fstatPromise(r,o){return this.fstatSync(r,o)}fstatSync(r,o){let a=this.fds.get(r);if(typeof a>"u")throw ar.EBADF("fstatSync");let{p:n}=a,u=this.resolveFilename(`stat '${n}'`,n);if(!this.entries.has(u)&&!this.listings.has(u))throw ar.ENOENT(`stat '${n}'`);if(n[n.length-1]==="/"&&!this.listings.has(u))throw ar.ENOTDIR(`stat '${n}'`);return this.statImpl(`fstat '${n}'`,u,o)}async lstatPromise(r,o={bigint:!1}){return o.bigint?this.lstatSync(r,{bigint:!0}):this.lstatSync(r)}lstatSync(r,o={bigint:!1,throwIfNoEntry:!0}){let a=this.resolveFilename(`lstat '${r}'`,r,!1,o.throwIfNoEntry);if(a!==void 0){if(!this.entries.has(a)&&!this.listings.has(a)){if(o.throwIfNoEntry===!1)return;throw ar.ENOENT(`lstat '${r}'`)}if(r[r.length-1]==="/"&&!this.listings.has(a))throw ar.ENOTDIR(`lstat '${r}'`);return this.statImpl(`lstat '${r}'`,a,o)}}statImpl(r,o,a={}){let n=this.entries.get(o);if(typeof n<"u"){let u=this.libzip.struct.statS();if(this.libzip.statIndex(this.zip,n,0,0,u)===-1)throw this.makeLibzipError(this.libzip.getError(this.zip));let p=this.stats.uid,h=this.stats.gid,C=this.libzip.struct.statSize(u)>>>0,I=512,v=Math.ceil(C/I),x=(this.libzip.struct.statMtime(u)>>>0)*1e3,E=x,R=x,L=x,U=new Date(E),z=new Date(R),te=new Date(L),le=new Date(x),he=this.listings.has(o)?ta.constants.S_IFDIR:this.isSymbolicLink(n)?ta.constants.S_IFLNK:ta.constants.S_IFREG,Ae=he===ta.constants.S_IFDIR?493:420,ye=he|this.getUnixMode(n,Ae)&511,ae=this.libzip.struct.statCrc(u),Ie=Object.assign(new Ea.StatEntry,{uid:p,gid:h,size:C,blksize:I,blocks:v,atime:U,birthtime:z,ctime:te,mtime:le,atimeMs:E,birthtimeMs:R,ctimeMs:L,mtimeMs:x,mode:ye,crc:ae});return a.bigint===!0?Ea.convertToBigIntStats(Ie):Ie}if(this.listings.has(o)){let u=this.stats.uid,A=this.stats.gid,p=0,h=512,C=0,I=this.stats.mtimeMs,v=this.stats.mtimeMs,x=this.stats.mtimeMs,E=this.stats.mtimeMs,R=new Date(I),L=new Date(v),U=new Date(x),z=new Date(E),te=ta.constants.S_IFDIR|493,le=0,he=Object.assign(new Ea.StatEntry,{uid:u,gid:A,size:p,blksize:h,blocks:C,atime:R,birthtime:L,ctime:U,mtime:z,atimeMs:I,birthtimeMs:v,ctimeMs:x,mtimeMs:E,mode:te,crc:le});return a.bigint===!0?Ea.convertToBigIntStats(he):he}throw new Error("Unreachable")}getUnixMode(r,o){if(this.libzip.file.getExternalAttributes(this.zip,r,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?o:this.libzip.getValue(this.libzip.uint32S,"i32")>>>16}registerListing(r){let o=this.listings.get(r);if(o)return o;this.registerListing(V.dirname(r)).add(V.basename(r));let n=new Set;return this.listings.set(r,n),n}registerEntry(r,o){this.registerListing(V.dirname(r)).add(V.basename(r)),this.entries.set(r,o)}unregisterListing(r){this.listings.delete(r),this.listings.get(V.dirname(r))?.delete(V.basename(r))}unregisterEntry(r){this.unregisterListing(r);let o=this.entries.get(r);this.entries.delete(r),!(typeof o>"u")&&(this.fileSources.delete(o),this.isSymbolicLink(o)&&this.symlinkCount--)}deleteEntry(r,o){if(this.unregisterEntry(r),this.libzip.delete(this.zip,o)===-1)throw this.makeLibzipError(this.libzip.getError(this.zip))}resolveFilename(r,o,a=!0,n=!0){if(!this.ready)throw ar.EBUSY(`archive closed, ${r}`);let u=V.resolve(Bt.root,o);if(u==="/")return Bt.root;let A=this.entries.get(u);if(a&&A!==void 0)if(this.symlinkCount!==0&&this.isSymbolicLink(A)){let p=this.getFileSource(A).toString();return this.resolveFilename(r,V.resolve(V.dirname(u),p),!0,n)}else return u;for(;;){let p=this.resolveFilename(r,V.dirname(u),!0,n);if(p===void 0)return p;let h=this.listings.has(p),C=this.entries.has(p);if(!h&&!C){if(n===!1)return;throw ar.ENOENT(r)}if(!h)throw ar.ENOTDIR(r);if(u=V.resolve(p,V.basename(u)),!a||this.symlinkCount===0)break;let I=this.libzip.name.locate(this.zip,u.slice(1),0);if(I===-1)break;if(this.isSymbolicLink(I)){let v=this.getFileSource(I).toString();u=V.resolve(V.dirname(u),v)}else break}return u}allocateBuffer(r){Buffer.isBuffer(r)||(r=Buffer.from(r));let o=this.libzip.malloc(r.byteLength);if(!o)throw new Error("Couldn't allocate enough memory");return new Uint8Array(this.libzip.HEAPU8.buffer,o,r.byteLength).set(r),{buffer:o,byteLength:r.byteLength}}allocateUnattachedSource(r){let o=this.libzip.struct.errorS(),{buffer:a,byteLength:n}=this.allocateBuffer(r),u=this.libzip.source.fromUnattachedBuffer(a,n,0,1,o);if(u===0)throw this.libzip.free(o),this.makeLibzipError(o);return u}allocateSource(r){let{buffer:o,byteLength:a}=this.allocateBuffer(r),n=this.libzip.source.fromBuffer(this.zip,o,a,0,1);if(n===0)throw this.libzip.free(o),this.makeLibzipError(this.libzip.getError(this.zip));return n}setFileSource(r,o){let a=Buffer.isBuffer(o)?o:Buffer.from(o),n=V.relative(Bt.root,r),u=this.allocateSource(o);try{let A=this.libzip.file.add(this.zip,n,u,this.libzip.ZIP_FL_OVERWRITE);if(A===-1)throw this.makeLibzipError(this.libzip.getError(this.zip));if(this.level!=="mixed"){let p=this.level===0?this.libzip.ZIP_CM_STORE:this.libzip.ZIP_CM_DEFLATE;if(this.libzip.file.setCompression(this.zip,A,0,p,this.level)===-1)throw this.makeLibzipError(this.libzip.getError(this.zip))}return this.fileSources.set(A,a),A}catch(A){throw this.libzip.source.free(u),A}}isSymbolicLink(r){if(this.symlinkCount===0)return!1;if(this.libzip.file.getExternalAttributes(this.zip,r,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&ta.constants.S_IFMT)===ta.constants.S_IFLNK}getFileSource(r,o={asyncDecompress:!1}){let a=this.fileSources.get(r);if(typeof a<"u")return a;let n=this.libzip.struct.statS();if(this.libzip.statIndex(this.zip,r,0,0,n)===-1)throw this.makeLibzipError(this.libzip.getError(this.zip));let A=this.libzip.struct.statCompSize(n),p=this.libzip.struct.statCompMethod(n),h=this.libzip.malloc(A);try{let C=this.libzip.fopenIndex(this.zip,r,0,this.libzip.ZIP_FL_COMPRESSED);if(C===0)throw this.makeLibzipError(this.libzip.getError(this.zip));try{let I=this.libzip.fread(C,h,A,0);if(I===-1)throw this.makeLibzipError(this.libzip.file.getError(C));if(IA)throw new Error("Overread");let v=this.libzip.HEAPU8.subarray(h,h+A),x=Buffer.from(v);if(p===0)return this.fileSources.set(r,x),x;if(o.asyncDecompress)return new Promise((E,R)=>{oU.default.inflateRaw(x,(L,U)=>{L?R(L):(this.fileSources.set(r,U),E(U))})});{let E=oU.default.inflateRawSync(x);return this.fileSources.set(r,E),E}}finally{this.libzip.fclose(C)}}finally{this.libzip.free(h)}}async fchmodPromise(r,o){return this.chmodPromise(this.fdToPath(r,"fchmod"),o)}fchmodSync(r,o){return this.chmodSync(this.fdToPath(r,"fchmodSync"),o)}async chmodPromise(r,o){return this.chmodSync(r,o)}chmodSync(r,o){if(this.readOnly)throw ar.EROFS(`chmod '${r}'`);o&=493;let a=this.resolveFilename(`chmod '${r}'`,r,!1),n=this.entries.get(a);if(typeof n>"u")throw new Error(`Assertion failed: The entry should have been registered (${a})`);let A=this.getUnixMode(n,ta.constants.S_IFREG|0)&-512|o;if(this.libzip.file.setExternalAttributes(this.zip,n,0,0,this.libzip.ZIP_OPSYS_UNIX,A<<16)===-1)throw this.makeLibzipError(this.libzip.getError(this.zip))}async fchownPromise(r,o,a){return this.chownPromise(this.fdToPath(r,"fchown"),o,a)}fchownSync(r,o,a){return this.chownSync(this.fdToPath(r,"fchownSync"),o,a)}async chownPromise(r,o,a){return this.chownSync(r,o,a)}chownSync(r,o,a){throw new Error("Unimplemented")}async renamePromise(r,o){return this.renameSync(r,o)}renameSync(r,o){throw new Error("Unimplemented")}async copyFilePromise(r,o,a){let{indexSource:n,indexDest:u,resolvedDestP:A}=this.prepareCopyFile(r,o,a),p=await this.getFileSource(n,{asyncDecompress:!0}),h=this.setFileSource(A,p);h!==u&&this.registerEntry(A,h)}copyFileSync(r,o,a=0){let{indexSource:n,indexDest:u,resolvedDestP:A}=this.prepareCopyFile(r,o,a),p=this.getFileSource(n),h=this.setFileSource(A,p);h!==u&&this.registerEntry(A,h)}prepareCopyFile(r,o,a=0){if(this.readOnly)throw ar.EROFS(`copyfile '${r} -> '${o}'`);if((a&ta.constants.COPYFILE_FICLONE_FORCE)!==0)throw ar.ENOSYS("unsupported clone operation",`copyfile '${r}' -> ${o}'`);let n=this.resolveFilename(`copyfile '${r} -> ${o}'`,r),u=this.entries.get(n);if(typeof u>"u")throw ar.EINVAL(`copyfile '${r}' -> '${o}'`);let A=this.resolveFilename(`copyfile '${r}' -> ${o}'`,o),p=this.entries.get(A);if((a&(ta.constants.COPYFILE_EXCL|ta.constants.COPYFILE_FICLONE_FORCE))!==0&&typeof p<"u")throw ar.EEXIST(`copyfile '${r}' -> '${o}'`);return{indexSource:u,resolvedDestP:A,indexDest:p}}async appendFilePromise(r,o,a){if(this.readOnly)throw ar.EROFS(`open '${r}'`);return typeof a>"u"?a={flag:"a"}:typeof a=="string"?a={flag:"a",encoding:a}:typeof a.flag>"u"&&(a={flag:"a",...a}),this.writeFilePromise(r,o,a)}appendFileSync(r,o,a={}){if(this.readOnly)throw ar.EROFS(`open '${r}'`);return typeof a>"u"?a={flag:"a"}:typeof a=="string"?a={flag:"a",encoding:a}:typeof a.flag>"u"&&(a={flag:"a",...a}),this.writeFileSync(r,o,a)}fdToPath(r,o){let a=this.fds.get(r)?.p;if(typeof a>"u")throw ar.EBADF(o);return a}async writeFilePromise(r,o,a){let{encoding:n,mode:u,index:A,resolvedP:p}=this.prepareWriteFile(r,a);A!==void 0&&typeof a=="object"&&a.flag&&a.flag.includes("a")&&(o=Buffer.concat([await this.getFileSource(A,{asyncDecompress:!0}),Buffer.from(o)])),n!==null&&(o=o.toString(n));let h=this.setFileSource(p,o);h!==A&&this.registerEntry(p,h),u!==null&&await this.chmodPromise(p,u)}writeFileSync(r,o,a){let{encoding:n,mode:u,index:A,resolvedP:p}=this.prepareWriteFile(r,a);A!==void 0&&typeof a=="object"&&a.flag&&a.flag.includes("a")&&(o=Buffer.concat([this.getFileSource(A),Buffer.from(o)])),n!==null&&(o=o.toString(n));let h=this.setFileSource(p,o);h!==A&&this.registerEntry(p,h),u!==null&&this.chmodSync(p,u)}prepareWriteFile(r,o){if(typeof r=="number"&&(r=this.fdToPath(r,"read")),this.readOnly)throw ar.EROFS(`open '${r}'`);let a=this.resolveFilename(`open '${r}'`,r);if(this.listings.has(a))throw ar.EISDIR(`open '${r}'`);let n=null,u=null;typeof o=="string"?n=o:typeof o=="object"&&({encoding:n=null,mode:u=null}=o);let A=this.entries.get(a);return{encoding:n,mode:u,resolvedP:a,index:A}}async unlinkPromise(r){return this.unlinkSync(r)}unlinkSync(r){if(this.readOnly)throw ar.EROFS(`unlink '${r}'`);let o=this.resolveFilename(`unlink '${r}'`,r);if(this.listings.has(o))throw ar.EISDIR(`unlink '${r}'`);let a=this.entries.get(o);if(typeof a>"u")throw ar.EINVAL(`unlink '${r}'`);this.deleteEntry(o,a)}async utimesPromise(r,o,a){return this.utimesSync(r,o,a)}utimesSync(r,o,a){if(this.readOnly)throw ar.EROFS(`utimes '${r}'`);let n=this.resolveFilename(`utimes '${r}'`,r);this.utimesImpl(n,a)}async lutimesPromise(r,o,a){return this.lutimesSync(r,o,a)}lutimesSync(r,o,a){if(this.readOnly)throw ar.EROFS(`lutimes '${r}'`);let n=this.resolveFilename(`utimes '${r}'`,r,!1);this.utimesImpl(n,a)}utimesImpl(r,o){this.listings.has(r)&&(this.entries.has(r)||this.hydrateDirectory(r));let a=this.entries.get(r);if(a===void 0)throw new Error("Unreachable");if(this.libzip.file.setMtime(this.zip,a,0,fot(o),0)===-1)throw this.makeLibzipError(this.libzip.getError(this.zip))}async mkdirPromise(r,o){return this.mkdirSync(r,o)}mkdirSync(r,{mode:o=493,recursive:a=!1}={}){if(a)return this.mkdirpSync(r,{chmod:o});if(this.readOnly)throw ar.EROFS(`mkdir '${r}'`);let n=this.resolveFilename(`mkdir '${r}'`,r);if(this.entries.has(n)||this.listings.has(n))throw ar.EEXIST(`mkdir '${r}'`);this.hydrateDirectory(n),this.chmodSync(n,o)}async rmdirPromise(r,o){return this.rmdirSync(r,o)}rmdirSync(r,{recursive:o=!1}={}){if(this.readOnly)throw ar.EROFS(`rmdir '${r}'`);if(o){this.removeSync(r);return}let a=this.resolveFilename(`rmdir '${r}'`,r),n=this.listings.get(a);if(!n)throw ar.ENOTDIR(`rmdir '${r}'`);if(n.size>0)throw ar.ENOTEMPTY(`rmdir '${r}'`);let u=this.entries.get(a);if(typeof u>"u")throw ar.EINVAL(`rmdir '${r}'`);this.deleteEntry(r,u)}hydrateDirectory(r){let o=this.libzip.dir.add(this.zip,V.relative(Bt.root,r));if(o===-1)throw this.makeLibzipError(this.libzip.getError(this.zip));return this.registerListing(r),this.registerEntry(r,o),o}async linkPromise(r,o){return this.linkSync(r,o)}linkSync(r,o){throw ar.EOPNOTSUPP(`link '${r}' -> '${o}'`)}async symlinkPromise(r,o){return this.symlinkSync(r,o)}symlinkSync(r,o){if(this.readOnly)throw ar.EROFS(`symlink '${r}' -> '${o}'`);let a=this.resolveFilename(`symlink '${r}' -> '${o}'`,o);if(this.listings.has(a))throw ar.EISDIR(`symlink '${r}' -> '${o}'`);if(this.entries.has(a))throw ar.EEXIST(`symlink '${r}' -> '${o}'`);let n=this.setFileSource(a,r);if(this.registerEntry(a,n),this.libzip.file.setExternalAttributes(this.zip,n,0,0,this.libzip.ZIP_OPSYS_UNIX,(ta.constants.S_IFLNK|511)<<16)===-1)throw this.makeLibzipError(this.libzip.getError(this.zip));this.symlinkCount+=1}async readFilePromise(r,o){typeof o=="object"&&(o=o?o.encoding:void 0);let a=await this.readFileBuffer(r,{asyncDecompress:!0});return o?a.toString(o):a}readFileSync(r,o){typeof o=="object"&&(o=o?o.encoding:void 0);let a=this.readFileBuffer(r);return o?a.toString(o):a}readFileBuffer(r,o={asyncDecompress:!1}){typeof r=="number"&&(r=this.fdToPath(r,"read"));let a=this.resolveFilename(`open '${r}'`,r);if(!this.entries.has(a)&&!this.listings.has(a))throw ar.ENOENT(`open '${r}'`);if(r[r.length-1]==="/"&&!this.listings.has(a))throw ar.ENOTDIR(`open '${r}'`);if(this.listings.has(a))throw ar.EISDIR("read");let n=this.entries.get(a);if(n===void 0)throw new Error("Unreachable");return this.getFileSource(n,o)}async readdirPromise(r,o){return this.readdirSync(r,o)}readdirSync(r,o){let a=this.resolveFilename(`scandir '${r}'`,r);if(!this.entries.has(a)&&!this.listings.has(a))throw ar.ENOENT(`scandir '${r}'`);let n=this.listings.get(a);if(!n)throw ar.ENOTDIR(`scandir '${r}'`);if(o?.recursive)if(o?.withFileTypes){let u=Array.from(n,A=>Object.assign(this.statImpl("lstat",V.join(r,A)),{name:A,path:Bt.dot}));for(let A of u){if(!A.isDirectory())continue;let p=V.join(A.path,A.name),h=this.listings.get(V.join(a,p));for(let C of h)u.push(Object.assign(this.statImpl("lstat",V.join(r,p,C)),{name:C,path:p}))}return u}else{let u=[...n];for(let A of u){let p=this.listings.get(V.join(a,A));if(!(typeof p>"u"))for(let h of p)u.push(V.join(A,h))}return u}else return o?.withFileTypes?Array.from(n,u=>Object.assign(this.statImpl("lstat",V.join(r,u)),{name:u,path:void 0})):[...n]}async readlinkPromise(r){let o=this.prepareReadlink(r);return(await this.getFileSource(o,{asyncDecompress:!0})).toString()}readlinkSync(r){let o=this.prepareReadlink(r);return this.getFileSource(o).toString()}prepareReadlink(r){let o=this.resolveFilename(`readlink '${r}'`,r,!1);if(!this.entries.has(o)&&!this.listings.has(o))throw ar.ENOENT(`readlink '${r}'`);if(r[r.length-1]==="/"&&!this.listings.has(o))throw ar.ENOTDIR(`open '${r}'`);if(this.listings.has(o))throw ar.EINVAL(`readlink '${r}'`);let a=this.entries.get(o);if(a===void 0)throw new Error("Unreachable");if(!this.isSymbolicLink(a))throw ar.EINVAL(`readlink '${r}'`);return a}async truncatePromise(r,o=0){let a=this.resolveFilename(`open '${r}'`,r),n=this.entries.get(a);if(typeof n>"u")throw ar.EINVAL(`open '${r}'`);let u=await this.getFileSource(n,{asyncDecompress:!0}),A=Buffer.alloc(o,0);return u.copy(A),await this.writeFilePromise(r,A)}truncateSync(r,o=0){let a=this.resolveFilename(`open '${r}'`,r),n=this.entries.get(a);if(typeof n>"u")throw ar.EINVAL(`open '${r}'`);let u=this.getFileSource(n),A=Buffer.alloc(o,0);return u.copy(A),this.writeFileSync(r,A)}async ftruncatePromise(r,o){return this.truncatePromise(this.fdToPath(r,"ftruncate"),o)}ftruncateSync(r,o){return this.truncateSync(this.fdToPath(r,"ftruncateSync"),o)}watch(r,o,a){let n;switch(typeof o){case"function":case"string":case"undefined":n=!0;break;default:({persistent:n=!0}=o);break}if(!n)return{on:()=>{},close:()=>{}};let u=setInterval(()=>{},24*60*60*1e3);return{on:()=>{},close:()=>{clearInterval(u)}}}watchFile(r,o,a){let n=V.resolve(Bt.root,r);return ty(this,n,o,a)}unwatchFile(r,o){let a=V.resolve(Bt.root,r);return Lg(this,a,o)}}});function qle(t,e,r=Buffer.alloc(0),o){let a=new Ji(r),n=I=>I===e||I.startsWith(`${e}/`)?I.slice(0,e.length):null,u=async(I,v)=>()=>a,A=(I,v)=>a,p={...t},h=new Tn(p),C=new Up({baseFs:h,getMountPoint:n,factoryPromise:u,factorySync:A,magicByte:21,maxAge:1/0,typeCheck:o?.typeCheck});return Yw(jle.default,new _p(C)),a}var jle,Gle=Et(()=>{Pt();jle=$e(Be("fs"));aU()});var Yle=Et(()=>{Ule();aU();Gle()});var S1={};Vt(S1,{DEFAULT_COMPRESSION_LEVEL:()=>Hle,LibzipError:()=>Nb,ZipFS:()=>Ji,ZipOpenFS:()=>zl,getArchivePart:()=>iU,getLibzipPromise:()=>hot,getLibzipSync:()=>pot,makeEmptyArchive:()=>Tb,mountMemoryDrive:()=>qle});function pot(){return P1()}async function hot(){return P1()}var Wle,nA=Et(()=>{tU();Wle=$e(Nle());Mle();Yle();Tle(()=>{let t=(0,Wle.default)();return Ole(t)})});var QE,Kle=Et(()=>{Pt();qt();b1();QE=class extends nt{constructor(){super(...arguments);this.cwd=ge.String("--cwd",process.cwd(),{description:"The directory to run the command in"});this.commandName=ge.String();this.args=ge.Proxy()}async execute(){let r=this.args.length>0?`${this.commandName} ${this.args.join(" ")}`:this.commandName;return await FE(r,[],{cwd:ue.toPortablePath(this.cwd),stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr})}};QE.usage={description:"run a command using yarn's portable shell",details:` + This command will run a command using Yarn's portable shell. + + Make sure to escape glob patterns, redirections, and other features that might be expanded by your own shell. + + Note: To escape something from Yarn's shell, you might have to escape it twice, the first time from your own shell. + + Note: Don't use this command in Yarn scripts, as Yarn's shell is automatically used. + + For a list of features, visit: https://github.com/yarnpkg/berry/blob/master/packages/yarnpkg-shell/README.md. + `,examples:[["Run a simple command","$0 echo Hello"],["Run a command with a glob pattern","$0 echo '*.js'"],["Run a command with a redirection","$0 echo Hello World '>' hello.txt"],["Run a command with an escaped glob pattern (The double escape is needed in Unix shells)",`$0 echo '"*.js"'`],["Run a command with a variable (Double quotes are needed in Unix shells, to prevent them from expanding the variable)",'$0 "GREETING=Hello echo $GREETING World"']]}});var al,Vle=Et(()=>{al=class extends Error{constructor(e){super(e),this.name="ShellError"}}});var Mb={};Vt(Mb,{fastGlobOptions:()=>Xle,isBraceExpansion:()=>lU,isGlobPattern:()=>got,match:()=>dot,micromatchOptions:()=>Ob});function got(t){if(!Lb.default.scan(t,Ob).isGlob)return!1;try{Lb.default.parse(t,Ob)}catch{return!1}return!0}function dot(t,{cwd:e,baseFs:r}){return(0,zle.default)(t,{...Xle,cwd:ue.fromPortablePath(e),fs:RD(Jle.default,new _p(r))})}function lU(t){return Lb.default.scan(t,Ob).isBrace}var zle,Jle,Lb,Ob,Xle,Zle=Et(()=>{Pt();zle=$e(TS()),Jle=$e(Be("fs")),Lb=$e(Zo()),Ob={strictBrackets:!0},Xle={onlyDirectories:!1,onlyFiles:!1}});function cU(){}function uU(){for(let t of bd)t.kill()}function rce(t,e,r,o){return a=>{let n=a[0]instanceof iA.Transform?"pipe":a[0],u=a[1]instanceof iA.Transform?"pipe":a[1],A=a[2]instanceof iA.Transform?"pipe":a[2],p=(0,ece.default)(t,e,{...o,stdio:[n,u,A]});return bd.add(p),bd.size===1&&(process.on("SIGINT",cU),process.on("SIGTERM",uU)),a[0]instanceof iA.Transform&&a[0].pipe(p.stdin),a[1]instanceof iA.Transform&&p.stdout.pipe(a[1],{end:!1}),a[2]instanceof iA.Transform&&p.stderr.pipe(a[2],{end:!1}),{stdin:p.stdin,promise:new Promise(h=>{p.on("error",C=>{switch(bd.delete(p),bd.size===0&&(process.off("SIGINT",cU),process.off("SIGTERM",uU)),C.code){case"ENOENT":a[2].write(`command not found: ${t} +`),h(127);break;case"EACCES":a[2].write(`permission denied: ${t} +`),h(128);break;default:a[2].write(`uncaught error: ${C.message} +`),h(1);break}}),p.on("close",C=>{bd.delete(p),bd.size===0&&(process.off("SIGINT",cU),process.off("SIGTERM",uU)),h(C!==null?C:129)})})}}}function nce(t){return e=>{let r=e[0]==="pipe"?new iA.PassThrough:e[0];return{stdin:r,promise:Promise.resolve().then(()=>t({stdin:r,stdout:e[1],stderr:e[2]}))}}}function Ub(t,e){return RE.start(t,e)}function $le(t,e=null){let r=new iA.PassThrough,o=new tce.StringDecoder,a="";return r.on("data",n=>{let u=o.write(n),A;do if(A=u.indexOf(` +`),A!==-1){let p=a+u.substring(0,A);u=u.substring(A+1),a="",t(e!==null?`${e} ${p}`:p)}while(A!==-1);a+=u}),r.on("end",()=>{let n=o.end();n!==""&&t(e!==null?`${e} ${n}`:n)}),r}function ice(t,{prefix:e}){return{stdout:$le(r=>t.stdout.write(`${r} +`),t.stdout.isTTY?e:null),stderr:$le(r=>t.stderr.write(`${r} +`),t.stderr.isTTY?e:null)}}var ece,iA,tce,bd,Jl,AU,RE,fU=Et(()=>{ece=$e(aT()),iA=Be("stream"),tce=Be("string_decoder"),bd=new Set;Jl=class{constructor(e){this.stream=e}close(){}get(){return this.stream}},AU=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}},RE=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:o,stderr:a}){let n=new RE(null,e);return n.stdin=r,n.stdout=o,n.stderr=a,n}pipeTo(e,r=1){let o=new RE(this,e),a=new AU;return o.pipe=a,o.stdout=this.stdout,o.stderr=this.stderr,(r&1)===1?this.stdout=a:this.ancestor!==null&&(this.stderr=this.ancestor.stdout),(r&2)===2?this.stderr=a:this.ancestor!==null&&(this.stderr=this.ancestor.stderr),o}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 o;if(this.stderr===null)throw new Error("Assertion failed: No error stream registered");o=this.stderr,e[2]=o.get();let a=this.implementation(e);return this.pipe&&this.pipe.attach(a.stdin),await a.promise.then(n=>(r.close(),o.close(),n))}async run(){let e=[];for(let o=this;o;o=o.ancestor)e.push(o.exec());return(await Promise.all(e))[0]}}});var F1={};Vt(F1,{EntryCommand:()=>QE,ShellError:()=>al,execute:()=>FE,globUtils:()=>Mb});function sce(t,e,r){let o=new ll.PassThrough({autoDestroy:!0});switch(t){case 0:(e&1)===1&&r.stdin.pipe(o,{end:!1}),(e&2)===2&&r.stdin instanceof ll.Writable&&o.pipe(r.stdin,{end:!1});break;case 1:(e&1)===1&&r.stdout.pipe(o,{end:!1}),(e&2)===2&&o.pipe(r.stdout,{end:!1});break;case 2:(e&1)===1&&r.stderr.pipe(o,{end:!1}),(e&2)===2&&o.pipe(r.stderr,{end:!1});break;default:throw new al(`Bad file descriptor: "${t}"`)}return o}function Hb(t,e={}){let r={...t,...e};return r.environment={...t.environment,...e.environment},r.variables={...t.variables,...e.variables},r}async function yot(t,e,r){let o=[],a=new ll.PassThrough;return a.on("data",n=>o.push(n)),await jb(t,e,Hb(r,{stdout:a})),Buffer.concat(o).toString().replace(/[\r\n]+$/,"")}async function oce(t,e,r){let o=t.map(async n=>{let u=await xd(n.args,e,r);return{name:n.name,value:u.join(" ")}});return(await Promise.all(o)).reduce((n,u)=>(n[u.name]=u.value,n),{})}function _b(t){return t.match(/[^ \r\n\t]+/g)||[]}async function fce(t,e,r,o,a=o){switch(t.name){case"$":o(String(process.pid));break;case"#":o(String(e.args.length));break;case"@":if(t.quoted)for(let n of e.args)a(n);else for(let n of e.args){let u=_b(n);for(let A=0;A=0&&n"u"&&(t.defaultValue?u=(await xd(t.defaultValue,e,r)).join(" "):t.alternativeValue&&(u="")),typeof u>"u")throw A?new al(`Unbound argument #${n}`):new al(`Unbound variable "${t.name}"`);if(t.quoted)o(u);else{let p=_b(u);for(let C=0;Co.push(n));let a=Number(o.join(" "));return Number.isNaN(a)?x1({type:"variable",name:o.join(" ")},e,r):x1({type:"number",value:a},e,r)}else return Eot[t.type](await x1(t.left,e,r),await x1(t.right,e,r))}async function xd(t,e,r){let o=new Map,a=[],n=[],u=C=>{n.push(C)},A=()=>{n.length>0&&a.push(n.join("")),n=[]},p=C=>{u(C),A()},h=(C,I,v)=>{let x=JSON.stringify({type:C,fd:I}),E=o.get(x);typeof E>"u"&&o.set(x,E=[]),E.push(v)};for(let C of t){let I=!1;switch(C.type){case"redirection":{let v=await xd(C.args,e,r);for(let x of v)h(C.subtype,C.fd,x)}break;case"argument":for(let v of C.segments)switch(v.type){case"text":u(v.text);break;case"glob":u(v.pattern),I=!0;break;case"shell":{let x=await yot(v.shell,e,r);if(v.quoted)u(x);else{let E=_b(x);for(let R=0;R"u")throw new Error("Assertion failed: Expected a glob pattern to have been set");let x=await e.glob.match(v,{cwd:r.cwd,baseFs:e.baseFs});if(x.length===0){let E=lU(v)?". Note: Brace expansion of arbitrary strings isn't currently supported. For more details, please read this issue: https://github.com/yarnpkg/berry/issues/22":"";throw new al(`No matches found: "${v}"${E}`)}for(let E of x.sort())p(E)}}if(o.size>0){let C=[];for(let[I,v]of o.entries())C.splice(C.length,0,I,String(v.length),...v);a.splice(0,0,"__ysh_set_redirects",...C,"--")}return a}function k1(t,e,r){e.builtins.has(t[0])||(t=["command",...t]);let o=ue.fromPortablePath(r.cwd),a=r.environment;typeof a.PWD<"u"&&(a={...a,PWD:o});let[n,...u]=t;if(n==="command")return rce(u[0],u.slice(1),e,{cwd:o,env:a});let A=e.builtins.get(n);if(typeof A>"u")throw new Error(`Assertion failed: A builtin should exist for "${n}"`);return nce(async({stdin:p,stdout:h,stderr:C})=>{let{stdin:I,stdout:v,stderr:x}=r;r.stdin=p,r.stdout=h,r.stderr=C;try{return await A(u,e,r)}finally{r.stdin=I,r.stdout=v,r.stderr=x}})}function Cot(t,e,r){return o=>{let a=new ll.PassThrough,n=jb(t,e,Hb(r,{stdin:a}));return{stdin:a,promise:n}}}function wot(t,e,r){return o=>{let a=new ll.PassThrough,n=jb(t,e,r);return{stdin:a,promise:n}}}function ace(t,e,r,o){if(e.length===0)return t;{let a;do a=String(Math.random());while(Object.hasOwn(o.procedures,a));return o.procedures={...o.procedures},o.procedures[a]=t,k1([...e,"__ysh_run_procedure",a],r,o)}}async function lce(t,e,r){let o=t,a=null,n=null;for(;o;){let u=o.then?{...r}:r,A;switch(o.type){case"command":{let p=await xd(o.args,e,r),h=await oce(o.envs,e,r);A=o.envs.length?k1(p,e,Hb(u,{environment:h})):k1(p,e,u)}break;case"subshell":{let p=await xd(o.args,e,r),h=Cot(o.subshell,e,u);A=ace(h,p,e,u)}break;case"group":{let p=await xd(o.args,e,r),h=wot(o.group,e,u);A=ace(h,p,e,u)}break;case"envs":{let p=await oce(o.envs,e,r);u.environment={...u.environment,...p},A=k1(["true"],e,u)}break}if(typeof A>"u")throw new Error("Assertion failed: An action should have been generated");if(a===null)n=Ub(A,{stdin:new Jl(u.stdin),stdout:new Jl(u.stdout),stderr:new Jl(u.stderr)});else{if(n===null)throw new Error("Assertion failed: The execution pipeline should have been setup");switch(a){case"|":n=n.pipeTo(A,1);break;case"|&":n=n.pipeTo(A,3);break}}o.then?(a=o.then.type,o=o.then.chain):o=null}if(n===null)throw new Error("Assertion failed: The execution pipeline should have been setup");return await n.run()}async function Iot(t,e,r,{background:o=!1}={}){function a(n){let u=["#2E86AB","#A23B72","#F18F01","#C73E1D","#CCE2A3"],A=u[n%u.length];return cce.default.hex(A)}if(o){let n=r.nextBackgroundJobIndex++,u=a(n),A=`[${n}]`,p=u(A),{stdout:h,stderr:C}=ice(r,{prefix:p});return r.backgroundJobs.push(lce(t,e,Hb(r,{stdout:h,stderr:C})).catch(I=>C.write(`${I.message} +`)).finally(()=>{r.stdout.isTTY&&r.stdout.write(`Job ${p}, '${u(ly(t))}' has ended +`)})),0}return await lce(t,e,r)}async function Bot(t,e,r,{background:o=!1}={}){let a,n=A=>{a=A,r.variables["?"]=String(A)},u=async A=>{try{return await Iot(A.chain,e,r,{background:o&&typeof A.then>"u"})}catch(p){if(!(p instanceof al))throw p;return r.stderr.write(`${p.message} +`),1}};for(n(await u(t));t.then;){if(r.exitCode!==null)return r.exitCode;switch(t.then.type){case"&&":a===0&&n(await u(t.then.line));break;case"||":a!==0&&n(await u(t.then.line));break;default:throw new Error(`Assertion failed: Unsupported command type: "${t.then.type}"`)}t=t.then.line}return a}async function jb(t,e,r){let o=r.backgroundJobs;r.backgroundJobs=[];let a=0;for(let{command:n,type:u}of t){if(a=await Bot(n,e,r,{background:u==="&"}),r.exitCode!==null)return r.exitCode;r.variables["?"]=String(a)}return await Promise.all(r.backgroundJobs),r.backgroundJobs=o,a}function pce(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=>Q1(e))||"alternativeValue"in t&&!!t.alternativeValue&&t.alternativeValue.some(e=>Q1(e));case"arithmetic":return pU(t.arithmetic);case"shell":return hU(t.shell);default:return!1}}function Q1(t){switch(t.type){case"redirection":return t.args.some(e=>Q1(e));case"argument":return t.segments.some(e=>pce(e));default:throw new Error(`Assertion failed: Unsupported argument type: "${t.type}"`)}}function pU(t){switch(t.type){case"variable":return pce(t);case"number":return!1;default:return pU(t.left)||pU(t.right)}}function hU(t){return t.some(({command:e})=>{for(;e;){let r=e.chain;for(;r;){let o;switch(r.type){case"subshell":o=hU(r.subshell);break;case"command":o=r.envs.some(a=>a.args.some(n=>Q1(n)))||r.args.some(a=>Q1(a));break}if(o)return!0;if(!r.then)break;r=r.then.chain}if(!e.then)break;e=e.then.line}return!1})}async function FE(t,e=[],{baseFs:r=new Tn,builtins:o={},cwd:a=ue.toPortablePath(process.cwd()),env:n=process.env,stdin:u=process.stdin,stdout:A=process.stdout,stderr:p=process.stderr,variables:h={},glob:C=Mb}={}){let I={};for(let[E,R]of Object.entries(n))typeof R<"u"&&(I[E]=R);let v=new Map(mot);for(let[E,R]of Object.entries(o))v.set(E,R);u===null&&(u=new ll.PassThrough,u.end());let x=LD(t,C);if(!hU(x)&&x.length>0&&e.length>0){let{command:E}=x[x.length-1];for(;E.then;)E=E.then.line;let R=E.chain;for(;R.then;)R=R.then.chain;R.type==="command"&&(R.args=R.args.concat(e.map(L=>({type:"argument",segments:[{type:"text",text:L}]}))))}return await jb(x,{args:e,baseFs:r,builtins:v,initialStdin:u,initialStdout:A,initialStderr:p,glob:C},{cwd:a,environment:I,exitCode:null,procedures:{},stdin:u,stdout:A,stderr:p,variables:Object.assign({},h,{["?"]:0}),nextBackgroundJobIndex:1,backgroundJobs:[]})}var cce,uce,ll,Ace,mot,Eot,b1=Et(()=>{Pt();Nl();cce=$e(vN()),uce=Be("os"),ll=Be("stream"),Ace=Be("timers/promises");Kle();Vle();Zle();fU();fU();mot=new Map([["cd",async([t=(0,uce.homedir)(),...e],r,o)=>{let a=V.resolve(o.cwd,ue.toPortablePath(t));if(!(await r.baseFs.statPromise(a).catch(u=>{throw u.code==="ENOENT"?new al(`cd: no such file or directory: ${t}`):u})).isDirectory())throw new al(`cd: not a directory: ${t}`);return o.cwd=a,0}],["pwd",async(t,e,r)=>(r.stdout.write(`${ue.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,o)=>o.exitCode=parseInt(t??o.variables["?"],10)],["echo",async(t,e,r)=>(r.stdout.write(`${t.join(" ")} +`),0)],["sleep",async([t],e,r)=>{if(typeof t>"u")throw new al("sleep: missing operand");let o=Number(t);if(Number.isNaN(o))throw new al(`sleep: invalid time interval '${t}'`);return await(0,Ace.setTimeout)(1e3*o,0)}],["__ysh_run_procedure",async(t,e,r)=>{let o=r.procedures[t[0]];return await Ub(o,{stdin:new Jl(r.stdin),stdout:new Jl(r.stdout),stderr:new Jl(r.stderr)}).run()}],["__ysh_set_redirects",async(t,e,r)=>{let o=r.stdin,a=r.stdout,n=r.stderr,u=[],A=[],p=[],h=0;for(;t[h]!=="--";){let I=t[h++],{type:v,fd:x}=JSON.parse(I),E=z=>{switch(x){case null:case 0:u.push(z);break;default:throw new Error(`Unsupported file descriptor: "${x}"`)}},R=z=>{switch(x){case null:case 1:A.push(z);break;case 2:p.push(z);break;default:throw new Error(`Unsupported file descriptor: "${x}"`)}},L=Number(t[h++]),U=h+L;for(let z=h;ze.baseFs.createReadStream(V.resolve(r.cwd,ue.toPortablePath(t[z]))));break;case"<<<":E(()=>{let te=new ll.PassThrough;return process.nextTick(()=>{te.write(`${t[z]} +`),te.end()}),te});break;case"<&":E(()=>sce(Number(t[z]),1,r));break;case">":case">>":{let te=V.resolve(r.cwd,ue.toPortablePath(t[z]));R(te==="/dev/null"?new ll.Writable({autoDestroy:!0,emitClose:!0,write(le,he,Ae){setImmediate(Ae)}}):e.baseFs.createWriteStream(te,v===">>"?{flags:"a"}:void 0))}break;case">&":R(sce(Number(t[z]),2,r));break;default:throw new Error(`Assertion failed: Unsupported redirection type: "${v}"`)}}if(u.length>0){let I=new ll.PassThrough;o=I;let v=x=>{if(x===u.length)I.end();else{let E=u[x]();E.pipe(I,{end:!1}),E.on("end",()=>{v(x+1)})}};v(0)}if(A.length>0){let I=new ll.PassThrough;a=I;for(let v of A)I.pipe(v)}if(p.length>0){let I=new ll.PassThrough;n=I;for(let v of p)I.pipe(v)}let C=await Ub(k1(t.slice(h+1),e,r),{stdin:new Jl(o),stdout:new Jl(a),stderr:new Jl(n)}).run();return await Promise.all(A.map(I=>new Promise((v,x)=>{I.on("error",E=>{x(E)}),I.on("close",()=>{v()}),I.end()}))),await Promise.all(p.map(I=>new Promise((v,x)=>{I.on("error",E=>{x(E)}),I.on("close",()=>{v()}),I.end()}))),C}]]);Eot={addition:(t,e)=>t+e,subtraction:(t,e)=>t-e,multiplication:(t,e)=>t*e,division:(t,e)=>Math.trunc(t/e)}});var qb=_((e4t,hce)=>{function vot(t,e){for(var r=-1,o=t==null?0:t.length,a=Array(o);++r{var gce=Ad(),Dot=qb(),Pot=Hl(),Sot=AE(),bot=1/0,dce=gce?gce.prototype:void 0,mce=dce?dce.toString:void 0;function yce(t){if(typeof t=="string")return t;if(Pot(t))return Dot(t,yce)+"";if(Sot(t))return mce?mce.call(t):"";var e=t+"";return e=="0"&&1/t==-bot?"-0":e}Ece.exports=yce});var R1=_((r4t,wce)=>{var xot=Cce();function kot(t){return t==null?"":xot(t)}wce.exports=kot});var gU=_((n4t,Ice)=>{function Qot(t,e,r){var o=-1,a=t.length;e<0&&(e=-e>a?0:a+e),r=r>a?a:r,r<0&&(r+=a),a=e>r?0:r-e>>>0,e>>>=0;for(var n=Array(a);++o{var Fot=gU();function Rot(t,e,r){var o=t.length;return r=r===void 0?o:r,!e&&r>=o?t:Fot(t,e,r)}Bce.exports=Rot});var dU=_((s4t,Dce)=>{var Tot="\\ud800-\\udfff",Not="\\u0300-\\u036f",Lot="\\ufe20-\\ufe2f",Oot="\\u20d0-\\u20ff",Mot=Not+Lot+Oot,Uot="\\ufe0e\\ufe0f",_ot="\\u200d",Hot=RegExp("["+_ot+Tot+Mot+Uot+"]");function jot(t){return Hot.test(t)}Dce.exports=jot});var Sce=_((o4t,Pce)=>{function qot(t){return t.split("")}Pce.exports=qot});var Nce=_((a4t,Tce)=>{var bce="\\ud800-\\udfff",Got="\\u0300-\\u036f",Yot="\\ufe20-\\ufe2f",Wot="\\u20d0-\\u20ff",Kot=Got+Yot+Wot,Vot="\\ufe0e\\ufe0f",zot="["+bce+"]",mU="["+Kot+"]",yU="\\ud83c[\\udffb-\\udfff]",Jot="(?:"+mU+"|"+yU+")",xce="[^"+bce+"]",kce="(?:\\ud83c[\\udde6-\\uddff]){2}",Qce="[\\ud800-\\udbff][\\udc00-\\udfff]",Xot="\\u200d",Fce=Jot+"?",Rce="["+Vot+"]?",Zot="(?:"+Xot+"(?:"+[xce,kce,Qce].join("|")+")"+Rce+Fce+")*",$ot=Rce+Fce+Zot,eat="(?:"+[xce+mU+"?",mU,kce,Qce,zot].join("|")+")",tat=RegExp(yU+"(?="+yU+")|"+eat+$ot,"g");function rat(t){return t.match(tat)||[]}Tce.exports=rat});var Oce=_((l4t,Lce)=>{var nat=Sce(),iat=dU(),sat=Nce();function oat(t){return iat(t)?sat(t):nat(t)}Lce.exports=oat});var Uce=_((c4t,Mce)=>{var aat=vce(),lat=dU(),cat=Oce(),uat=R1();function Aat(t){return function(e){e=uat(e);var r=lat(e)?cat(e):void 0,o=r?r[0]:e.charAt(0),a=r?aat(r,1).join(""):e.slice(1);return o[t]()+a}}Mce.exports=Aat});var Hce=_((u4t,_ce)=>{var fat=Uce(),pat=fat("toUpperCase");_ce.exports=pat});var EU=_((A4t,jce)=>{var hat=R1(),gat=Hce();function dat(t){return gat(hat(t).toLowerCase())}jce.exports=dat});var qce=_((f4t,Gb)=>{function mat(){var t=0,e=1,r=2,o=3,a=4,n=5,u=6,A=7,p=8,h=9,C=10,I=11,v=12,x=13,E=14,R=15,L=16,U=17,z=0,te=1,le=2,he=3,Ae=4;function ye(g,Ee){return 55296<=g.charCodeAt(Ee)&&g.charCodeAt(Ee)<=56319&&56320<=g.charCodeAt(Ee+1)&&g.charCodeAt(Ee+1)<=57343}function ae(g,Ee){Ee===void 0&&(Ee=0);var De=g.charCodeAt(Ee);if(55296<=De&&De<=56319&&Ee=1){var ce=g.charCodeAt(Ee-1),ne=De;return 55296<=ce&&ce<=56319?(ce-55296)*1024+(ne-56320)+65536:ne}return De}function Ie(g,Ee,De){var ce=[g].concat(Ee).concat([De]),ne=ce[ce.length-2],ee=De,we=ce.lastIndexOf(E);if(we>1&&ce.slice(1,we).every(function(H){return H==o})&&[o,x,U].indexOf(g)==-1)return le;var xe=ce.lastIndexOf(a);if(xe>0&&ce.slice(1,xe).every(function(H){return H==a})&&[v,a].indexOf(ne)==-1)return ce.filter(function(H){return H==a}).length%2==1?he:Ae;if(ne==t&&ee==e)return z;if(ne==r||ne==t||ne==e)return ee==E&&Ee.every(function(H){return H==o})?le:te;if(ee==r||ee==t||ee==e)return te;if(ne==u&&(ee==u||ee==A||ee==h||ee==C))return z;if((ne==h||ne==A)&&(ee==A||ee==p))return z;if((ne==C||ne==p)&&ee==p)return z;if(ee==o||ee==R)return z;if(ee==n)return z;if(ne==v)return z;var ht=ce.indexOf(o)!=-1?ce.lastIndexOf(o)-1:ce.length-2;return[x,U].indexOf(ce[ht])!=-1&&ce.slice(ht+1,-1).every(function(H){return H==o})&&ee==E||ne==R&&[L,U].indexOf(ee)!=-1?z:Ee.indexOf(a)!=-1?le:ne==a&&ee==a?z:te}this.nextBreak=function(g,Ee){if(Ee===void 0&&(Ee=0),Ee<0)return 0;if(Ee>=g.length-1)return g.length;for(var De=Fe(ae(g,Ee)),ce=[],ne=Ee+1;ne{var yat=/^(.*?)(\x1b\[[^m]+m|\x1b\]8;;.*?(\x1b\\|\u0007))/,Yb;function Eat(){if(Yb)return Yb;if(typeof Intl.Segmenter<"u"){let t=new Intl.Segmenter("en",{granularity:"grapheme"});return Yb=e=>Array.from(t.segment(e),({segment:r})=>r)}else{let t=qce(),e=new t;return Yb=r=>e.splitGraphemes(r)}}Gce.exports=(t,e=0,r=t.length)=>{if(e<0||r<0)throw new RangeError("Negative indices aren't supported by this implementation");let o=r-e,a="",n=0,u=0;for(;t.length>0;){let A=t.match(yat)||[t,t,void 0],p=Eat()(A[1]),h=Math.min(e-n,p.length);p=p.slice(h);let C=Math.min(o-u,p.length);a+=p.slice(0,C).join(""),n+=h,u+=C,typeof A[2]<"u"&&(a+=A[2]),t=t.slice(A[0].length)}return a}});var tn,T1=Et(()=>{tn=process.env.YARN_IS_TEST_ENV?"0.0.0":"4.0.1"});function Xce(t,{configuration:e,json:r}){if(!e.get("enableMessageNames"))return"";let a=Wu(t===null?0:t);return!r&&t===null?Mt(e,a,"grey"):a}function CU(t,{configuration:e,json:r}){let o=Xce(t,{configuration:e,json:r});if(!o||t===null||t===0)return o;let a=wr[t],n=`https://yarnpkg.com/advanced/error-codes#${o}---${a}`.toLowerCase();return Jy(e,o,n)}async function TE({configuration:t,stdout:e,forceError:r},o){let a=await Nt.start({configuration:t,stdout:e,includeFooter:!1},async n=>{let u=!1,A=!1;for(let p of o)typeof p.option<"u"&&(p.error||r?(A=!0,n.reportError(50,p.message)):(u=!0,n.reportWarning(50,p.message)),p.callback?.());u&&!A&&n.reportSeparator()});return a.hasErrors()?a.exitCode():null}var zce,Wb,Cat,Wce,Kce,uh,Jce,Vce,wat,Iat,Kb,Bat,Nt,N1=Et(()=>{zce=$e(Yce()),Wb=$e($g());pP();Yl();T1();ql();Cat="\xB7",Wce=["\u280B","\u2819","\u2839","\u2838","\u283C","\u2834","\u2826","\u2827","\u2807","\u280F"],Kce=80,uh=Wb.default.GITHUB_ACTIONS?{start:t=>`::group::${t} +`,end:t=>`::endgroup:: +`}:Wb.default.TRAVIS?{start:t=>`travis_fold:start:${t} +`,end:t=>`travis_fold:end:${t} +`}:Wb.default.GITLAB?{start:t=>`section_start:${Math.floor(Date.now()/1e3)}:${t.toLowerCase().replace(/\W+/g,"_")}[collapsed=true]\r\x1B[0K${t} +`,end:t=>`section_end:${Math.floor(Date.now()/1e3)}:${t.toLowerCase().replace(/\W+/g,"_")}\r\x1B[0K`}:null,Jce=uh!==null,Vce=new Date,wat=["iTerm.app","Apple_Terminal","WarpTerminal","vscode"].includes(process.env.TERM_PROGRAM)||!!process.env.WT_SESSION,Iat=t=>t,Kb=Iat({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}}),Bat=wat&&Object.keys(Kb).find(t=>{let e=Kb[t];return!(e.date&&(e.date[0]!==Vce.getDate()||e.date[1]!==Vce.getMonth()+1))})||"default";Nt=class extends Xs{constructor({configuration:r,stdout:o,json:a=!1,forceSectionAlignment:n=!1,includeNames:u=!0,includePrefix:A=!0,includeFooter:p=!0,includeLogs:h=!a,includeInfos:C=h,includeWarnings:I=h}){super();this.uncommitted=new Set;this.warningCount=0;this.errorCount=0;this.timerFooter=[];this.startTime=Date.now();this.indent=0;this.level=0;this.progress=new Map;this.progressTime=0;this.progressFrame=0;this.progressTimeout=null;this.progressStyle=null;this.progressMaxScaledSize=null;if(zI(this,{configuration:r}),this.configuration=r,this.forceSectionAlignment=n,this.includeNames=u,this.includePrefix=A,this.includeFooter=p,this.includeInfos=C,this.includeWarnings=I,this.json=a,this.stdout=o,r.get("enableProgressBars")&&!a&&o.isTTY&&o.columns>22){let v=r.get("progressBarStyle")||Bat;if(!Object.hasOwn(Kb,v))throw new Error("Assertion failed: Invalid progress bar style");this.progressStyle=Kb[v];let x=Math.min(this.getRecommendedLength(),80);this.progressMaxScaledSize=Math.floor(this.progressStyle.size*x/80)}}static async start(r,o){let a=new this(r),n=process.emitWarning;process.emitWarning=(u,A)=>{if(typeof u!="string"){let h=u;u=h.message,A=A??h.name}let p=typeof A<"u"?`${A}: ${u}`:u;a.reportWarning(0,p)},r.includeVersion&&a.reportInfo(0,dd(r.configuration,`Yarn ${tn}`,2));try{await o(a)}catch(u){a.reportExceptionOnce(u)}finally{await a.finalize(),process.emitWarning=n}return a}hasErrors(){return this.errorCount>0}exitCode(){return this.hasErrors()?1:0}getRecommendedLength(){let o=this.progressStyle!==null?this.stdout.columns-1:super.getRecommendedLength();return Math.max(40,o-12-this.indent*2)}startSectionSync({reportHeader:r,reportFooter:o,skipIfEmpty:a},n){let u={committed:!1,action:()=>{r?.()}};a?this.uncommitted.add(u):(u.action(),u.committed=!0);let A=Date.now();try{return n()}catch(p){throw this.reportExceptionOnce(p),p}finally{let p=Date.now();this.uncommitted.delete(u),u.committed&&o?.(p-A)}}async startSectionPromise({reportHeader:r,reportFooter:o,skipIfEmpty:a},n){let u={committed:!1,action:()=>{r?.()}};a?this.uncommitted.add(u):(u.action(),u.committed=!0);let A=Date.now();try{return await n()}catch(p){throw this.reportExceptionOnce(p),p}finally{let p=Date.now();this.uncommitted.delete(u),u.committed&&o?.(p-A)}}startTimerImpl(r,o,a){return{cb:typeof o=="function"?o:a,reportHeader:()=>{this.level+=1,this.reportInfo(null,`\u250C ${r}`),this.indent+=1,uh!==null&&!this.json&&this.includeInfos&&this.stdout.write(uh.start(r))},reportFooter:A=>{if(this.indent-=1,uh!==null&&!this.json&&this.includeInfos){this.stdout.write(uh.end(r));for(let p of this.timerFooter)p()}this.configuration.get("enableTimers")&&A>200?this.reportInfo(null,`\u2514 Completed in ${Mt(this.configuration,A,yt.DURATION)}`):this.reportInfo(null,"\u2514 Completed"),this.level-=1},skipIfEmpty:(typeof o=="function"?{}:o).skipIfEmpty}}startTimerSync(r,o,a){let{cb:n,...u}=this.startTimerImpl(r,o,a);return this.startSectionSync(u,n)}async startTimerPromise(r,o,a){let{cb:n,...u}=this.startTimerImpl(r,o,a);return this.startSectionPromise(u,n)}reportSeparator(){this.indent===0?this.writeLine(""):this.reportInfo(null,"")}reportInfo(r,o){if(!this.includeInfos)return;this.commit();let a=this.formatNameWithHyperlink(r),n=a?`${a}: `:"",u=`${this.formatPrefix(n,"blueBright")}${o}`;this.json?this.reportJson({type:"info",name:r,displayName:this.formatName(r),indent:this.formatIndent(),data:o}):this.writeLine(u)}reportWarning(r,o){if(this.warningCount+=1,!this.includeWarnings)return;this.commit();let a=this.formatNameWithHyperlink(r),n=a?`${a}: `:"";this.json?this.reportJson({type:"warning",name:r,displayName:this.formatName(r),indent:this.formatIndent(),data:o}):this.writeLine(`${this.formatPrefix(n,"yellowBright")}${o}`)}reportError(r,o){this.errorCount+=1,this.timerFooter.push(()=>this.reportErrorImpl(r,o)),this.reportErrorImpl(r,o)}reportErrorImpl(r,o){this.commit();let a=this.formatNameWithHyperlink(r),n=a?`${a}: `:"";this.json?this.reportJson({type:"error",name:r,displayName:this.formatName(r),indent:this.formatIndent(),data:o}):this.writeLine(`${this.formatPrefix(n,"redBright")}${o}`,{truncate:!1})}reportFold(r,o){if(!uh)return;let a=`${uh.start(r)}${o}${uh.end(r)}`;this.timerFooter.push(()=>this.stdout.write(a))}reportProgress(r){if(this.progressStyle===null)return{...Promise.resolve(),stop:()=>{}};if(r.hasProgress&&r.hasTitle)throw new Error("Unimplemented: Progress bars can't have both progress and titles.");let o=!1,a=Promise.resolve().then(async()=>{let u={progress:r.hasProgress?0:void 0,title:r.hasTitle?"":void 0};this.progress.set(r,{definition:u,lastScaledSize:r.hasProgress?-1:void 0,lastTitle:void 0}),this.refreshProgress({delta:-1});for await(let{progress:A,title:p}of r)o||u.progress===A&&u.title===p||(u.progress=A,u.title=p,this.refreshProgress());n()}),n=()=>{o||(o=!0,this.progress.delete(r),this.refreshProgress({delta:1}))};return{...a,stop:n}}reportJson(r){this.json&&this.writeLine(`${JSON.stringify(r)}`)}async finalize(){if(!this.includeFooter)return;let r="";this.errorCount>0?r="Failed with errors":this.warningCount>0?r="Done with warnings":r="Done";let o=Mt(this.configuration,Date.now()-this.startTime,yt.DURATION),a=this.configuration.get("enableTimers")?`${r} in ${o}`:r;this.errorCount>0?this.reportError(0,a):this.warningCount>0?this.reportWarning(0,a):this.reportInfo(0,a)}writeLine(r,{truncate:o}={}){this.clearProgress({clear:!0}),this.stdout.write(`${this.truncate(r,{truncate:o})} +`),this.writeProgress()}writeLines(r,{truncate:o}={}){this.clearProgress({delta:r.length});for(let a of r)this.stdout.write(`${this.truncate(a,{truncate:o})} +`);this.writeProgress()}commit(){let r=this.uncommitted;this.uncommitted=new Set;for(let o of r)o.committed=!0,o.action()}clearProgress({delta:r=0,clear:o=!1}){this.progressStyle!==null&&this.progress.size+r>0&&(this.stdout.write(`\x1B[${this.progress.size+r}A`),(r>0||o)&&this.stdout.write("\x1B[0J"))}writeProgress(){if(this.progressStyle===null||(this.progressTimeout!==null&&clearTimeout(this.progressTimeout),this.progressTimeout=null,this.progress.size===0))return;let r=Date.now();r-this.progressTime>Kce&&(this.progressFrame=(this.progressFrame+1)%Wce.length,this.progressTime=r);let o=Wce[this.progressFrame];for(let a of this.progress.values()){let n="";if(typeof a.lastScaledSize<"u"){let h=this.progressStyle.chars[0].repeat(a.lastScaledSize),C=this.progressStyle.chars[1].repeat(this.progressMaxScaledSize-a.lastScaledSize);n=` ${h}${C}`}let u=this.formatName(null),A=u?`${u}: `:"",p=a.definition.title?` ${a.definition.title}`:"";this.stdout.write(`${Mt(this.configuration,"\u27A4","blueBright")} ${A}${o}${n}${p} +`)}this.progressTimeout=setTimeout(()=>{this.refreshProgress({force:!0})},Kce)}refreshProgress({delta:r=0,force:o=!1}={}){let a=!1,n=!1;if(o||this.progress.size===0)a=!0;else for(let u of this.progress.values()){let A=typeof u.definition.progress<"u"?Math.trunc(this.progressMaxScaledSize*u.definition.progress):void 0,p=u.lastScaledSize;u.lastScaledSize=A;let h=u.lastTitle;if(u.lastTitle=u.definition.title,A!==p||(n=h!==u.definition.title)){a=!0;break}}a&&(this.clearProgress({delta:r,clear:n}),this.writeProgress())}truncate(r,{truncate:o}={}){return this.progressStyle===null&&(o=!1),typeof o>"u"&&(o=this.configuration.get("preferTruncatedLines")),o&&(r=(0,zce.default)(r,0,this.stdout.columns-1)),r}formatName(r){return this.includeNames?Xce(r,{configuration:this.configuration,json:this.json}):""}formatPrefix(r,o){return this.includePrefix?`${Mt(this.configuration,"\u27A4",o)} ${r}${this.formatIndent()}`:""}formatNameWithHyperlink(r){return this.includeNames?CU(r,{configuration:this.configuration,json:this.json}):""}formatIndent(){return this.level>0||!this.forceSectionAlignment?"\u2502 ".repeat(this.indent):`${Cat} `}}});var un={};Vt(un,{PackageManager:()=>eue,detectPackageManager:()=>tue,executePackageAccessibleBinary:()=>oue,executePackageScript:()=>Vb,executePackageShellcode:()=>wU,executeWorkspaceAccessibleBinary:()=>kat,executeWorkspaceLifecycleScript:()=>iue,executeWorkspaceScript:()=>nue,getPackageAccessibleBinaries:()=>zb,getWorkspaceAccessibleBinaries:()=>sue,hasPackageScript:()=>Sat,hasWorkspaceScript:()=>IU,isNodeScript:()=>BU,makeScriptEnv:()=>L1,maybeExecuteWorkspaceLifecycleScript:()=>xat,prepareExternalProject:()=>Pat});async function Ah(t,e,r,o=[]){if(process.platform==="win32"){let a=`@goto #_undefined_# 2>NUL || @title %COMSPEC% & @setlocal & @"${r}" ${o.map(n=>`"${n.replace('"','""')}"`).join(" ")} %*`;await oe.writeFilePromise(V.format({dir:t,name:e,ext:".cmd"}),a)}await oe.writeFilePromise(V.join(t,e),`#!/bin/sh +exec "${r}" ${o.map(a=>`'${a.replace(/'/g,`'"'"'`)}'`).join(" ")} "$@" +`,{mode:493})}async function tue(t){let e=await Ot.tryFind(t);if(e?.packageManager){let o=_S(e.packageManager);if(o?.name){let a=`found ${JSON.stringify({packageManager:e.packageManager})} in manifest`,[n]=o.reference.split(".");switch(o.name){case"yarn":return{packageManagerField:!0,packageManager:Number(n)===1?"Yarn Classic":"Yarn",reason:a};case"npm":return{packageManagerField:!0,packageManager:"npm",reason:a};case"pnpm":return{packageManagerField:!0,packageManager:"pnpm",reason:a}}}}let r;try{r=await oe.readFilePromise(V.join(t,dr.lockfile),"utf8")}catch{}return r!==void 0?r.match(/^__metadata:$/m)?{packageManager:"Yarn",reason:'"__metadata" key found in yarn.lock'}:{packageManager:"Yarn Classic",reason:'"__metadata" key not found in yarn.lock, must be a Yarn classic lockfile'}:oe.existsSync(V.join(t,"package-lock.json"))?{packageManager:"npm",reason:`found npm's "package-lock.json" lockfile`}:oe.existsSync(V.join(t,"pnpm-lock.yaml"))?{packageManager:"pnpm",reason:`found pnpm's "pnpm-lock.yaml" lockfile`}:null}async function L1({project:t,locator:e,binFolder:r,ignoreCorepack:o,lifecycleScript:a,baseEnv:n=t?.configuration.env??process.env}){let u={};for(let[C,I]of Object.entries(n))typeof I<"u"&&(u[C.toLowerCase()!=="path"?C:"PATH"]=I);let A=ue.fromPortablePath(r);u.BERRY_BIN_FOLDER=ue.fromPortablePath(A);let p=process.env.COREPACK_ROOT&&!o?ue.join(process.env.COREPACK_ROOT,"dist/yarn.js"):process.argv[1];if(await Promise.all([Ah(r,"node",process.execPath),...tn!==null?[Ah(r,"run",process.execPath,[p,"run"]),Ah(r,"yarn",process.execPath,[p]),Ah(r,"yarnpkg",process.execPath,[p]),Ah(r,"node-gyp",process.execPath,[p,"run","--top-level","node-gyp"])]:[]]),t&&(u.INIT_CWD=ue.cwd(),u.PROJECT_CWD=ue.fromPortablePath(t.cwd)),u.PATH=u.PATH?`${A}${ue.delimiter}${u.PATH}`:`${A}`,u.npm_execpath=`${A}${ue.sep}yarn`,u.npm_node_execpath=`${A}${ue.sep}node`,e){if(!t)throw new Error("Assertion failed: Missing project");let C=t.tryWorkspaceByLocator(e),I=C?C.manifest.version??"":t.storedPackages.get(e.locatorHash).version??"";u.npm_package_name=fn(e),u.npm_package_version=I;let v;if(C)v=C.cwd;else{let x=t.storedPackages.get(e.locatorHash);if(!x)throw new Error(`Package for ${jr(t.configuration,e)} not found in the project`);let E=t.configuration.getLinkers(),R={project:t,report:new Nt({stdout:new fh.PassThrough,configuration:t.configuration})},L=E.find(U=>U.supportsPackage(x,R));if(!L)throw new Error(`The package ${jr(t.configuration,x)} isn't supported by any of the available linkers`);v=await L.findPackageLocation(x,R)}u.npm_package_json=ue.fromPortablePath(V.join(v,dr.manifest))}let h=tn!==null?`yarn/${tn}`:`yarn/${zp("@yarnpkg/core").version}-core`;return u.npm_config_user_agent=`${h} npm/? node/${process.version} ${process.platform} ${process.arch}`,a&&(u.npm_lifecycle_event=a),t&&await t.configuration.triggerHook(C=>C.setupScriptEnvironment,t,u,async(C,I,v)=>await Ah(r,C,I,v)),u}async function Pat(t,e,{configuration:r,report:o,workspace:a=null,locator:n=null}){await Dat(async()=>{await oe.mktempPromise(async u=>{let A=V.join(u,"pack.log"),p=null,{stdout:h,stderr:C}=r.getSubprocessStreams(A,{prefix:ue.fromPortablePath(t),report:o}),I=n&&Hc(n)?e1(n):n,v=I?ba(I):"an external project";h.write(`Packing ${v} from sources +`);let x=await tue(t),E;x!==null?(h.write(`Using ${x.packageManager} for bootstrap. Reason: ${x.reason} + +`),E=x.packageManager):(h.write(`No package manager configuration detected; defaulting to Yarn + +`),E="Yarn");let R=E==="Yarn"&&!x?.packageManagerField;await oe.mktempPromise(async L=>{let U=await L1({binFolder:L,ignoreCorepack:R}),te=new Map([["Yarn Classic",async()=>{let he=a!==null?["workspace",a]:[],Ae=V.join(t,dr.manifest),ye=await oe.readFilePromise(Ae),ae=await Gc(process.execPath,[process.argv[1],"set","version","classic","--only-if-needed","--yarn-path"],{cwd:t,env:U,stdin:p,stdout:h,stderr:C,end:1});if(ae.code!==0)return ae.code;await oe.writeFilePromise(Ae,ye),await oe.appendFilePromise(V.join(t,".npmignore"),`/.yarn +`),h.write(` +`),delete U.NODE_ENV;let Ie=await Gc("yarn",["install"],{cwd:t,env:U,stdin:p,stdout:h,stderr:C,end:1});if(Ie.code!==0)return Ie.code;h.write(` +`);let Fe=await Gc("yarn",[...he,"pack","--filename",ue.fromPortablePath(e)],{cwd:t,env:U,stdin:p,stdout:h,stderr:C});return Fe.code!==0?Fe.code:0}],["Yarn",async()=>{let he=a!==null?["workspace",a]:[];U.YARN_ENABLE_INLINE_BUILDS="1";let Ae=V.join(t,dr.lockfile);await oe.existsPromise(Ae)||await oe.writeFilePromise(Ae,"");let ye=await Gc("yarn",[...he,"pack","--install-if-needed","--filename",ue.fromPortablePath(e)],{cwd:t,env:U,stdin:p,stdout:h,stderr:C});return ye.code!==0?ye.code:0}],["npm",async()=>{if(a!==null){let Ee=new fh.PassThrough,De=Wy(Ee);Ee.pipe(h,{end:!1});let ce=await Gc("npm",["--version"],{cwd:t,env:U,stdin:p,stdout:Ee,stderr:C,end:0});if(Ee.end(),ce.code!==0)return h.end(),C.end(),ce.code;let ne=(await De).toString().trim();if(!bf(ne,">=7.x")){let ee=eA(null,"npm"),we=In(ee,ne),xe=In(ee,">=7.x");throw new Error(`Workspaces aren't supported by ${qn(r,we)}; please upgrade to ${qn(r,xe)} (npm has been detected as the primary package manager for ${Mt(r,t,yt.PATH)})`)}}let he=a!==null?["--workspace",a]:[];delete U.npm_config_user_agent,delete U.npm_config_production,delete U.NPM_CONFIG_PRODUCTION,delete U.NODE_ENV;let Ae=await Gc("npm",["install","--legacy-peer-deps"],{cwd:t,env:U,stdin:p,stdout:h,stderr:C,end:1});if(Ae.code!==0)return Ae.code;let ye=new fh.PassThrough,ae=Wy(ye);ye.pipe(h);let Ie=await Gc("npm",["pack","--silent",...he],{cwd:t,env:U,stdin:p,stdout:ye,stderr:C});if(Ie.code!==0)return Ie.code;let Fe=(await ae).toString().trim().replace(/^.*\n/s,""),g=V.resolve(t,ue.toPortablePath(Fe));return await oe.renamePromise(g,e),0}]]).get(E);if(typeof te>"u")throw new Error("Assertion failed: Unsupported workflow");let le=await te();if(!(le===0||typeof le>"u"))throw oe.detachTemp(u),new Jt(58,`Packing the package failed (exit code ${le}, logs can be found here: ${Mt(r,A,yt.PATH)})`)})})})}async function Sat(t,e,{project:r}){let o=r.tryWorkspaceByLocator(t);if(o!==null)return IU(o,e);let a=r.storedPackages.get(t.locatorHash);if(!a)throw new Error(`Package for ${jr(r.configuration,t)} not found in the project`);return await zl.openPromise(async n=>{let u=r.configuration,A=r.configuration.getLinkers(),p={project:r,report:new Nt({stdout:new fh.PassThrough,configuration:u})},h=A.find(x=>x.supportsPackage(a,p));if(!h)throw new Error(`The package ${jr(r.configuration,a)} isn't supported by any of the available linkers`);let C=await h.findPackageLocation(a,p),I=new gn(C,{baseFs:n});return(await Ot.find(Bt.dot,{baseFs:I})).scripts.has(e)})}async function Vb(t,e,r,{cwd:o,project:a,stdin:n,stdout:u,stderr:A}){return await oe.mktempPromise(async p=>{let{manifest:h,env:C,cwd:I}=await rue(t,{project:a,binFolder:p,cwd:o,lifecycleScript:e}),v=h.scripts.get(e);if(typeof v>"u")return 1;let x=async()=>await FE(v,r,{cwd:I,env:C,stdin:n,stdout:u,stderr:A});return await(await a.configuration.reduceHook(R=>R.wrapScriptExecution,x,a,t,e,{script:v,args:r,cwd:I,env:C,stdin:n,stdout:u,stderr:A}))()})}async function wU(t,e,r,{cwd:o,project:a,stdin:n,stdout:u,stderr:A}){return await oe.mktempPromise(async p=>{let{env:h,cwd:C}=await rue(t,{project:a,binFolder:p,cwd:o});return await FE(e,r,{cwd:C,env:h,stdin:n,stdout:u,stderr:A})})}async function bat(t,{binFolder:e,cwd:r,lifecycleScript:o}){let a=await L1({project:t.project,locator:t.anchoredLocator,binFolder:e,lifecycleScript:o});return await vU(e,await sue(t)),typeof r>"u"&&(r=V.dirname(await oe.realpathPromise(V.join(t.cwd,"package.json")))),{manifest:t.manifest,binFolder:e,env:a,cwd:r}}async function rue(t,{project:e,binFolder:r,cwd:o,lifecycleScript:a}){let n=e.tryWorkspaceByLocator(t);if(n!==null)return bat(n,{binFolder:r,cwd:o,lifecycleScript:a});let u=e.storedPackages.get(t.locatorHash);if(!u)throw new Error(`Package for ${jr(e.configuration,t)} not found in the project`);return await zl.openPromise(async A=>{let p=e.configuration,h=e.configuration.getLinkers(),C={project:e,report:new Nt({stdout:new fh.PassThrough,configuration:p})},I=h.find(L=>L.supportsPackage(u,C));if(!I)throw new Error(`The package ${jr(e.configuration,u)} isn't supported by any of the available linkers`);let v=await L1({project:e,locator:t,binFolder:r,lifecycleScript:a});await vU(r,await zb(t,{project:e}));let x=await I.findPackageLocation(u,C),E=new gn(x,{baseFs:A}),R=await Ot.find(Bt.dot,{baseFs:E});return typeof o>"u"&&(o=x),{manifest:R,binFolder:r,env:v,cwd:o}})}async function nue(t,e,r,{cwd:o,stdin:a,stdout:n,stderr:u}){return await Vb(t.anchoredLocator,e,r,{cwd:o,project:t.project,stdin:a,stdout:n,stderr:u})}function IU(t,e){return t.manifest.scripts.has(e)}async function iue(t,e,{cwd:r,report:o}){let{configuration:a}=t.project,n=null;await oe.mktempPromise(async u=>{let A=V.join(u,`${e}.log`),p=`# This file contains the result of Yarn calling the "${e}" lifecycle script inside a workspace ("${ue.fromPortablePath(t.cwd)}") +`,{stdout:h,stderr:C}=a.getSubprocessStreams(A,{report:o,prefix:jr(a,t.anchoredLocator),header:p});o.reportInfo(36,`Calling the "${e}" lifecycle script`);let I=await nue(t,e,[],{cwd:r,stdin:n,stdout:h,stderr:C});if(h.end(),C.end(),I!==0)throw oe.detachTemp(u),new Jt(36,`${(0,Zce.default)(e)} script failed (exit code ${Mt(a,I,yt.NUMBER)}, logs can be found here: ${Mt(a,A,yt.PATH)}); run ${Mt(a,`yarn ${e}`,yt.CODE)} to investigate`)})}async function xat(t,e,r){IU(t,e)&&await iue(t,e,r)}function BU(t){let e=V.extname(t);if(e.match(/\.[cm]?[jt]sx?$/))return!0;if(e===".exe"||e===".bin")return!1;let r=Buffer.alloc(4),o;try{o=oe.openSync(t,"r")}catch{return!0}try{oe.readSync(o,r,0,r.length,0)}finally{oe.closeSync(o)}let a=r.readUint32BE();return!(a===3405691582||a===3489328638||a===2135247942||(a&4294901760)===1297743872)}async function zb(t,{project:e}){let r=e.configuration,o=new Map,a=e.storedPackages.get(t.locatorHash);if(!a)throw new Error(`Package for ${jr(r,t)} not found in the project`);let n=new fh.Writable,u=r.getLinkers(),A={project:e,report:new Nt({configuration:r,stdout:n})},p=new Set([t.locatorHash]);for(let C of a.dependencies.values()){let I=e.storedResolutions.get(C.descriptorHash);if(!I)throw new Error(`Assertion failed: The resolution (${qn(r,C)}) should have been registered`);p.add(I)}let h=await Promise.all(Array.from(p,async C=>{let I=e.storedPackages.get(C);if(!I)throw new Error(`Assertion failed: The package (${C}) should have been registered`);if(I.bin.size===0)return sl.skip;let v=u.find(E=>E.supportsPackage(I,A));if(!v)return sl.skip;let x=null;try{x=await v.findPackageLocation(I,A)}catch(E){if(E.code==="LOCATOR_NOT_INSTALLED")return sl.skip;throw E}return{dependency:I,packageLocation:x}}));for(let C of h){if(C===sl.skip)continue;let{dependency:I,packageLocation:v}=C;for(let[x,E]of I.bin){let R=V.resolve(v,E);o.set(x,[I,ue.fromPortablePath(R),BU(R)])}}return o}async function sue(t){return await zb(t.anchoredLocator,{project:t.project})}async function vU(t,e){await Promise.all(Array.from(e,([r,[,o,a]])=>a?Ah(t,r,process.execPath,[o]):Ah(t,r,o,[])))}async function oue(t,e,r,{cwd:o,project:a,stdin:n,stdout:u,stderr:A,nodeArgs:p=[],packageAccessibleBinaries:h}){h??=await zb(t,{project:a});let C=h.get(e);if(!C)throw new Error(`Binary not found (${e}) for ${jr(a.configuration,t)}`);return await oe.mktempPromise(async I=>{let[,v]=C,x=await L1({project:a,locator:t,binFolder:I});await vU(x.BERRY_BIN_FOLDER,h);let E=BU(ue.toPortablePath(v))?Gc(process.execPath,[...p,v,...r],{cwd:o,env:x,stdin:n,stdout:u,stderr:A}):Gc(v,r,{cwd:o,env:x,stdin:n,stdout:u,stderr:A}),R;try{R=await E}finally{await oe.removePromise(x.BERRY_BIN_FOLDER)}return R.code})}async function kat(t,e,r,{cwd:o,stdin:a,stdout:n,stderr:u,packageAccessibleBinaries:A}){return await oue(t.anchoredLocator,e,r,{project:t.project,cwd:o,stdin:a,stdout:n,stderr:u,packageAccessibleBinaries:A})}var Zce,$ce,fh,eue,vat,Dat,DU=Et(()=>{Pt();Pt();nA();b1();Zce=$e(EU()),$ce=$e(rd()),fh=Be("stream");uE();Yl();N1();T1();Sb();ql();jl();xf();bo();eue=(a=>(a.Yarn1="Yarn Classic",a.Yarn2="Yarn",a.Npm="npm",a.Pnpm="pnpm",a))(eue||{});vat=2,Dat=(0,$ce.default)(vat)});var NE=_((T4t,lue)=>{"use strict";var aue=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"]]);lue.exports=t=>t?Object.keys(t).map(e=>[aue.has(e)?aue.get(e):e,t[e]]).reduce((e,r)=>(e[r[0]]=r[1],e),Object.create(null)):{}});var OE=_((N4t,mue)=>{"use strict";var cue=typeof process=="object"&&process?process:{stdout:null,stderr:null},Qat=Be("events"),uue=Be("stream"),Aue=Be("string_decoder").StringDecoder,Lf=Symbol("EOF"),Of=Symbol("maybeEmitEnd"),ph=Symbol("emittedEnd"),Jb=Symbol("emittingEnd"),O1=Symbol("emittedError"),Xb=Symbol("closed"),fue=Symbol("read"),Zb=Symbol("flush"),pue=Symbol("flushChunk"),ka=Symbol("encoding"),Mf=Symbol("decoder"),$b=Symbol("flowing"),M1=Symbol("paused"),LE=Symbol("resume"),Fs=Symbol("bufferLength"),PU=Symbol("bufferPush"),SU=Symbol("bufferShift"),Fo=Symbol("objectMode"),Ro=Symbol("destroyed"),bU=Symbol("emitData"),hue=Symbol("emitEnd"),xU=Symbol("emitEnd2"),Uf=Symbol("async"),U1=t=>Promise.resolve().then(t),gue=global._MP_NO_ITERATOR_SYMBOLS_!=="1",Fat=gue&&Symbol.asyncIterator||Symbol("asyncIterator not implemented"),Rat=gue&&Symbol.iterator||Symbol("iterator not implemented"),Tat=t=>t==="end"||t==="finish"||t==="prefinish",Nat=t=>t instanceof ArrayBuffer||typeof t=="object"&&t.constructor&&t.constructor.name==="ArrayBuffer"&&t.byteLength>=0,Lat=t=>!Buffer.isBuffer(t)&&ArrayBuffer.isView(t),ex=class{constructor(e,r,o){this.src=e,this.dest=r,this.opts=o,this.ondrain=()=>e[LE](),r.on("drain",this.ondrain)}unpipe(){this.dest.removeListener("drain",this.ondrain)}proxyErrors(){}end(){this.unpipe(),this.opts.end&&this.dest.end()}},kU=class extends ex{unpipe(){this.src.removeListener("error",this.proxyErrors),super.unpipe()}constructor(e,r,o){super(e,r,o),this.proxyErrors=a=>r.emit("error",a),e.on("error",this.proxyErrors)}};mue.exports=class due extends uue{constructor(e){super(),this[$b]=!1,this[M1]=!1,this.pipes=[],this.buffer=[],this[Fo]=e&&e.objectMode||!1,this[Fo]?this[ka]=null:this[ka]=e&&e.encoding||null,this[ka]==="buffer"&&(this[ka]=null),this[Uf]=e&&!!e.async||!1,this[Mf]=this[ka]?new Aue(this[ka]):null,this[Lf]=!1,this[ph]=!1,this[Jb]=!1,this[Xb]=!1,this[O1]=null,this.writable=!0,this.readable=!0,this[Fs]=0,this[Ro]=!1}get bufferLength(){return this[Fs]}get encoding(){return this[ka]}set encoding(e){if(this[Fo])throw new Error("cannot set encoding in objectMode");if(this[ka]&&e!==this[ka]&&(this[Mf]&&this[Mf].lastNeed||this[Fs]))throw new Error("cannot change encoding");this[ka]!==e&&(this[Mf]=e?new Aue(e):null,this.buffer.length&&(this.buffer=this.buffer.map(r=>this[Mf].write(r)))),this[ka]=e}setEncoding(e){this.encoding=e}get objectMode(){return this[Fo]}set objectMode(e){this[Fo]=this[Fo]||!!e}get async(){return this[Uf]}set async(e){this[Uf]=this[Uf]||!!e}write(e,r,o){if(this[Lf])throw new Error("write after end");if(this[Ro])return this.emit("error",Object.assign(new Error("Cannot call write after a stream was destroyed"),{code:"ERR_STREAM_DESTROYED"})),!0;typeof r=="function"&&(o=r,r="utf8"),r||(r="utf8");let a=this[Uf]?U1:n=>n();return!this[Fo]&&!Buffer.isBuffer(e)&&(Lat(e)?e=Buffer.from(e.buffer,e.byteOffset,e.byteLength):Nat(e)?e=Buffer.from(e):typeof e!="string"&&(this.objectMode=!0)),this[Fo]?(this.flowing&&this[Fs]!==0&&this[Zb](!0),this.flowing?this.emit("data",e):this[PU](e),this[Fs]!==0&&this.emit("readable"),o&&a(o),this.flowing):e.length?(typeof e=="string"&&!(r===this[ka]&&!this[Mf].lastNeed)&&(e=Buffer.from(e,r)),Buffer.isBuffer(e)&&this[ka]&&(e=this[Mf].write(e)),this.flowing&&this[Fs]!==0&&this[Zb](!0),this.flowing?this.emit("data",e):this[PU](e),this[Fs]!==0&&this.emit("readable"),o&&a(o),this.flowing):(this[Fs]!==0&&this.emit("readable"),o&&a(o),this.flowing)}read(e){if(this[Ro])return null;if(this[Fs]===0||e===0||e>this[Fs])return this[Of](),null;this[Fo]&&(e=null),this.buffer.length>1&&!this[Fo]&&(this.encoding?this.buffer=[this.buffer.join("")]:this.buffer=[Buffer.concat(this.buffer,this[Fs])]);let r=this[fue](e||null,this.buffer[0]);return this[Of](),r}[fue](e,r){return e===r.length||e===null?this[SU]():(this.buffer[0]=r.slice(e),r=r.slice(0,e),this[Fs]-=e),this.emit("data",r),!this.buffer.length&&!this[Lf]&&this.emit("drain"),r}end(e,r,o){return typeof e=="function"&&(o=e,e=null),typeof r=="function"&&(o=r,r="utf8"),e&&this.write(e,r),o&&this.once("end",o),this[Lf]=!0,this.writable=!1,(this.flowing||!this[M1])&&this[Of](),this}[LE](){this[Ro]||(this[M1]=!1,this[$b]=!0,this.emit("resume"),this.buffer.length?this[Zb]():this[Lf]?this[Of]():this.emit("drain"))}resume(){return this[LE]()}pause(){this[$b]=!1,this[M1]=!0}get destroyed(){return this[Ro]}get flowing(){return this[$b]}get paused(){return this[M1]}[PU](e){this[Fo]?this[Fs]+=1:this[Fs]+=e.length,this.buffer.push(e)}[SU](){return this.buffer.length&&(this[Fo]?this[Fs]-=1:this[Fs]-=this.buffer[0].length),this.buffer.shift()}[Zb](e){do;while(this[pue](this[SU]()));!e&&!this.buffer.length&&!this[Lf]&&this.emit("drain")}[pue](e){return e?(this.emit("data",e),this.flowing):!1}pipe(e,r){if(this[Ro])return;let o=this[ph];return r=r||{},e===cue.stdout||e===cue.stderr?r.end=!1:r.end=r.end!==!1,r.proxyErrors=!!r.proxyErrors,o?r.end&&e.end():(this.pipes.push(r.proxyErrors?new kU(this,e,r):new ex(this,e,r)),this[Uf]?U1(()=>this[LE]()):this[LE]()),e}unpipe(e){let r=this.pipes.find(o=>o.dest===e);r&&(this.pipes.splice(this.pipes.indexOf(r),1),r.unpipe())}addListener(e,r){return this.on(e,r)}on(e,r){let o=super.on(e,r);return e==="data"&&!this.pipes.length&&!this.flowing?this[LE]():e==="readable"&&this[Fs]!==0?super.emit("readable"):Tat(e)&&this[ph]?(super.emit(e),this.removeAllListeners(e)):e==="error"&&this[O1]&&(this[Uf]?U1(()=>r.call(this,this[O1])):r.call(this,this[O1])),o}get emittedEnd(){return this[ph]}[Of](){!this[Jb]&&!this[ph]&&!this[Ro]&&this.buffer.length===0&&this[Lf]&&(this[Jb]=!0,this.emit("end"),this.emit("prefinish"),this.emit("finish"),this[Xb]&&this.emit("close"),this[Jb]=!1)}emit(e,r,...o){if(e!=="error"&&e!=="close"&&e!==Ro&&this[Ro])return;if(e==="data")return r?this[Uf]?U1(()=>this[bU](r)):this[bU](r):!1;if(e==="end")return this[hue]();if(e==="close"){if(this[Xb]=!0,!this[ph]&&!this[Ro])return;let n=super.emit("close");return this.removeAllListeners("close"),n}else if(e==="error"){this[O1]=r;let n=super.emit("error",r);return this[Of](),n}else if(e==="resume"){let n=super.emit("resume");return this[Of](),n}else if(e==="finish"||e==="prefinish"){let n=super.emit(e);return this.removeAllListeners(e),n}let a=super.emit(e,r,...o);return this[Of](),a}[bU](e){for(let o of this.pipes)o.dest.write(e)===!1&&this.pause();let r=super.emit("data",e);return this[Of](),r}[hue](){this[ph]||(this[ph]=!0,this.readable=!1,this[Uf]?U1(()=>this[xU]()):this[xU]())}[xU](){if(this[Mf]){let r=this[Mf].end();if(r){for(let o of this.pipes)o.dest.write(r);super.emit("data",r)}}for(let r of this.pipes)r.end();let e=super.emit("end");return this.removeAllListeners("end"),e}collect(){let e=[];this[Fo]||(e.dataLength=0);let r=this.promise();return this.on("data",o=>{e.push(o),this[Fo]||(e.dataLength+=o.length)}),r.then(()=>e)}concat(){return this[Fo]?Promise.reject(new Error("cannot concat in objectMode")):this.collect().then(e=>this[Fo]?Promise.reject(new Error("cannot concat in objectMode")):this[ka]?e.join(""):Buffer.concat(e,e.dataLength))}promise(){return new Promise((e,r)=>{this.on(Ro,()=>r(new Error("stream destroyed"))),this.on("error",o=>r(o)),this.on("end",()=>e())})}[Fat](){return{next:()=>{let r=this.read();if(r!==null)return Promise.resolve({done:!1,value:r});if(this[Lf])return Promise.resolve({done:!0});let o=null,a=null,n=h=>{this.removeListener("data",u),this.removeListener("end",A),a(h)},u=h=>{this.removeListener("error",n),this.removeListener("end",A),this.pause(),o({value:h,done:!!this[Lf]})},A=()=>{this.removeListener("error",n),this.removeListener("data",u),o({done:!0})},p=()=>n(new Error("stream destroyed"));return new Promise((h,C)=>{a=C,o=h,this.once(Ro,p),this.once("error",n),this.once("end",A),this.once("data",u)})}}}[Rat](){return{next:()=>{let r=this.read();return{value:r,done:r===null}}}}destroy(e){return this[Ro]?(e?this.emit("error",e):this.emit(Ro),this):(this[Ro]=!0,this.buffer.length=0,this[Fs]=0,typeof this.close=="function"&&!this[Xb]&&this.close(),e?this.emit("error",e):this.emit(Ro),this)}static isStream(e){return!!e&&(e instanceof due||e instanceof uue||e instanceof Qat&&(typeof e.pipe=="function"||typeof e.write=="function"&&typeof e.end=="function"))}}});var Eue=_((L4t,yue)=>{var Oat=Be("zlib").constants||{ZLIB_VERNUM:4736};yue.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:1/0,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},Oat))});var WU=_(cl=>{"use strict";var NU=Be("assert"),hh=Be("buffer").Buffer,Iue=Be("zlib"),kd=cl.constants=Eue(),Mat=OE(),Cue=hh.concat,Qd=Symbol("_superWrite"),UE=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"}},Uat=Symbol("opts"),_1=Symbol("flushFlag"),wue=Symbol("finishFlushFlag"),YU=Symbol("fullFlushFlag"),ti=Symbol("handle"),tx=Symbol("onError"),ME=Symbol("sawError"),QU=Symbol("level"),FU=Symbol("strategy"),RU=Symbol("ended"),O4t=Symbol("_defaultFullFlush"),rx=class extends Mat{constructor(e,r){if(!e||typeof e!="object")throw new TypeError("invalid options for ZlibBase constructor");super(e),this[ME]=!1,this[RU]=!1,this[Uat]=e,this[_1]=e.flush,this[wue]=e.finishFlush;try{this[ti]=new Iue[r](e)}catch(o){throw new UE(o)}this[tx]=o=>{this[ME]||(this[ME]=!0,this.close(),this.emit("error",o))},this[ti].on("error",o=>this[tx](new UE(o))),this.once("end",()=>this.close)}close(){this[ti]&&(this[ti].close(),this[ti]=null,this.emit("close"))}reset(){if(!this[ME])return NU(this[ti],"zlib binding closed"),this[ti].reset()}flush(e){this.ended||(typeof e!="number"&&(e=this[YU]),this.write(Object.assign(hh.alloc(0),{[_1]:e})))}end(e,r,o){return e&&this.write(e,r),this.flush(this[wue]),this[RU]=!0,super.end(null,null,o)}get ended(){return this[RU]}write(e,r,o){if(typeof r=="function"&&(o=r,r="utf8"),typeof e=="string"&&(e=hh.from(e,r)),this[ME])return;NU(this[ti],"zlib binding closed");let a=this[ti]._handle,n=a.close;a.close=()=>{};let u=this[ti].close;this[ti].close=()=>{},hh.concat=h=>h;let A;try{let h=typeof e[_1]=="number"?e[_1]:this[_1];A=this[ti]._processChunk(e,h),hh.concat=Cue}catch(h){hh.concat=Cue,this[tx](new UE(h))}finally{this[ti]&&(this[ti]._handle=a,a.close=n,this[ti].close=u,this[ti].removeAllListeners("error"))}this[ti]&&this[ti].on("error",h=>this[tx](new UE(h)));let p;if(A)if(Array.isArray(A)&&A.length>0){p=this[Qd](hh.from(A[0]));for(let h=1;h{this.flush(a),n()};try{this[ti].params(e,r)}finally{this[ti].flush=o}this[ti]&&(this[QU]=e,this[FU]=r)}}}},LU=class extends _f{constructor(e){super(e,"Deflate")}},OU=class extends _f{constructor(e){super(e,"Inflate")}},TU=Symbol("_portable"),MU=class extends _f{constructor(e){super(e,"Gzip"),this[TU]=e&&!!e.portable}[Qd](e){return this[TU]?(this[TU]=!1,e[9]=255,super[Qd](e)):super[Qd](e)}},UU=class extends _f{constructor(e){super(e,"Gunzip")}},_U=class extends _f{constructor(e){super(e,"DeflateRaw")}},HU=class extends _f{constructor(e){super(e,"InflateRaw")}},jU=class extends _f{constructor(e){super(e,"Unzip")}},nx=class extends rx{constructor(e,r){e=e||{},e.flush=e.flush||kd.BROTLI_OPERATION_PROCESS,e.finishFlush=e.finishFlush||kd.BROTLI_OPERATION_FINISH,super(e,r),this[YU]=kd.BROTLI_OPERATION_FLUSH}},qU=class extends nx{constructor(e){super(e,"BrotliCompress")}},GU=class extends nx{constructor(e){super(e,"BrotliDecompress")}};cl.Deflate=LU;cl.Inflate=OU;cl.Gzip=MU;cl.Gunzip=UU;cl.DeflateRaw=_U;cl.InflateRaw=HU;cl.Unzip=jU;typeof Iue.BrotliCompress=="function"?(cl.BrotliCompress=qU,cl.BrotliDecompress=GU):cl.BrotliCompress=cl.BrotliDecompress=class{constructor(){throw new Error("Brotli is not supported in this version of Node.js")}}});var _E=_((_4t,Bue)=>{var _at=process.env.TESTING_TAR_FAKE_PLATFORM||process.platform;Bue.exports=_at!=="win32"?t=>t:t=>t&&t.replace(/\\/g,"/")});var ix=_((j4t,vue)=>{"use strict";var Hat=OE(),KU=_E(),VU=Symbol("slurp");vue.exports=class extends Hat{constructor(e,r,o){switch(super(),this.pause(),this.extended=r,this.globalExtended=o,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=KU(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=KU(e.linkpath),this.uname=e.uname,this.gname=e.gname,r&&this[VU](r),o&&this[VU](o,!0)}write(e){let r=e.length;if(r>this.blockRemain)throw new Error("writing more to entry than is appropriate");let o=this.remain,a=this.blockRemain;return this.remain=Math.max(0,o-r),this.blockRemain=Math.max(0,a-r),this.ignore?!0:o>=r?super.write(e):super.write(e.slice(0,o))}[VU](e,r){for(let o in e)e[o]!==null&&e[o]!==void 0&&!(r&&o==="path")&&(this[o]=o==="path"||o==="linkpath"?KU(e[o]):e[o])}}});var zU=_(sx=>{"use strict";sx.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"]]);sx.code=new Map(Array.from(sx.name).map(t=>[t[1],t[0]]))});var bue=_((G4t,Sue)=>{"use strict";var jat=(t,e)=>{if(Number.isSafeInteger(t))t<0?Gat(t,e):qat(t,e);else throw Error("cannot encode number outside of javascript safe integer range");return e},qat=(t,e)=>{e[0]=128;for(var r=e.length;r>1;r--)e[r-1]=t&255,t=Math.floor(t/256)},Gat=(t,e)=>{e[0]=255;var r=!1;t=t*-1;for(var o=e.length;o>1;o--){var a=t&255;t=Math.floor(t/256),r?e[o-1]=Due(a):a===0?e[o-1]=0:(r=!0,e[o-1]=Pue(a))}},Yat=t=>{let e=t[0],r=e===128?Kat(t.slice(1,t.length)):e===255?Wat(t):null;if(r===null)throw Error("invalid base256 encoding");if(!Number.isSafeInteger(r))throw Error("parsed number outside of javascript safe integer range");return r},Wat=t=>{for(var e=t.length,r=0,o=!1,a=e-1;a>-1;a--){var n=t[a],u;o?u=Due(n):n===0?u=n:(o=!0,u=Pue(n)),u!==0&&(r-=u*Math.pow(256,e-a-1))}return r},Kat=t=>{for(var e=t.length,r=0,o=e-1;o>-1;o--){var a=t[o];a!==0&&(r+=a*Math.pow(256,e-o-1))}return r},Due=t=>(255^t)&255,Pue=t=>(255^t)+1&255;Sue.exports={encode:jat,parse:Yat}});var jE=_((Y4t,kue)=>{"use strict";var JU=zU(),HE=Be("path").posix,xue=bue(),XU=Symbol("slurp"),ul=Symbol("type"),e3=class{constructor(e,r,o,a){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[ul]="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,o,a):e&&this.set(e)}decode(e,r,o,a){if(r||(r=0),!e||!(e.length>=r+512))throw new Error("need 512 bytes for header");if(this.path=Fd(e,r,100),this.mode=gh(e,r+100,8),this.uid=gh(e,r+108,8),this.gid=gh(e,r+116,8),this.size=gh(e,r+124,12),this.mtime=ZU(e,r+136,12),this.cksum=gh(e,r+148,12),this[XU](o),this[XU](a,!0),this[ul]=Fd(e,r+156,1),this[ul]===""&&(this[ul]="0"),this[ul]==="0"&&this.path.substr(-1)==="/"&&(this[ul]="5"),this[ul]==="5"&&(this.size=0),this.linkpath=Fd(e,r+157,100),e.slice(r+257,r+265).toString()==="ustar\x0000")if(this.uname=Fd(e,r+265,32),this.gname=Fd(e,r+297,32),this.devmaj=gh(e,r+329,8),this.devmin=gh(e,r+337,8),e[r+475]!==0){let u=Fd(e,r+345,155);this.path=u+"/"+this.path}else{let u=Fd(e,r+345,130);u&&(this.path=u+"/"+this.path),this.atime=ZU(e,r+476,12),this.ctime=ZU(e,r+488,12)}let n=8*32;for(let u=r;u=r+512))throw new Error("need 512 bytes for header");let o=this.ctime||this.atime?130:155,a=Vat(this.path||"",o),n=a[0],u=a[1];this.needPax=a[2],this.needPax=Rd(e,r,100,n)||this.needPax,this.needPax=dh(e,r+100,8,this.mode)||this.needPax,this.needPax=dh(e,r+108,8,this.uid)||this.needPax,this.needPax=dh(e,r+116,8,this.gid)||this.needPax,this.needPax=dh(e,r+124,12,this.size)||this.needPax,this.needPax=$U(e,r+136,12,this.mtime)||this.needPax,e[r+156]=this[ul].charCodeAt(0),this.needPax=Rd(e,r+157,100,this.linkpath)||this.needPax,e.write("ustar\x0000",r+257,8),this.needPax=Rd(e,r+265,32,this.uname)||this.needPax,this.needPax=Rd(e,r+297,32,this.gname)||this.needPax,this.needPax=dh(e,r+329,8,this.devmaj)||this.needPax,this.needPax=dh(e,r+337,8,this.devmin)||this.needPax,this.needPax=Rd(e,r+345,o,u)||this.needPax,e[r+475]!==0?this.needPax=Rd(e,r+345,155,u)||this.needPax:(this.needPax=Rd(e,r+345,130,u)||this.needPax,this.needPax=$U(e,r+476,12,this.atime)||this.needPax,this.needPax=$U(e,r+488,12,this.ctime)||this.needPax);let A=8*32;for(let p=r;p{let o=t,a="",n,u=HE.parse(t).root||".";if(Buffer.byteLength(o)<100)n=[o,a,!1];else{a=HE.dirname(o),o=HE.basename(o);do Buffer.byteLength(o)<=100&&Buffer.byteLength(a)<=e?n=[o,a,!1]:Buffer.byteLength(o)>100&&Buffer.byteLength(a)<=e?n=[o.substr(0,100-1),a,!0]:(o=HE.join(HE.basename(a),o),a=HE.dirname(a));while(a!==u&&!n);n||(n=[t.substr(0,100-1),"",!0])}return n},Fd=(t,e,r)=>t.slice(e,e+r).toString("utf8").replace(/\0.*/,""),ZU=(t,e,r)=>zat(gh(t,e,r)),zat=t=>t===null?null:new Date(t*1e3),gh=(t,e,r)=>t[e]&128?xue.parse(t.slice(e,e+r)):Xat(t,e,r),Jat=t=>isNaN(t)?null:t,Xat=(t,e,r)=>Jat(parseInt(t.slice(e,e+r).toString("utf8").replace(/\0.*$/,"").trim(),8)),Zat={12:8589934591,8:2097151},dh=(t,e,r,o)=>o===null?!1:o>Zat[r]||o<0?(xue.encode(o,t.slice(e,e+r)),!0):($at(t,e,r,o),!1),$at=(t,e,r,o)=>t.write(elt(o,r),e,r,"ascii"),elt=(t,e)=>tlt(Math.floor(t).toString(8),e),tlt=(t,e)=>(t.length===e-1?t:new Array(e-t.length-1).join("0")+t+" ")+"\0",$U=(t,e,r,o)=>o===null?!1:dh(t,e,r,o.getTime()/1e3),rlt=new Array(156).join("\0"),Rd=(t,e,r,o)=>o===null?!1:(t.write(o+rlt,e,r,"utf8"),o.length!==Buffer.byteLength(o)||o.length>r);kue.exports=e3});var ox=_((W4t,Que)=>{"use strict";var nlt=jE(),ilt=Be("path"),H1=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),o=512*Math.ceil(1+r/512),a=Buffer.allocUnsafe(o);for(let n=0;n<512;n++)a[n]=0;new nlt({path:("PaxHeader/"+ilt.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(a),a.write(e,512,r,"utf8");for(let n=r+512;n=Math.pow(10,n)&&(n+=1),n+a+o}};H1.parse=(t,e,r)=>new H1(slt(olt(t),e),r);var slt=(t,e)=>e?Object.keys(t).reduce((r,o)=>(r[o]=t[o],r),e):t,olt=t=>t.replace(/\n$/,"").split(` +`).reduce(alt,Object.create(null)),alt=(t,e)=>{let r=parseInt(e,10);if(r!==Buffer.byteLength(e)+1)return t;e=e.substr((r+" ").length);let o=e.split("="),a=o.shift().replace(/^SCHILY\.(dev|ino|nlink)/,"$1");if(!a)return t;let n=o.join("=");return t[a]=/^([A-Z]+\.)?([mac]|birth|creation)time$/.test(a)?new Date(n*1e3):/^[0-9]+$/.test(n)?+n:n,t};Que.exports=H1});var qE=_((K4t,Fue)=>{Fue.exports=t=>{let e=t.length-1,r=-1;for(;e>-1&&t.charAt(e)==="/";)r=e,e--;return r===-1?t:t.slice(0,r)}});var ax=_((V4t,Rue)=>{"use strict";Rue.exports=t=>class extends t{warn(e,r,o={}){this.file&&(o.file=this.file),this.cwd&&(o.cwd=this.cwd),o.code=r instanceof Error&&r.code||e,o.tarCode=e,!this.strict&&o.recoverable!==!1?(r instanceof Error&&(o=Object.assign(r,o),r=r.message),this.emit("warn",o.tarCode,r,o)):r instanceof Error?this.emit("error",Object.assign(r,o)):this.emit("error",Object.assign(new Error(`${e}: ${r}`),o))}}});var r3=_((J4t,Tue)=>{"use strict";var lx=["|","<",">","?",":"],t3=lx.map(t=>String.fromCharCode(61440+t.charCodeAt(0))),llt=new Map(lx.map((t,e)=>[t,t3[e]])),clt=new Map(t3.map((t,e)=>[t,lx[e]]));Tue.exports={encode:t=>lx.reduce((e,r)=>e.split(r).join(llt.get(r)),t),decode:t=>t3.reduce((e,r)=>e.split(r).join(clt.get(r)),t)}});var n3=_((X4t,Lue)=>{var{isAbsolute:ult,parse:Nue}=Be("path").win32;Lue.exports=t=>{let e="",r=Nue(t);for(;ult(t)||r.root;){let o=t.charAt(0)==="/"&&t.slice(0,4)!=="//?/"?"/":r.root;t=t.substr(o.length),e+=o,r=Nue(t)}return[e,t]}});var Mue=_((Z4t,Oue)=>{"use strict";Oue.exports=(t,e,r)=>(t&=4095,r&&(t=(t|384)&-19),e&&(t&256&&(t|=64),t&32&&(t|=8),t&4&&(t|=1)),t)});var p3=_((tUt,Zue)=>{"use strict";var Yue=OE(),Wue=ox(),Kue=jE(),oA=Be("fs"),Uue=Be("path"),sA=_E(),Alt=qE(),Vue=(t,e)=>e?(t=sA(t).replace(/^\.(\/|$)/,""),Alt(e)+"/"+t):sA(t),flt=16*1024*1024,_ue=Symbol("process"),Hue=Symbol("file"),jue=Symbol("directory"),s3=Symbol("symlink"),que=Symbol("hardlink"),j1=Symbol("header"),cx=Symbol("read"),o3=Symbol("lstat"),ux=Symbol("onlstat"),a3=Symbol("onread"),l3=Symbol("onreadlink"),c3=Symbol("openfile"),u3=Symbol("onopenfile"),mh=Symbol("close"),Ax=Symbol("mode"),A3=Symbol("awaitDrain"),i3=Symbol("ondrain"),aA=Symbol("prefix"),Gue=Symbol("hadError"),zue=ax(),plt=r3(),Jue=n3(),Xue=Mue(),fx=zue(class extends Yue{constructor(e,r){if(r=r||{},super(r),typeof e!="string")throw new TypeError("path is required");this.path=sA(e),this.portable=!!r.portable,this.myuid=process.getuid&&process.getuid()||0,this.myuser=process.env.USER||"",this.maxReadSize=r.maxReadSize||flt,this.linkCache=r.linkCache||new Map,this.statCache=r.statCache||new Map,this.preservePaths=!!r.preservePaths,this.cwd=sA(r.cwd||process.cwd()),this.strict=!!r.strict,this.noPax=!!r.noPax,this.noMtime=!!r.noMtime,this.mtime=r.mtime||null,this.prefix=r.prefix?sA(r.prefix):null,this.fd=null,this.blockLen=null,this.blockRemain=null,this.buf=null,this.offset=null,this.length=null,this.pos=null,this.remain=null,typeof r.onwarn=="function"&&this.on("warn",r.onwarn);let o=!1;if(!this.preservePaths){let[a,n]=Jue(this.path);a&&(this.path=n,o=a)}this.win32=!!r.win32||process.platform==="win32",this.win32&&(this.path=plt.decode(this.path.replace(/\\/g,"/")),e=e.replace(/\\/g,"/")),this.absolute=sA(r.absolute||Uue.resolve(this.cwd,e)),this.path===""&&(this.path="./"),o&&this.warn("TAR_ENTRY_INFO",`stripping ${o} from absolute path`,{entry:this,path:o+this.path}),this.statCache.has(this.absolute)?this[ux](this.statCache.get(this.absolute)):this[o3]()}emit(e,...r){return e==="error"&&(this[Gue]=!0),super.emit(e,...r)}[o3](){oA.lstat(this.absolute,(e,r)=>{if(e)return this.emit("error",e);this[ux](r)})}[ux](e){this.statCache.set(this.absolute,e),this.stat=e,e.isFile()||(e.size=0),this.type=glt(e),this.emit("stat",e),this[_ue]()}[_ue](){switch(this.type){case"File":return this[Hue]();case"Directory":return this[jue]();case"SymbolicLink":return this[s3]();default:return this.end()}}[Ax](e){return Xue(e,this.type==="Directory",this.portable)}[aA](e){return Vue(e,this.prefix)}[j1](){this.type==="Directory"&&this.portable&&(this.noMtime=!0),this.header=new Kue({path:this[aA](this.path),linkpath:this.type==="Link"?this[aA](this.linkpath):this.linkpath,mode:this[Ax](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&&super.write(new Wue({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[aA](this.path),linkpath:this.type==="Link"?this[aA](this.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()),super.write(this.header.block)}[jue](){this.path.substr(-1)!=="/"&&(this.path+="/"),this.stat.size=0,this[j1](),this.end()}[s3](){oA.readlink(this.absolute,(e,r)=>{if(e)return this.emit("error",e);this[l3](r)})}[l3](e){this.linkpath=sA(e),this[j1](),this.end()}[que](e){this.type="Link",this.linkpath=sA(Uue.relative(this.cwd,e)),this.stat.size=0,this[j1](),this.end()}[Hue](){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[que](r)}this.linkCache.set(e,this.absolute)}if(this[j1](),this.stat.size===0)return this.end();this[c3]()}[c3](){oA.open(this.absolute,"r",(e,r)=>{if(e)return this.emit("error",e);this[u3](r)})}[u3](e){if(this.fd=e,this[Gue])return this[mh]();this.blockLen=512*Math.ceil(this.stat.size/512),this.blockRemain=this.blockLen;let r=Math.min(this.blockLen,this.maxReadSize);this.buf=Buffer.allocUnsafe(r),this.offset=0,this.pos=0,this.remain=this.stat.size,this.length=this.buf.length,this[cx]()}[cx](){let{fd:e,buf:r,offset:o,length:a,pos:n}=this;oA.read(e,r,o,a,n,(u,A)=>{if(u)return this[mh](()=>this.emit("error",u));this[a3](A)})}[mh](e){oA.close(this.fd,e)}[a3](e){if(e<=0&&this.remain>0){let a=new Error("encountered unexpected EOF");return a.path=this.absolute,a.syscall="read",a.code="EOF",this[mh](()=>this.emit("error",a))}if(e>this.remain){let a=new Error("did not encounter expected EOF");return a.path=this.absolute,a.syscall="read",a.code="EOF",this[mh](()=>this.emit("error",a))}if(e===this.remain)for(let a=e;athis[i3]())}[A3](e){this.once("drain",e)}write(e){if(this.blockRemaine?this.emit("error",e):this.end());this.offset>=this.length&&(this.buf=Buffer.allocUnsafe(Math.min(this.blockRemain,this.buf.length)),this.offset=0),this.length=this.buf.length-this.offset,this[cx]()}}),f3=class extends fx{[o3](){this[ux](oA.lstatSync(this.absolute))}[s3](){this[l3](oA.readlinkSync(this.absolute))}[c3](){this[u3](oA.openSync(this.absolute,"r"))}[cx](){let e=!0;try{let{fd:r,buf:o,offset:a,length:n,pos:u}=this,A=oA.readSync(r,o,a,n,u);this[a3](A),e=!1}finally{if(e)try{this[mh](()=>{})}catch{}}}[A3](e){e()}[mh](e){oA.closeSync(this.fd),e()}},hlt=zue(class extends Yue{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.prefix=r.prefix||null,this.path=sA(e.path),this.mode=this[Ax](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=sA(e.linkpath),typeof r.onwarn=="function"&&this.on("warn",r.onwarn);let o=!1;if(!this.preservePaths){let[a,n]=Jue(this.path);a&&(this.path=n,o=a)}this.remain=e.size,this.blockRemain=e.startBlockSize,this.header=new Kue({path:this[aA](this.path),linkpath:this.type==="Link"?this[aA](this.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}),o&&this.warn("TAR_ENTRY_INFO",`stripping ${o} from absolute path`,{entry:this,path:o+this.path}),this.header.encode()&&!this.noPax&&super.write(new Wue({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[aA](this.path),linkpath:this.type==="Link"?this[aA](this.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)}[aA](e){return Vue(e,this.prefix)}[Ax](e){return Xue(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&&super.write(Buffer.alloc(this.blockRemain)),super.end()}});fx.Sync=f3;fx.Tar=hlt;var glt=t=>t.isFile()?"File":t.isDirectory()?"Directory":t.isSymbolicLink()?"SymbolicLink":"Unsupported";Zue.exports=fx});var wx=_((nUt,sAe)=>{"use strict";var Ex=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}},dlt=OE(),mlt=WU(),ylt=ix(),I3=p3(),Elt=I3.Sync,Clt=I3.Tar,wlt=BP(),$ue=Buffer.alloc(1024),gx=Symbol("onStat"),px=Symbol("ended"),lA=Symbol("queue"),GE=Symbol("current"),Td=Symbol("process"),hx=Symbol("processing"),eAe=Symbol("processJob"),cA=Symbol("jobs"),h3=Symbol("jobDone"),dx=Symbol("addFSEntry"),tAe=Symbol("addTarEntry"),y3=Symbol("stat"),E3=Symbol("readdir"),mx=Symbol("onreaddir"),yx=Symbol("pipe"),rAe=Symbol("entry"),g3=Symbol("entryOpt"),C3=Symbol("writeEntryClass"),iAe=Symbol("write"),d3=Symbol("ondrain"),Cx=Be("fs"),nAe=Be("path"),Ilt=ax(),m3=_E(),B3=Ilt(class extends dlt{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=m3(e.prefix||""),this.linkCache=e.linkCache||new Map,this.statCache=e.statCache||new Map,this.readdirCache=e.readdirCache||new Map,this[C3]=I3,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 mlt.Gzip(e.gzip),this.zip.on("data",r=>super.write(r)),this.zip.on("end",r=>super.end()),this.zip.on("drain",r=>this[d3]()),this.on("resume",r=>this.zip.resume())):this.on("drain",this[d3]),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[lA]=new wlt,this[cA]=0,this.jobs=+e.jobs||4,this[hx]=!1,this[px]=!1}[iAe](e){return super.write(e)}add(e){return this.write(e),this}end(e){return e&&this.write(e),this[px]=!0,this[Td](),this}write(e){if(this[px])throw new Error("write after end");return e instanceof ylt?this[tAe](e):this[dx](e),this.flowing}[tAe](e){let r=m3(nAe.resolve(this.cwd,e.path));if(!this.filter(e.path,e))e.resume();else{let o=new Ex(e.path,r,!1);o.entry=new Clt(e,this[g3](o)),o.entry.on("end",a=>this[h3](o)),this[cA]+=1,this[lA].push(o)}this[Td]()}[dx](e){let r=m3(nAe.resolve(this.cwd,e));this[lA].push(new Ex(e,r)),this[Td]()}[y3](e){e.pending=!0,this[cA]+=1;let r=this.follow?"stat":"lstat";Cx[r](e.absolute,(o,a)=>{e.pending=!1,this[cA]-=1,o?this.emit("error",o):this[gx](e,a)})}[gx](e,r){this.statCache.set(e.absolute,r),e.stat=r,this.filter(e.path,r)||(e.ignore=!0),this[Td]()}[E3](e){e.pending=!0,this[cA]+=1,Cx.readdir(e.absolute,(r,o)=>{if(e.pending=!1,this[cA]-=1,r)return this.emit("error",r);this[mx](e,o)})}[mx](e,r){this.readdirCache.set(e.absolute,r),e.readdir=r,this[Td]()}[Td](){if(!this[hx]){this[hx]=!0;for(let e=this[lA].head;e!==null&&this[cA]this.warn(r,o,a),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,prefix:this.prefix}}[rAe](e){this[cA]+=1;try{return new this[C3](e.path,this[g3](e)).on("end",()=>this[h3](e)).on("error",r=>this.emit("error",r))}catch(r){this.emit("error",r)}}[d3](){this[GE]&&this[GE].entry&&this[GE].entry.resume()}[yx](e){e.piped=!0,e.readdir&&e.readdir.forEach(a=>{let n=e.path,u=n==="./"?"":n.replace(/\/*$/,"/");this[dx](u+a)});let r=e.entry,o=this.zip;o?r.on("data",a=>{o.write(a)||r.pause()}):r.on("data",a=>{super.write(a)||r.pause()})}pause(){return this.zip&&this.zip.pause(),super.pause()}}),w3=class extends B3{constructor(e){super(e),this[C3]=Elt}pause(){}resume(){}[y3](e){let r=this.follow?"statSync":"lstatSync";this[gx](e,Cx[r](e.absolute))}[E3](e,r){this[mx](e,Cx.readdirSync(e.absolute))}[yx](e){let r=e.entry,o=this.zip;e.readdir&&e.readdir.forEach(a=>{let n=e.path,u=n==="./"?"":n.replace(/\/*$/,"/");this[dx](u+a)}),o?r.on("data",a=>{o.write(a)}):r.on("data",a=>{super[iAe](a)})}};B3.Sync=w3;sAe.exports=B3});var ZE=_(G1=>{"use strict";var Blt=OE(),vlt=Be("events").EventEmitter,Qa=Be("fs"),P3=Qa.writev;if(!P3){let t=process.binding("fs"),e=t.FSReqWrap||t.FSReqCallback;P3=(r,o,a,n)=>{let u=(p,h)=>n(p,h,o),A=new e;A.oncomplete=u,t.writeBuffers(r,o,a,A)}}var JE=Symbol("_autoClose"),Yc=Symbol("_close"),q1=Symbol("_ended"),Gn=Symbol("_fd"),oAe=Symbol("_finished"),Eh=Symbol("_flags"),v3=Symbol("_flush"),S3=Symbol("_handleChunk"),b3=Symbol("_makeBuf"),Px=Symbol("_mode"),Ix=Symbol("_needDrain"),VE=Symbol("_onerror"),XE=Symbol("_onopen"),D3=Symbol("_onread"),WE=Symbol("_onwrite"),Ch=Symbol("_open"),Hf=Symbol("_path"),Nd=Symbol("_pos"),uA=Symbol("_queue"),KE=Symbol("_read"),aAe=Symbol("_readSize"),yh=Symbol("_reading"),Bx=Symbol("_remain"),lAe=Symbol("_size"),vx=Symbol("_write"),YE=Symbol("_writing"),Dx=Symbol("_defaultFlag"),zE=Symbol("_errored"),Sx=class extends Blt{constructor(e,r){if(r=r||{},super(r),this.readable=!0,this.writable=!1,typeof e!="string")throw new TypeError("path must be a string");this[zE]=!1,this[Gn]=typeof r.fd=="number"?r.fd:null,this[Hf]=e,this[aAe]=r.readSize||16*1024*1024,this[yh]=!1,this[lAe]=typeof r.size=="number"?r.size:1/0,this[Bx]=this[lAe],this[JE]=typeof r.autoClose=="boolean"?r.autoClose:!0,typeof this[Gn]=="number"?this[KE]():this[Ch]()}get fd(){return this[Gn]}get path(){return this[Hf]}write(){throw new TypeError("this is a readable stream")}end(){throw new TypeError("this is a readable stream")}[Ch](){Qa.open(this[Hf],"r",(e,r)=>this[XE](e,r))}[XE](e,r){e?this[VE](e):(this[Gn]=r,this.emit("open",r),this[KE]())}[b3](){return Buffer.allocUnsafe(Math.min(this[aAe],this[Bx]))}[KE](){if(!this[yh]){this[yh]=!0;let e=this[b3]();if(e.length===0)return process.nextTick(()=>this[D3](null,0,e));Qa.read(this[Gn],e,0,e.length,null,(r,o,a)=>this[D3](r,o,a))}}[D3](e,r,o){this[yh]=!1,e?this[VE](e):this[S3](r,o)&&this[KE]()}[Yc](){if(this[JE]&&typeof this[Gn]=="number"){let e=this[Gn];this[Gn]=null,Qa.close(e,r=>r?this.emit("error",r):this.emit("close"))}}[VE](e){this[yh]=!0,this[Yc](),this.emit("error",e)}[S3](e,r){let o=!1;return this[Bx]-=e,e>0&&(o=super.write(ethis[XE](e,r))}[XE](e,r){this[Dx]&&this[Eh]==="r+"&&e&&e.code==="ENOENT"?(this[Eh]="w",this[Ch]()):e?this[VE](e):(this[Gn]=r,this.emit("open",r),this[v3]())}end(e,r){return e&&this.write(e,r),this[q1]=!0,!this[YE]&&!this[uA].length&&typeof this[Gn]=="number"&&this[WE](null,0),this}write(e,r){return typeof e=="string"&&(e=Buffer.from(e,r)),this[q1]?(this.emit("error",new Error("write() after end()")),!1):this[Gn]===null||this[YE]||this[uA].length?(this[uA].push(e),this[Ix]=!0,!1):(this[YE]=!0,this[vx](e),!0)}[vx](e){Qa.write(this[Gn],e,0,e.length,this[Nd],(r,o)=>this[WE](r,o))}[WE](e,r){e?this[VE](e):(this[Nd]!==null&&(this[Nd]+=r),this[uA].length?this[v3]():(this[YE]=!1,this[q1]&&!this[oAe]?(this[oAe]=!0,this[Yc](),this.emit("finish")):this[Ix]&&(this[Ix]=!1,this.emit("drain"))))}[v3](){if(this[uA].length===0)this[q1]&&this[WE](null,0);else if(this[uA].length===1)this[vx](this[uA].pop());else{let e=this[uA];this[uA]=[],P3(this[Gn],e,this[Nd],(r,o)=>this[WE](r,o))}}[Yc](){if(this[JE]&&typeof this[Gn]=="number"){let e=this[Gn];this[Gn]=null,Qa.close(e,r=>r?this.emit("error",r):this.emit("close"))}}},k3=class extends bx{[Ch](){let e;if(this[Dx]&&this[Eh]==="r+")try{e=Qa.openSync(this[Hf],this[Eh],this[Px])}catch(r){if(r.code==="ENOENT")return this[Eh]="w",this[Ch]();throw r}else e=Qa.openSync(this[Hf],this[Eh],this[Px]);this[XE](null,e)}[Yc](){if(this[JE]&&typeof this[Gn]=="number"){let e=this[Gn];this[Gn]=null,Qa.closeSync(e),this.emit("close")}}[vx](e){let r=!0;try{this[WE](null,Qa.writeSync(this[Gn],e,0,e.length,this[Nd])),r=!1}finally{if(r)try{this[Yc]()}catch{}}}};G1.ReadStream=Sx;G1.ReadStreamSync=x3;G1.WriteStream=bx;G1.WriteStreamSync=k3});var Nx=_((oUt,gAe)=>{"use strict";var Dlt=ax(),Plt=jE(),Slt=Be("events"),blt=BP(),xlt=1024*1024,klt=ix(),cAe=ox(),Qlt=WU(),Q3=Buffer.from([31,139]),Xl=Symbol("state"),Ld=Symbol("writeEntry"),jf=Symbol("readEntry"),F3=Symbol("nextEntry"),uAe=Symbol("processEntry"),Zl=Symbol("extendedHeader"),Y1=Symbol("globalExtendedHeader"),wh=Symbol("meta"),AAe=Symbol("emitMeta"),fi=Symbol("buffer"),qf=Symbol("queue"),Od=Symbol("ended"),fAe=Symbol("emittedEnd"),Md=Symbol("emit"),Fa=Symbol("unzip"),xx=Symbol("consumeChunk"),kx=Symbol("consumeChunkSub"),R3=Symbol("consumeBody"),pAe=Symbol("consumeMeta"),hAe=Symbol("consumeHeader"),Qx=Symbol("consuming"),T3=Symbol("bufferConcat"),N3=Symbol("maybeEnd"),W1=Symbol("writing"),Ih=Symbol("aborted"),Fx=Symbol("onDone"),Ud=Symbol("sawValidEntry"),Rx=Symbol("sawNullBlock"),Tx=Symbol("sawEOF"),Flt=t=>!0;gAe.exports=Dlt(class extends Slt{constructor(e){e=e||{},super(e),this.file=e.file||"",this[Ud]=null,this.on(Fx,r=>{(this[Xl]==="begin"||this[Ud]===!1)&&this.warn("TAR_BAD_ARCHIVE","Unrecognized archive format")}),e.ondone?this.on(Fx,e.ondone):this.on(Fx,r=>{this.emit("prefinish"),this.emit("finish"),this.emit("end"),this.emit("close")}),this.strict=!!e.strict,this.maxMetaEntrySize=e.maxMetaEntrySize||xlt,this.filter=typeof e.filter=="function"?e.filter:Flt,this.writable=!0,this.readable=!1,this[qf]=new blt,this[fi]=null,this[jf]=null,this[Ld]=null,this[Xl]="begin",this[wh]="",this[Zl]=null,this[Y1]=null,this[Od]=!1,this[Fa]=null,this[Ih]=!1,this[Rx]=!1,this[Tx]=!1,typeof e.onwarn=="function"&&this.on("warn",e.onwarn),typeof e.onentry=="function"&&this.on("entry",e.onentry)}[hAe](e,r){this[Ud]===null&&(this[Ud]=!1);let o;try{o=new Plt(e,r,this[Zl],this[Y1])}catch(a){return this.warn("TAR_ENTRY_INVALID",a)}if(o.nullBlock)this[Rx]?(this[Tx]=!0,this[Xl]==="begin"&&(this[Xl]="header"),this[Md]("eof")):(this[Rx]=!0,this[Md]("nullBlock"));else if(this[Rx]=!1,!o.cksumValid)this.warn("TAR_ENTRY_INVALID","checksum failure",{header:o});else if(!o.path)this.warn("TAR_ENTRY_INVALID","path is required",{header:o});else{let a=o.type;if(/^(Symbolic)?Link$/.test(a)&&!o.linkpath)this.warn("TAR_ENTRY_INVALID","linkpath required",{header:o});else if(!/^(Symbolic)?Link$/.test(a)&&o.linkpath)this.warn("TAR_ENTRY_INVALID","linkpath forbidden",{header:o});else{let n=this[Ld]=new klt(o,this[Zl],this[Y1]);if(!this[Ud])if(n.remain){let u=()=>{n.invalid||(this[Ud]=!0)};n.on("end",u)}else this[Ud]=!0;n.meta?n.size>this.maxMetaEntrySize?(n.ignore=!0,this[Md]("ignoredEntry",n),this[Xl]="ignore",n.resume()):n.size>0&&(this[wh]="",n.on("data",u=>this[wh]+=u),this[Xl]="meta"):(this[Zl]=null,n.ignore=n.ignore||!this.filter(n.path,n),n.ignore?(this[Md]("ignoredEntry",n),this[Xl]=n.remain?"ignore":"header",n.resume()):(n.remain?this[Xl]="body":(this[Xl]="header",n.end()),this[jf]?this[qf].push(n):(this[qf].push(n),this[F3]())))}}}[uAe](e){let r=!0;return e?Array.isArray(e)?this.emit.apply(this,e):(this[jf]=e,this.emit("entry",e),e.emittedEnd||(e.on("end",o=>this[F3]()),r=!1)):(this[jf]=null,r=!1),r}[F3](){do;while(this[uAe](this[qf].shift()));if(!this[qf].length){let e=this[jf];!e||e.flowing||e.size===e.remain?this[W1]||this.emit("drain"):e.once("drain",o=>this.emit("drain"))}}[R3](e,r){let o=this[Ld],a=o.blockRemain,n=a>=e.length&&r===0?e:e.slice(r,r+a);return o.write(n),o.blockRemain||(this[Xl]="header",this[Ld]=null,o.end()),n.length}[pAe](e,r){let o=this[Ld],a=this[R3](e,r);return this[Ld]||this[AAe](o),a}[Md](e,r,o){!this[qf].length&&!this[jf]?this.emit(e,r,o):this[qf].push([e,r,o])}[AAe](e){switch(this[Md]("meta",this[wh]),e.type){case"ExtendedHeader":case"OldExtendedHeader":this[Zl]=cAe.parse(this[wh],this[Zl],!1);break;case"GlobalExtendedHeader":this[Y1]=cAe.parse(this[wh],this[Y1],!0);break;case"NextFileHasLongPath":case"OldGnuLongPath":this[Zl]=this[Zl]||Object.create(null),this[Zl].path=this[wh].replace(/\0.*/,"");break;case"NextFileHasLongLinkpath":this[Zl]=this[Zl]||Object.create(null),this[Zl].linkpath=this[wh].replace(/\0.*/,"");break;default:throw new Error("unknown meta: "+e.type)}}abort(e){this[Ih]=!0,this.emit("abort",e),this.warn("TAR_ABORT",e,{recoverable:!1})}write(e){if(this[Ih])return;if(this[Fa]===null&&e){if(this[fi]&&(e=Buffer.concat([this[fi],e]),this[fi]=null),e.lengththis[xx](n)),this[Fa].on("error",n=>this.abort(n)),this[Fa].on("end",n=>{this[Od]=!0,this[xx]()}),this[W1]=!0;let a=this[Fa][o?"end":"write"](e);return this[W1]=!1,a}}this[W1]=!0,this[Fa]?this[Fa].write(e):this[xx](e),this[W1]=!1;let r=this[qf].length?!1:this[jf]?this[jf].flowing:!0;return!r&&!this[qf].length&&this[jf].once("drain",o=>this.emit("drain")),r}[T3](e){e&&!this[Ih]&&(this[fi]=this[fi]?Buffer.concat([this[fi],e]):e)}[N3](){if(this[Od]&&!this[fAe]&&!this[Ih]&&!this[Qx]){this[fAe]=!0;let e=this[Ld];if(e&&e.blockRemain){let r=this[fi]?this[fi].length:0;this.warn("TAR_BAD_ARCHIVE",`Truncated input (needed ${e.blockRemain} more bytes, only ${r} available)`,{entry:e}),this[fi]&&e.write(this[fi]),e.end()}this[Md](Fx)}}[xx](e){if(this[Qx])this[T3](e);else if(!e&&!this[fi])this[N3]();else{if(this[Qx]=!0,this[fi]){this[T3](e);let r=this[fi];this[fi]=null,this[kx](r)}else this[kx](e);for(;this[fi]&&this[fi].length>=512&&!this[Ih]&&!this[Tx];){let r=this[fi];this[fi]=null,this[kx](r)}this[Qx]=!1}(!this[fi]||this[Od])&&this[N3]()}[kx](e){let r=0,o=e.length;for(;r+512<=o&&!this[Ih]&&!this[Tx];)switch(this[Xl]){case"begin":case"header":this[hAe](e,r),r+=512;break;case"ignore":case"body":r+=this[R3](e,r);break;case"meta":r+=this[pAe](e,r);break;default:throw new Error("invalid state: "+this[Xl])}r{"use strict";var Rlt=NE(),mAe=Nx(),$E=Be("fs"),Tlt=ZE(),dAe=Be("path"),L3=qE();EAe.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 o=Rlt(t);if(o.sync&&typeof r=="function")throw new TypeError("callback not supported for sync tar functions");if(!o.file&&typeof r=="function")throw new TypeError("callback only supported with file option");return e.length&&Llt(o,e),o.noResume||Nlt(o),o.file&&o.sync?Olt(o):o.file?Mlt(o,r):yAe(o)};var Nlt=t=>{let e=t.onentry;t.onentry=e?r=>{e(r),r.resume()}:r=>r.resume()},Llt=(t,e)=>{let r=new Map(e.map(n=>[L3(n),!0])),o=t.filter,a=(n,u)=>{let A=u||dAe.parse(n).root||".",p=n===A?!1:r.has(n)?r.get(n):a(dAe.dirname(n),A);return r.set(n,p),p};t.filter=o?(n,u)=>o(n,u)&&a(L3(n)):n=>a(L3(n))},Olt=t=>{let e=yAe(t),r=t.file,o=!0,a;try{let n=$E.statSync(r),u=t.maxReadSize||16*1024*1024;if(n.size{let r=new mAe(t),o=t.maxReadSize||16*1024*1024,a=t.file,n=new Promise((u,A)=>{r.on("error",A),r.on("end",u),$E.stat(a,(p,h)=>{if(p)A(p);else{let C=new Tlt.ReadStream(a,{readSize:o,size:h.size});C.on("error",A),C.pipe(r)}})});return e?n.then(e,e):n},yAe=t=>new mAe(t)});var DAe=_((lUt,vAe)=>{"use strict";var Ult=NE(),Ox=wx(),CAe=ZE(),wAe=Lx(),IAe=Be("path");vAe.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 o=Ult(t);if(o.sync&&typeof r=="function")throw new TypeError("callback not supported for sync tar functions");if(!o.file&&typeof r=="function")throw new TypeError("callback only supported with file option");return o.file&&o.sync?_lt(o,e):o.file?Hlt(o,e,r):o.sync?jlt(o,e):qlt(o,e)};var _lt=(t,e)=>{let r=new Ox.Sync(t),o=new CAe.WriteStreamSync(t.file,{mode:t.mode||438});r.pipe(o),BAe(r,e)},Hlt=(t,e,r)=>{let o=new Ox(t),a=new CAe.WriteStream(t.file,{mode:t.mode||438});o.pipe(a);let n=new Promise((u,A)=>{a.on("error",A),a.on("close",u),o.on("error",A)});return O3(o,e),r?n.then(r,r):n},BAe=(t,e)=>{e.forEach(r=>{r.charAt(0)==="@"?wAe({file:IAe.resolve(t.cwd,r.substr(1)),sync:!0,noResume:!0,onentry:o=>t.add(o)}):t.add(r)}),t.end()},O3=(t,e)=>{for(;e.length;){let r=e.shift();if(r.charAt(0)==="@")return wAe({file:IAe.resolve(t.cwd,r.substr(1)),noResume:!0,onentry:o=>t.add(o)}).then(o=>O3(t,e));t.add(r)}t.end()},jlt=(t,e)=>{let r=new Ox.Sync(t);return BAe(r,e),r},qlt=(t,e)=>{let r=new Ox(t);return O3(r,e),r}});var M3=_((cUt,FAe)=>{"use strict";var Glt=NE(),PAe=wx(),Al=Be("fs"),SAe=ZE(),bAe=Lx(),xAe=Be("path"),kAe=jE();FAe.exports=(t,e,r)=>{let o=Glt(t);if(!o.file)throw new TypeError("file is required");if(o.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),o.sync?Ylt(o,e):Klt(o,e,r)};var Ylt=(t,e)=>{let r=new PAe.Sync(t),o=!0,a,n;try{try{a=Al.openSync(t.file,"r+")}catch(p){if(p.code==="ENOENT")a=Al.openSync(t.file,"w+");else throw p}let u=Al.fstatSync(a),A=Buffer.alloc(512);e:for(n=0;nu.size)break;n+=h,t.mtimeCache&&t.mtimeCache.set(p.path,p.mtime)}o=!1,Wlt(t,r,n,a,e)}finally{if(o)try{Al.closeSync(a)}catch{}}},Wlt=(t,e,r,o,a)=>{let n=new SAe.WriteStreamSync(t.file,{fd:o,start:r});e.pipe(n),Vlt(e,a)},Klt=(t,e,r)=>{e=Array.from(e);let o=new PAe(t),a=(u,A,p)=>{let h=(E,R)=>{E?Al.close(u,L=>p(E)):p(null,R)},C=0;if(A===0)return h(null,0);let I=0,v=Buffer.alloc(512),x=(E,R)=>{if(E)return h(E);if(I+=R,I<512&&R)return Al.read(u,v,I,v.length-I,C+I,x);if(C===0&&v[0]===31&&v[1]===139)return h(new Error("cannot append to compressed archives"));if(I<512)return h(null,C);let L=new kAe(v);if(!L.cksumValid)return h(null,C);let U=512*Math.ceil(L.size/512);if(C+U+512>A||(C+=U+512,C>=A))return h(null,C);t.mtimeCache&&t.mtimeCache.set(L.path,L.mtime),I=0,Al.read(u,v,0,512,C,x)};Al.read(u,v,0,512,C,x)},n=new Promise((u,A)=>{o.on("error",A);let p="r+",h=(C,I)=>{if(C&&C.code==="ENOENT"&&p==="r+")return p="w+",Al.open(t.file,p,h);if(C)return A(C);Al.fstat(I,(v,x)=>{if(v)return Al.close(I,()=>A(v));a(I,x.size,(E,R)=>{if(E)return A(E);let L=new SAe.WriteStream(t.file,{fd:I,start:R});o.pipe(L),L.on("error",A),L.on("close",u),QAe(o,e)})})};Al.open(t.file,p,h)});return r?n.then(r,r):n},Vlt=(t,e)=>{e.forEach(r=>{r.charAt(0)==="@"?bAe({file:xAe.resolve(t.cwd,r.substr(1)),sync:!0,noResume:!0,onentry:o=>t.add(o)}):t.add(r)}),t.end()},QAe=(t,e)=>{for(;e.length;){let r=e.shift();if(r.charAt(0)==="@")return bAe({file:xAe.resolve(t.cwd,r.substr(1)),noResume:!0,onentry:o=>t.add(o)}).then(o=>QAe(t,e));t.add(r)}t.end()}});var TAe=_((uUt,RAe)=>{"use strict";var zlt=NE(),Jlt=M3();RAe.exports=(t,e,r)=>{let o=zlt(t);if(!o.file)throw new TypeError("file is required");if(o.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),Xlt(o),Jlt(o,e,r)};var Xlt=t=>{let e=t.filter;t.mtimeCache||(t.mtimeCache=new Map),t.filter=e?(r,o)=>e(r,o)&&!(t.mtimeCache.get(r)>o.mtime):(r,o)=>!(t.mtimeCache.get(r)>o.mtime)}});var OAe=_((AUt,LAe)=>{var{promisify:NAe}=Be("util"),Bh=Be("fs"),Zlt=t=>{if(!t)t={mode:511,fs:Bh};else if(typeof t=="object")t={mode:511,fs:Bh,...t};else if(typeof t=="number")t={mode:t,fs:Bh};else if(typeof t=="string")t={mode:parseInt(t,8),fs:Bh};else throw new TypeError("invalid options argument");return t.mkdir=t.mkdir||t.fs.mkdir||Bh.mkdir,t.mkdirAsync=NAe(t.mkdir),t.stat=t.stat||t.fs.stat||Bh.stat,t.statAsync=NAe(t.stat),t.statSync=t.statSync||t.fs.statSync||Bh.statSync,t.mkdirSync=t.mkdirSync||t.fs.mkdirSync||Bh.mkdirSync,t};LAe.exports=Zlt});var UAe=_((fUt,MAe)=>{var $lt=process.platform,{resolve:ect,parse:tct}=Be("path"),rct=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=ect(t),$lt==="win32"){let e=/[*|"<>?:]/,{root:r}=tct(t);if(e.test(t.substr(r.length)))throw Object.assign(new Error("Illegal characters in path."),{path:t,code:"EINVAL"})}return t};MAe.exports=rct});var GAe=_((pUt,qAe)=>{var{dirname:_Ae}=Be("path"),HAe=(t,e,r=void 0)=>r===e?Promise.resolve():t.statAsync(e).then(o=>o.isDirectory()?r:void 0,o=>o.code==="ENOENT"?HAe(t,_Ae(e),e):void 0),jAe=(t,e,r=void 0)=>{if(r!==e)try{return t.statSync(e).isDirectory()?r:void 0}catch(o){return o.code==="ENOENT"?jAe(t,_Ae(e),e):void 0}};qAe.exports={findMade:HAe,findMadeSync:jAe}});var H3=_((hUt,WAe)=>{var{dirname:YAe}=Be("path"),U3=(t,e,r)=>{e.recursive=!1;let o=YAe(t);return o===t?e.mkdirAsync(t,e).catch(a=>{if(a.code!=="EISDIR")throw a}):e.mkdirAsync(t,e).then(()=>r||t,a=>{if(a.code==="ENOENT")return U3(o,e).then(n=>U3(t,e,n));if(a.code!=="EEXIST"&&a.code!=="EROFS")throw a;return e.statAsync(t).then(n=>{if(n.isDirectory())return r;throw a},()=>{throw a})})},_3=(t,e,r)=>{let o=YAe(t);if(e.recursive=!1,o===t)try{return e.mkdirSync(t,e)}catch(a){if(a.code!=="EISDIR")throw a;return}try{return e.mkdirSync(t,e),r||t}catch(a){if(a.code==="ENOENT")return _3(t,e,_3(o,e,r));if(a.code!=="EEXIST"&&a.code!=="EROFS")throw a;try{if(!e.statSync(t).isDirectory())throw a}catch{throw a}}};WAe.exports={mkdirpManual:U3,mkdirpManualSync:_3}});var zAe=_((gUt,VAe)=>{var{dirname:KAe}=Be("path"),{findMade:nct,findMadeSync:ict}=GAe(),{mkdirpManual:sct,mkdirpManualSync:oct}=H3(),act=(t,e)=>(e.recursive=!0,KAe(t)===t?e.mkdirAsync(t,e):nct(e,t).then(o=>e.mkdirAsync(t,e).then(()=>o).catch(a=>{if(a.code==="ENOENT")return sct(t,e);throw a}))),lct=(t,e)=>{if(e.recursive=!0,KAe(t)===t)return e.mkdirSync(t,e);let o=ict(e,t);try{return e.mkdirSync(t,e),o}catch(a){if(a.code==="ENOENT")return oct(t,e);throw a}};VAe.exports={mkdirpNative:act,mkdirpNativeSync:lct}});var $Ae=_((dUt,ZAe)=>{var JAe=Be("fs"),cct=process.version,j3=cct.replace(/^v/,"").split("."),XAe=+j3[0]>10||+j3[0]==10&&+j3[1]>=12,uct=XAe?t=>t.mkdir===JAe.mkdir:()=>!1,Act=XAe?t=>t.mkdirSync===JAe.mkdirSync:()=>!1;ZAe.exports={useNative:uct,useNativeSync:Act}});var sfe=_((mUt,ife)=>{var eC=OAe(),tC=UAe(),{mkdirpNative:efe,mkdirpNativeSync:tfe}=zAe(),{mkdirpManual:rfe,mkdirpManualSync:nfe}=H3(),{useNative:fct,useNativeSync:pct}=$Ae(),rC=(t,e)=>(t=tC(t),e=eC(e),fct(e)?efe(t,e):rfe(t,e)),hct=(t,e)=>(t=tC(t),e=eC(e),pct(e)?tfe(t,e):nfe(t,e));rC.sync=hct;rC.native=(t,e)=>efe(tC(t),eC(e));rC.manual=(t,e)=>rfe(tC(t),eC(e));rC.nativeSync=(t,e)=>tfe(tC(t),eC(e));rC.manualSync=(t,e)=>nfe(tC(t),eC(e));ife.exports=rC});var ffe=_((yUt,Afe)=>{"use strict";var $l=Be("fs"),_d=Be("path"),gct=$l.lchown?"lchown":"chown",dct=$l.lchownSync?"lchownSync":"chownSync",afe=$l.lchown&&!process.version.match(/v1[1-9]+\./)&&!process.version.match(/v10\.[6-9]/),ofe=(t,e,r)=>{try{return $l[dct](t,e,r)}catch(o){if(o.code!=="ENOENT")throw o}},mct=(t,e,r)=>{try{return $l.chownSync(t,e,r)}catch(o){if(o.code!=="ENOENT")throw o}},yct=afe?(t,e,r,o)=>a=>{!a||a.code!=="EISDIR"?o(a):$l.chown(t,e,r,o)}:(t,e,r,o)=>o,q3=afe?(t,e,r)=>{try{return ofe(t,e,r)}catch(o){if(o.code!=="EISDIR")throw o;mct(t,e,r)}}:(t,e,r)=>ofe(t,e,r),Ect=process.version,lfe=(t,e,r)=>$l.readdir(t,e,r),Cct=(t,e)=>$l.readdirSync(t,e);/^v4\./.test(Ect)&&(lfe=(t,e,r)=>$l.readdir(t,r));var Mx=(t,e,r,o)=>{$l[gct](t,e,r,yct(t,e,r,a=>{o(a&&a.code!=="ENOENT"?a:null)}))},cfe=(t,e,r,o,a)=>{if(typeof e=="string")return $l.lstat(_d.resolve(t,e),(n,u)=>{if(n)return a(n.code!=="ENOENT"?n:null);u.name=e,cfe(t,u,r,o,a)});if(e.isDirectory())G3(_d.resolve(t,e.name),r,o,n=>{if(n)return a(n);let u=_d.resolve(t,e.name);Mx(u,r,o,a)});else{let n=_d.resolve(t,e.name);Mx(n,r,o,a)}},G3=(t,e,r,o)=>{lfe(t,{withFileTypes:!0},(a,n)=>{if(a){if(a.code==="ENOENT")return o();if(a.code!=="ENOTDIR"&&a.code!=="ENOTSUP")return o(a)}if(a||!n.length)return Mx(t,e,r,o);let u=n.length,A=null,p=h=>{if(!A){if(h)return o(A=h);if(--u===0)return Mx(t,e,r,o)}};n.forEach(h=>cfe(t,h,e,r,p))})},wct=(t,e,r,o)=>{if(typeof e=="string")try{let a=$l.lstatSync(_d.resolve(t,e));a.name=e,e=a}catch(a){if(a.code==="ENOENT")return;throw a}e.isDirectory()&&ufe(_d.resolve(t,e.name),r,o),q3(_d.resolve(t,e.name),r,o)},ufe=(t,e,r)=>{let o;try{o=Cct(t,{withFileTypes:!0})}catch(a){if(a.code==="ENOENT")return;if(a.code==="ENOTDIR"||a.code==="ENOTSUP")return q3(t,e,r);throw a}return o&&o.length&&o.forEach(a=>wct(t,a,e,r)),q3(t,e,r)};Afe.exports=G3;G3.sync=ufe});var dfe=_((EUt,Y3)=>{"use strict";var pfe=sfe(),ec=Be("fs"),Ux=Be("path"),hfe=ffe(),Wc=_E(),_x=class extends Error{constructor(e,r){super("Cannot extract through symbolic link"),this.path=r,this.symlink=e}get name(){return"SylinkError"}},Hx=class extends Error{constructor(e,r){super(r+": Cannot cd into '"+e+"'"),this.path=e,this.code=r}get name(){return"CwdError"}},jx=(t,e)=>t.get(Wc(e)),K1=(t,e,r)=>t.set(Wc(e),r),Ict=(t,e)=>{ec.stat(t,(r,o)=>{(r||!o.isDirectory())&&(r=new Hx(t,r&&r.code||"ENOTDIR")),e(r)})};Y3.exports=(t,e,r)=>{t=Wc(t);let o=e.umask,a=e.mode|448,n=(a&o)!==0,u=e.uid,A=e.gid,p=typeof u=="number"&&typeof A=="number"&&(u!==e.processUid||A!==e.processGid),h=e.preserve,C=e.unlink,I=e.cache,v=Wc(e.cwd),x=(L,U)=>{L?r(L):(K1(I,t,!0),U&&p?hfe(U,u,A,z=>x(z)):n?ec.chmod(t,a,r):r())};if(I&&jx(I,t)===!0)return x();if(t===v)return Ict(t,x);if(h)return pfe(t,{mode:a}).then(L=>x(null,L),x);let R=Wc(Ux.relative(v,t)).split("/");qx(v,R,a,I,C,v,null,x)};var qx=(t,e,r,o,a,n,u,A)=>{if(!e.length)return A(null,u);let p=e.shift(),h=Wc(Ux.resolve(t+"/"+p));if(jx(o,h))return qx(h,e,r,o,a,n,u,A);ec.mkdir(h,r,gfe(h,e,r,o,a,n,u,A))},gfe=(t,e,r,o,a,n,u,A)=>p=>{p?ec.lstat(t,(h,C)=>{if(h)h.path=h.path&&Wc(h.path),A(h);else if(C.isDirectory())qx(t,e,r,o,a,n,u,A);else if(a)ec.unlink(t,I=>{if(I)return A(I);ec.mkdir(t,r,gfe(t,e,r,o,a,n,u,A))});else{if(C.isSymbolicLink())return A(new _x(t,t+"/"+e.join("/")));A(p)}}):(u=u||t,qx(t,e,r,o,a,n,u,A))},Bct=t=>{let e=!1,r="ENOTDIR";try{e=ec.statSync(t).isDirectory()}catch(o){r=o.code}finally{if(!e)throw new Hx(t,r)}};Y3.exports.sync=(t,e)=>{t=Wc(t);let r=e.umask,o=e.mode|448,a=(o&r)!==0,n=e.uid,u=e.gid,A=typeof n=="number"&&typeof u=="number"&&(n!==e.processUid||u!==e.processGid),p=e.preserve,h=e.unlink,C=e.cache,I=Wc(e.cwd),v=L=>{K1(C,t,!0),L&&A&&hfe.sync(L,n,u),a&&ec.chmodSync(t,o)};if(C&&jx(C,t)===!0)return v();if(t===I)return Bct(I),v();if(p)return v(pfe.sync(t,o));let E=Wc(Ux.relative(I,t)).split("/"),R=null;for(let L=E.shift(),U=I;L&&(U+="/"+L);L=E.shift())if(U=Wc(Ux.resolve(U)),!jx(C,U))try{ec.mkdirSync(U,o),R=R||U,K1(C,U,!0)}catch{let te=ec.lstatSync(U);if(te.isDirectory()){K1(C,U,!0);continue}else if(h){ec.unlinkSync(U),ec.mkdirSync(U,o),R=R||U,K1(C,U,!0);continue}else if(te.isSymbolicLink())return new _x(U,U+"/"+E.join("/"))}return v(R)}});var K3=_((CUt,mfe)=>{var W3=Object.create(null),{hasOwnProperty:vct}=Object.prototype;mfe.exports=t=>(vct.call(W3,t)||(W3[t]=t.normalize("NFKD")),W3[t])});var wfe=_((wUt,Cfe)=>{var yfe=Be("assert"),Dct=K3(),Pct=qE(),{join:Efe}=Be("path"),Sct=process.env.TESTING_TAR_FAKE_PLATFORM||process.platform,bct=Sct==="win32";Cfe.exports=()=>{let t=new Map,e=new Map,r=h=>h.split("/").slice(0,-1).reduce((I,v)=>(I.length&&(v=Efe(I[I.length-1],v)),I.push(v||"/"),I),[]),o=new Set,a=h=>{let C=e.get(h);if(!C)throw new Error("function does not have any path reservations");return{paths:C.paths.map(I=>t.get(I)),dirs:[...C.dirs].map(I=>t.get(I))}},n=h=>{let{paths:C,dirs:I}=a(h);return C.every(v=>v[0]===h)&&I.every(v=>v[0]instanceof Set&&v[0].has(h))},u=h=>o.has(h)||!n(h)?!1:(o.add(h),h(()=>A(h)),!0),A=h=>{if(!o.has(h))return!1;let{paths:C,dirs:I}=e.get(h),v=new Set;return C.forEach(x=>{let E=t.get(x);yfe.equal(E[0],h),E.length===1?t.delete(x):(E.shift(),typeof E[0]=="function"?v.add(E[0]):E[0].forEach(R=>v.add(R)))}),I.forEach(x=>{let E=t.get(x);yfe(E[0]instanceof Set),E[0].size===1&&E.length===1?t.delete(x):E[0].size===1?(E.shift(),v.add(E[0])):E[0].delete(h)}),o.delete(h),v.forEach(x=>u(x)),!0};return{check:n,reserve:(h,C)=>{h=bct?["win32 parallelization disabled"]:h.map(v=>Dct(Pct(Efe(v))).toLowerCase());let I=new Set(h.map(v=>r(v)).reduce((v,x)=>v.concat(x)));return e.set(C,{dirs:I,paths:h}),h.forEach(v=>{let x=t.get(v);x?x.push(C):t.set(v,[C])}),I.forEach(v=>{let x=t.get(v);x?x[x.length-1]instanceof Set?x[x.length-1].add(C):x.push(new Set([C])):t.set(v,[new Set([C])])}),u(C)}}}});var vfe=_((IUt,Bfe)=>{var xct=process.platform,kct=xct==="win32",Qct=global.__FAKE_TESTING_FS__||Be("fs"),{O_CREAT:Fct,O_TRUNC:Rct,O_WRONLY:Tct,UV_FS_O_FILEMAP:Ife=0}=Qct.constants,Nct=kct&&!!Ife,Lct=512*1024,Oct=Ife|Rct|Fct|Tct;Bfe.exports=Nct?t=>t"w"});var r_=_((BUt,Mfe)=>{"use strict";var Mct=Be("assert"),Uct=Nx(),vn=Be("fs"),_ct=ZE(),Gf=Be("path"),Nfe=dfe(),Dfe=r3(),Hct=wfe(),jct=n3(),fl=_E(),qct=qE(),Gct=K3(),Pfe=Symbol("onEntry"),J3=Symbol("checkFs"),Sfe=Symbol("checkFs2"),Wx=Symbol("pruneCache"),X3=Symbol("isReusable"),tc=Symbol("makeFs"),Z3=Symbol("file"),$3=Symbol("directory"),Kx=Symbol("link"),bfe=Symbol("symlink"),xfe=Symbol("hardlink"),kfe=Symbol("unsupported"),Qfe=Symbol("checkPath"),vh=Symbol("mkdir"),To=Symbol("onError"),Gx=Symbol("pending"),Ffe=Symbol("pend"),nC=Symbol("unpend"),V3=Symbol("ended"),z3=Symbol("maybeClose"),e_=Symbol("skip"),V1=Symbol("doChown"),z1=Symbol("uid"),J1=Symbol("gid"),X1=Symbol("checkedCwd"),Lfe=Be("crypto"),Ofe=vfe(),Yct=process.env.TESTING_TAR_FAKE_PLATFORM||process.platform,Z1=Yct==="win32",Wct=(t,e)=>{if(!Z1)return vn.unlink(t,e);let r=t+".DELETE."+Lfe.randomBytes(16).toString("hex");vn.rename(t,r,o=>{if(o)return e(o);vn.unlink(r,e)})},Kct=t=>{if(!Z1)return vn.unlinkSync(t);let e=t+".DELETE."+Lfe.randomBytes(16).toString("hex");vn.renameSync(t,e),vn.unlinkSync(e)},Rfe=(t,e,r)=>t===t>>>0?t:e===e>>>0?e:r,Tfe=t=>Gct(qct(fl(t))).toLowerCase(),Vct=(t,e)=>{e=Tfe(e);for(let r of t.keys()){let o=Tfe(r);(o===e||o.indexOf(e+"/")===0)&&t.delete(r)}},zct=t=>{for(let e of t.keys())t.delete(e)},$1=class extends Uct{constructor(e){if(e||(e={}),e.ondone=r=>{this[V3]=!0,this[z3]()},super(e),this[X1]=!1,this.reservations=Hct(),this.transform=typeof e.transform=="function"?e.transform:null,this.writable=!0,this.readable=!1,this[Gx]=0,this[V3]=!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||Z1,this.newer=!!e.newer,this.keep=!!e.keep,this.noMtime=!!e.noMtime,this.preservePaths=!!e.preservePaths,this.unlink=!!e.unlink,this.cwd=fl(Gf.resolve(e.cwd||process.cwd())),this.strip=+e.strip||0,this.processUmask=e.noChmod?0: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[Pfe](r))}warn(e,r,o={}){return(e==="TAR_BAD_ARCHIVE"||e==="TAR_ABORT")&&(o.recoverable=!1),super.warn(e,r,o)}[z3](){this[V3]&&this[Gx]===0&&(this.emit("prefinish"),this.emit("finish"),this.emit("end"),this.emit("close"))}[Qfe](e){if(this.strip){let r=fl(e.path).split("/");if(r.length=this.strip)e.linkpath=o.slice(this.strip).join("/");else return!1}}if(!this.preservePaths){let r=fl(e.path),o=r.split("/");if(o.includes("..")||Z1&&/^[a-z]:\.\.$/i.test(o[0]))return this.warn("TAR_ENTRY_ERROR","path contains '..'",{entry:e,path:r}),!1;let[a,n]=jct(r);a&&(e.path=n,this.warn("TAR_ENTRY_INFO",`stripping ${a} from absolute path`,{entry:e,path:r}))}if(Gf.isAbsolute(e.path)?e.absolute=fl(Gf.resolve(e.path)):e.absolute=fl(Gf.resolve(this.cwd,e.path)),!this.preservePaths&&e.absolute.indexOf(this.cwd+"/")!==0&&e.absolute!==this.cwd)return this.warn("TAR_ENTRY_ERROR","path escaped extraction target",{entry:e,path:fl(e.path),resolvedPath:e.absolute,cwd:this.cwd}),!1;if(e.absolute===this.cwd&&e.type!=="Directory"&&e.type!=="GNUDumpDir")return!1;if(this.win32){let{root:r}=Gf.win32.parse(e.absolute);e.absolute=r+Dfe.encode(e.absolute.substr(r.length));let{root:o}=Gf.win32.parse(e.path);e.path=o+Dfe.encode(e.path.substr(o.length))}return!0}[Pfe](e){if(!this[Qfe](e))return e.resume();switch(Mct.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[J3](e);case"CharacterDevice":case"BlockDevice":case"FIFO":default:return this[kfe](e)}}[To](e,r){e.name==="CwdError"?this.emit("error",e):(this.warn("TAR_ENTRY_ERROR",e,{entry:r}),this[nC](),r.resume())}[vh](e,r,o){Nfe(fl(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,noChmod:this.noChmod},o)}[V1](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}[z1](e){return Rfe(this.uid,e.uid,this.processUid)}[J1](e){return Rfe(this.gid,e.gid,this.processGid)}[Z3](e,r){let o=e.mode&4095||this.fmode,a=new _ct.WriteStream(e.absolute,{flags:Ofe(e.size),mode:o,autoClose:!1});a.on("error",p=>{a.fd&&vn.close(a.fd,()=>{}),a.write=()=>!0,this[To](p,e),r()});let n=1,u=p=>{if(p){a.fd&&vn.close(a.fd,()=>{}),this[To](p,e),r();return}--n===0&&vn.close(a.fd,h=>{h?this[To](h,e):this[nC](),r()})};a.on("finish",p=>{let h=e.absolute,C=a.fd;if(e.mtime&&!this.noMtime){n++;let I=e.atime||new Date,v=e.mtime;vn.futimes(C,I,v,x=>x?vn.utimes(h,I,v,E=>u(E&&x)):u())}if(this[V1](e)){n++;let I=this[z1](e),v=this[J1](e);vn.fchown(C,I,v,x=>x?vn.chown(h,I,v,E=>u(E&&x)):u())}u()});let A=this.transform&&this.transform(e)||e;A!==e&&(A.on("error",p=>{this[To](p,e),r()}),e.pipe(A)),A.pipe(a)}[$3](e,r){let o=e.mode&4095||this.dmode;this[vh](e.absolute,o,a=>{if(a){this[To](a,e),r();return}let n=1,u=A=>{--n===0&&(r(),this[nC](),e.resume())};e.mtime&&!this.noMtime&&(n++,vn.utimes(e.absolute,e.atime||new Date,e.mtime,u)),this[V1](e)&&(n++,vn.chown(e.absolute,this[z1](e),this[J1](e),u)),u()})}[kfe](e){e.unsupported=!0,this.warn("TAR_ENTRY_UNSUPPORTED",`unsupported entry type: ${e.type}`,{entry:e}),e.resume()}[bfe](e,r){this[Kx](e,e.linkpath,"symlink",r)}[xfe](e,r){let o=fl(Gf.resolve(this.cwd,e.linkpath));this[Kx](e,o,"link",r)}[Ffe](){this[Gx]++}[nC](){this[Gx]--,this[z3]()}[e_](e){this[nC](),e.resume()}[X3](e,r){return e.type==="File"&&!this.unlink&&r.isFile()&&r.nlink<=1&&!Z1}[J3](e){this[Ffe]();let r=[e.path];e.linkpath&&r.push(e.linkpath),this.reservations.reserve(r,o=>this[Sfe](e,o))}[Wx](e){e.type==="SymbolicLink"?zct(this.dirCache):e.type!=="Directory"&&Vct(this.dirCache,e.absolute)}[Sfe](e,r){this[Wx](e);let o=A=>{this[Wx](e),r(A)},a=()=>{this[vh](this.cwd,this.dmode,A=>{if(A){this[To](A,e),o();return}this[X1]=!0,n()})},n=()=>{if(e.absolute!==this.cwd){let A=fl(Gf.dirname(e.absolute));if(A!==this.cwd)return this[vh](A,this.dmode,p=>{if(p){this[To](p,e),o();return}u()})}u()},u=()=>{vn.lstat(e.absolute,(A,p)=>{if(p&&(this.keep||this.newer&&p.mtime>e.mtime)){this[e_](e),o();return}if(A||this[X3](e,p))return this[tc](null,e,o);if(p.isDirectory()){if(e.type==="Directory"){let h=!this.noChmod&&e.mode&&(p.mode&4095)!==e.mode,C=I=>this[tc](I,e,o);return h?vn.chmod(e.absolute,e.mode,C):C()}if(e.absolute!==this.cwd)return vn.rmdir(e.absolute,h=>this[tc](h,e,o))}if(e.absolute===this.cwd)return this[tc](null,e,o);Wct(e.absolute,h=>this[tc](h,e,o))})};this[X1]?n():a()}[tc](e,r,o){if(e){this[To](e,r),o();return}switch(r.type){case"File":case"OldFile":case"ContiguousFile":return this[Z3](r,o);case"Link":return this[xfe](r,o);case"SymbolicLink":return this[bfe](r,o);case"Directory":case"GNUDumpDir":return this[$3](r,o)}}[Kx](e,r,o,a){vn[o](r,e.absolute,n=>{n?this[To](n,e):(this[nC](),e.resume()),a()})}},Yx=t=>{try{return[null,t()]}catch(e){return[e,null]}},t_=class extends $1{[tc](e,r){return super[tc](e,r,()=>{})}[J3](e){if(this[Wx](e),!this[X1]){let n=this[vh](this.cwd,this.dmode);if(n)return this[To](n,e);this[X1]=!0}if(e.absolute!==this.cwd){let n=fl(Gf.dirname(e.absolute));if(n!==this.cwd){let u=this[vh](n,this.dmode);if(u)return this[To](u,e)}}let[r,o]=Yx(()=>vn.lstatSync(e.absolute));if(o&&(this.keep||this.newer&&o.mtime>e.mtime))return this[e_](e);if(r||this[X3](e,o))return this[tc](null,e);if(o.isDirectory()){if(e.type==="Directory"){let u=!this.noChmod&&e.mode&&(o.mode&4095)!==e.mode,[A]=u?Yx(()=>{vn.chmodSync(e.absolute,e.mode)}):[];return this[tc](A,e)}let[n]=Yx(()=>vn.rmdirSync(e.absolute));this[tc](n,e)}let[a]=e.absolute===this.cwd?[]:Yx(()=>Kct(e.absolute));this[tc](a,e)}[Z3](e,r){let o=e.mode&4095||this.fmode,a=A=>{let p;try{vn.closeSync(n)}catch(h){p=h}(A||p)&&this[To](A||p,e),r()},n;try{n=vn.openSync(e.absolute,Ofe(e.size),o)}catch(A){return a(A)}let u=this.transform&&this.transform(e)||e;u!==e&&(u.on("error",A=>this[To](A,e)),e.pipe(u)),u.on("data",A=>{try{vn.writeSync(n,A,0,A.length)}catch(p){a(p)}}),u.on("end",A=>{let p=null;if(e.mtime&&!this.noMtime){let h=e.atime||new Date,C=e.mtime;try{vn.futimesSync(n,h,C)}catch(I){try{vn.utimesSync(e.absolute,h,C)}catch{p=I}}}if(this[V1](e)){let h=this[z1](e),C=this[J1](e);try{vn.fchownSync(n,h,C)}catch(I){try{vn.chownSync(e.absolute,h,C)}catch{p=p||I}}}a(p)})}[$3](e,r){let o=e.mode&4095||this.dmode,a=this[vh](e.absolute,o);if(a){this[To](a,e),r();return}if(e.mtime&&!this.noMtime)try{vn.utimesSync(e.absolute,e.atime||new Date,e.mtime)}catch{}if(this[V1](e))try{vn.chownSync(e.absolute,this[z1](e),this[J1](e))}catch{}r(),e.resume()}[vh](e,r){try{return Nfe.sync(fl(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(o){return o}}[Kx](e,r,o,a){try{vn[o+"Sync"](r,e.absolute),a(),e.resume()}catch(n){return this[To](n,e)}}};$1.Sync=t_;Mfe.exports=$1});var qfe=_((vUt,jfe)=>{"use strict";var Jct=NE(),Vx=r_(),_fe=Be("fs"),Hfe=ZE(),Ufe=Be("path"),n_=qE();jfe.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 o=Jct(t);if(o.sync&&typeof r=="function")throw new TypeError("callback not supported for sync tar functions");if(!o.file&&typeof r=="function")throw new TypeError("callback only supported with file option");return e.length&&Xct(o,e),o.file&&o.sync?Zct(o):o.file?$ct(o,r):o.sync?eut(o):tut(o)};var Xct=(t,e)=>{let r=new Map(e.map(n=>[n_(n),!0])),o=t.filter,a=(n,u)=>{let A=u||Ufe.parse(n).root||".",p=n===A?!1:r.has(n)?r.get(n):a(Ufe.dirname(n),A);return r.set(n,p),p};t.filter=o?(n,u)=>o(n,u)&&a(n_(n)):n=>a(n_(n))},Zct=t=>{let e=new Vx.Sync(t),r=t.file,o=_fe.statSync(r),a=t.maxReadSize||16*1024*1024;new Hfe.ReadStreamSync(r,{readSize:a,size:o.size}).pipe(e)},$ct=(t,e)=>{let r=new Vx(t),o=t.maxReadSize||16*1024*1024,a=t.file,n=new Promise((u,A)=>{r.on("error",A),r.on("close",u),_fe.stat(a,(p,h)=>{if(p)A(p);else{let C=new Hfe.ReadStream(a,{readSize:o,size:h.size});C.on("error",A),C.pipe(r)}})});return e?n.then(e,e):n},eut=t=>new Vx.Sync(t),tut=t=>new Vx(t)});var Gfe=_(us=>{"use strict";us.c=us.create=DAe();us.r=us.replace=M3();us.t=us.list=Lx();us.u=us.update=TAe();us.x=us.extract=qfe();us.Pack=wx();us.Unpack=r_();us.Parse=Nx();us.ReadEntry=ix();us.WriteEntry=p3();us.Header=jE();us.Pax=ox();us.types=zU()});var i_,Yfe,Dh,e2,t2,Wfe=Et(()=>{i_=$e(rd()),Yfe=Be("worker_threads"),Dh=Symbol("kTaskInfo"),e2=class{constructor(e,r){this.fn=e;this.limit=(0,i_.default)(r.poolSize)}run(e){return this.limit(()=>this.fn(e))}},t2=class{constructor(e,r){this.source=e;this.workers=[];this.limit=(0,i_.default)(r.poolSize),this.cleanupInterval=setInterval(()=>{if(this.limit.pendingCount===0&&this.limit.activeCount===0){let o=this.workers.pop();o?o.terminate():clearInterval(this.cleanupInterval)}},5e3).unref()}createWorker(){this.cleanupInterval.refresh();let e=new Yfe.Worker(this.source,{eval:!0,execArgv:[...process.execArgv,"--unhandled-rejections=strict"]});return e.on("message",r=>{if(!e[Dh])throw new Error("Assertion failed: Worker sent a result without having a task assigned");e[Dh].resolve(r),e[Dh]=null,e.unref(),this.workers.push(e)}),e.on("error",r=>{e[Dh]?.reject(r),e[Dh]=null}),e.on("exit",r=>{r!==0&&e[Dh]?.reject(new Error(`Worker exited with code ${r}`)),e[Dh]=null}),e}run(e){return this.limit(()=>{let r=this.workers.pop()??this.createWorker();return r.ref(),new Promise((o,a)=>{r[Dh]={resolve:o,reject:a},r.postMessage(e)})})}}});var Vfe=_((bUt,Kfe)=>{var s_;Kfe.exports.getContent=()=>(typeof s_>"u"&&(s_=Be("zlib").brotliDecompressSync(Buffer.from("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","base64")).toString()),s_)});var Xi={};Vt(Xi,{convertToZip:()=>sut,convertToZipWorker:()=>l_,extractArchiveTo:()=>$fe,getDefaultTaskPool:()=>Xfe,getTaskPoolForConfiguration:()=>Zfe,makeArchiveFromDirectory:()=>iut});function rut(t,e){switch(t){case"async":return new e2(l_,{poolSize:e});case"workers":return new t2((0,a_.getContent)(),{poolSize:e});default:throw new Error(`Assertion failed: Unknown value ${t} for taskPoolMode`)}}function Xfe(){return typeof o_>"u"&&(o_=rut("workers",zi.availableParallelism())),o_}function Zfe(t){return typeof t>"u"?Xfe():ol(nut,t,()=>{let e=t.get("taskPoolMode"),r=t.get("taskPoolConcurrency");switch(e){case"async":return new e2(l_,{poolSize:r});case"workers":return new t2((0,a_.getContent)(),{poolSize:r});default:throw new Error(`Assertion failed: Unknown value ${e} for taskPoolMode`)}})}async function l_(t){let{tmpFile:e,tgz:r,compressionLevel:o,extractBufferOpts:a}=t,n=new Ji(e,{create:!0,level:o,stats:Ea.makeDefaultStats()}),u=Buffer.from(r.buffer,r.byteOffset,r.byteLength);return await $fe(u,n,a),n.saveAndClose(),e}async function iut(t,{baseFs:e=new Tn,prefixPath:r=Bt.root,compressionLevel:o,inMemory:a=!1}={}){let n;if(a)n=new Ji(null,{level:o});else{let A=await oe.mktempPromise(),p=V.join(A,"archive.zip");n=new Ji(p,{create:!0,level:o})}let u=V.resolve(Bt.root,r);return await n.copyPromise(u,t,{baseFs:e,stableTime:!0,stableSort:!0}),n}async function sut(t,e={}){let r=await oe.mktempPromise(),o=V.join(r,"archive.zip"),a=e.compressionLevel??e.configuration?.get("compressionLevel")??"mixed",n={prefixPath:e.prefixPath,stripComponents:e.stripComponents};return await(e.taskPool??Zfe(e.configuration)).run({tmpFile:o,tgz:t,compressionLevel:a,extractBufferOpts:n}),new Ji(o,{level:e.compressionLevel})}async function*out(t){let e=new Jfe.default.Parse,r=new zfe.PassThrough({objectMode:!0,autoDestroy:!0,emitClose:!0});e.on("entry",o=>{r.write(o)}),e.on("error",o=>{r.destroy(o)}),e.on("close",()=>{r.destroyed||r.end()}),e.end(t);for await(let o of r){let a=o;yield a,a.resume()}}async function $fe(t,e,{stripComponents:r=0,prefixPath:o=Bt.dot}={}){function a(n){if(n.path[0]==="/")return!0;let u=n.path.split(/\//g);return!!(u.some(A=>A==="..")||u.length<=r)}for await(let n of out(t)){if(a(n))continue;let u=V.normalize(ue.toPortablePath(n.path)).replace(/\/$/,"").split(/\//g);if(u.length<=r)continue;let A=u.slice(r).join("/"),p=V.join(o,A),h=420;switch((n.type==="Directory"||((n.mode??0)&73)!==0)&&(h|=73),n.type){case"Directory":e.mkdirpSync(V.dirname(p),{chmod:493,utimes:[vi.SAFE_TIME,vi.SAFE_TIME]}),e.mkdirSync(p,{mode:h}),e.utimesSync(p,vi.SAFE_TIME,vi.SAFE_TIME);break;case"OldFile":case"File":e.mkdirpSync(V.dirname(p),{chmod:493,utimes:[vi.SAFE_TIME,vi.SAFE_TIME]}),e.writeFileSync(p,await Wy(n),{mode:h}),e.utimesSync(p,vi.SAFE_TIME,vi.SAFE_TIME);break;case"SymbolicLink":e.mkdirpSync(V.dirname(p),{chmod:493,utimes:[vi.SAFE_TIME,vi.SAFE_TIME]}),e.symlinkSync(n.linkpath,p),e.lutimesSync(p,vi.SAFE_TIME,vi.SAFE_TIME);break}}return e}var zfe,Jfe,a_,o_,nut,epe=Et(()=>{Ye();Pt();nA();zfe=Be("stream"),Jfe=$e(Gfe());Wfe();jl();a_=$e(Vfe());nut=new WeakMap});var rpe=_((c_,tpe)=>{(function(t,e){typeof c_=="object"?tpe.exports=e():typeof define=="function"&&define.amd?define(e):t.treeify=e()})(c_,function(){function t(a,n){var u=n?"\u2514":"\u251C";return a?u+="\u2500 ":u+="\u2500\u2500\u2510",u}function e(a,n){var u=[];for(var A in a)!a.hasOwnProperty(A)||n&&typeof a[A]=="function"||u.push(A);return u}function r(a,n,u,A,p,h,C){var I="",v=0,x,E,R=A.slice(0);if(R.push([n,u])&&A.length>0&&(A.forEach(function(U,z){z>0&&(I+=(U[1]?" ":"\u2502")+" "),!E&&U[0]===n&&(E=!0)}),I+=t(a,u)+a,p&&(typeof n!="object"||n instanceof Date)&&(I+=": "+n),E&&(I+=" (circular ref.)"),C(I)),!E&&typeof n=="object"){var L=e(n,h);L.forEach(function(U){x=++v===L.length,r(U,n[U],x,R,p,h,C)})}}var o={};return o.asLines=function(a,n,u,A){var p=typeof u!="function"?u:!1;r(".",a,!1,[],n,p,A||u)},o.asTree=function(a,n,u){var A="";return r(".",a,!1,[],n,u,function(p){A+=p+` +`}),A},o})});var $s={};Vt($s,{emitList:()=>aut,emitTree:()=>ope,treeNodeToJson:()=>spe,treeNodeToTreeify:()=>ipe});function ipe(t,{configuration:e}){let r={},o=0,a=(n,u)=>{let A=Array.isArray(n)?n.entries():Object.entries(n);for(let[p,h]of A){if(!h)continue;let{label:C,value:I,children:v}=h,x=[];typeof C<"u"&&x.push(dd(e,C,2)),typeof I<"u"&&x.push(Mt(e,I[0],I[1])),x.length===0&&x.push(dd(e,`${p}`,2));let E=x.join(": ").trim(),R=`\0${o++}\0`,L=u[`${R}${E}`]={};typeof v<"u"&&a(v,L)}};if(typeof t.children>"u")throw new Error("The root node must only contain children");return a(t.children,r),r}function spe(t){let e=r=>{if(typeof r.children>"u"){if(typeof r.value>"u")throw new Error("Assertion failed: Expected a value to be set if the children are missing");return md(r.value[0],r.value[1])}let o=Array.isArray(r.children)?r.children.entries():Object.entries(r.children??{}),a=Array.isArray(r.children)?[]:{};for(let[n,u]of o)u&&(a[lut(n)]=e(u));return typeof r.value>"u"?a:{value:md(r.value[0],r.value[1]),children:a}};return e(t)}function aut(t,{configuration:e,stdout:r,json:o}){let a=t.map(n=>({value:n}));ope({children:a},{configuration:e,stdout:r,json:o})}function ope(t,{configuration:e,stdout:r,json:o,separators:a=0}){if(o){let u=Array.isArray(t.children)?t.children.values():Object.values(t.children??{});for(let A of u)A&&r.write(`${JSON.stringify(spe(A))} +`);return}let n=(0,npe.asTree)(ipe(t,{configuration:e}),!1,!1);if(n=n.replace(/\0[0-9]+\0/g,""),a>=1&&(n=n.replace(/^([├└]─)/gm,`\u2502 +$1`).replace(/^│\n/,"")),a>=2)for(let u=0;u<2;++u)n=n.replace(/^([│ ].{2}[├│ ].{2}[^\n]+\n)(([│ ]).{2}[├└].{2}[^\n]*\n[│ ].{2}[│ ].{2}[├└]─)/gm,`$1$3 \u2502 +$2`).replace(/^│\n/,"");if(a>=3)throw new Error("Only the first two levels are accepted by treeUtils.emitTree");r.write(n)}function lut(t){return typeof t=="string"?t.replace(/^\0[0-9]+\0/,""):t}var npe,ape=Et(()=>{npe=$e(rpe());ql()});function r2(t){let e=t.match(cut);if(!e?.groups)throw new Error("Assertion failed: Expected the checksum to match the requested pattern");let r=e.groups.cacheVersion?parseInt(e.groups.cacheVersion):null;return{cacheKey:e.groups.cacheKey??null,cacheVersion:r,cacheSpec:e.groups.cacheSpec??null,hash:e.groups.hash}}var lpe,u_,A_,zx,Lr,cut,f_=Et(()=>{Ye();Pt();Pt();nA();lpe=Be("crypto"),u_=$e(Be("fs"));Yl();rh();jl();bo();A_=Ky(process.env.YARN_CACHE_CHECKPOINT_OVERRIDE??process.env.YARN_CACHE_VERSION_OVERRIDE??9),zx=Ky(process.env.YARN_CACHE_VERSION_OVERRIDE??10),Lr=class{constructor(e,{configuration:r,immutable:o=r.get("enableImmutableCache"),check:a=!1}){this.markedFiles=new Set;this.mutexes=new Map;this.cacheId=`-${(0,lpe.randomBytes)(8).toString("hex")}.tmp`;this.configuration=r,this.cwd=e,this.immutable=o,this.check=a;let{cacheSpec:n,cacheKey:u}=Lr.getCacheKey(r);this.cacheSpec=n,this.cacheKey=u}static async find(e,{immutable:r,check:o}={}){let a=new Lr(e.get("cacheFolder"),{configuration:e,immutable:r,check:o});return await a.setup(),a}static getCacheKey(e){let r=e.get("compressionLevel"),o=r!=="mixed"?`c${r}`:"";return{cacheKey:[zx,o].join(""),cacheSpec:o}}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`${oE(e)}-${this.cacheKey}.zip`}getChecksumFilename(e,r){let a=r2(r).hash.slice(0,10);return`${oE(e)}-${a}.zip`}isChecksumCompatible(e){if(e===null)return!1;let{cacheVersion:r,cacheSpec:o}=r2(e);if(r===null||r{let ae=new Ji,Ie=V.join(Bt.root,sM(e));return ae.mkdirSync(Ie,{recursive:!0}),ae.writeJsonSync(V.join(Ie,dr.manifest),{name:fn(e),mocked:!0}),ae},C=async(ae,{isColdHit:Ie,controlPath:Fe=null})=>{if(Fe===null&&u.unstablePackages?.has(e.locatorHash))return{isValid:!0,hash:null};let g=r&&!Ie?r2(r).cacheKey:this.cacheKey,Ee=!u.skipIntegrityCheck||!r?`${g}/${await LS(ae)}`:r;if(Fe!==null){let ce=!u.skipIntegrityCheck||!r?`${this.cacheKey}/${await LS(Fe)}`:r;if(Ee!==ce)throw new Jt(18,"The remote archive doesn't match the local checksum - has the local cache been corrupted?")}let De=null;switch(r!==null&&Ee!==r&&(this.check?De="throw":r2(r).cacheKey!==r2(Ee).cacheKey?De="update":De=this.configuration.get("checksumBehavior")),De){case null:case"update":return{isValid:!0,hash:Ee};case"ignore":return{isValid:!0,hash:r};case"reset":return{isValid:!1,hash:r};default:case"throw":throw new Jt(18,"The remote archive doesn't match the expected checksum")}},I=async ae=>{if(!n)throw new Error(`Cache check required but no loader configured for ${jr(this.configuration,e)}`);let Ie=await n(),Fe=Ie.getRealPath();Ie.saveAndClose(),await oe.chmodPromise(Fe,420);let g=await C(ae,{controlPath:Fe,isColdHit:!1});if(!g.isValid)throw new Error("Assertion failed: Expected a valid checksum");return g.hash},v=async()=>{if(A===null||!await oe.existsPromise(A)){let ae=await n(),Ie=ae.getRealPath();return ae.saveAndClose(),{source:"loader",path:Ie}}return{source:"mirror",path:A}},x=async()=>{if(!n)throw new Error(`Cache entry required but missing for ${jr(this.configuration,e)}`);if(this.immutable)throw new Jt(56,`Cache entry required but missing for ${jr(this.configuration,e)}`);let{path:ae,source:Ie}=await v(),{hash:Fe}=await C(ae,{isColdHit:!0}),g=this.getLocatorPath(e,Fe),Ee=[];Ie!=="mirror"&&A!==null&&Ee.push(async()=>{let ce=`${A}${this.cacheId}`;await oe.copyFilePromise(ae,ce,u_.default.constants.COPYFILE_FICLONE),await oe.chmodPromise(ce,420),await oe.renamePromise(ce,A)}),(!u.mirrorWriteOnly||A===null)&&Ee.push(async()=>{let ce=`${g}${this.cacheId}`;await oe.copyFilePromise(ae,ce,u_.default.constants.COPYFILE_FICLONE),await oe.chmodPromise(ce,420),await oe.renamePromise(ce,g)});let De=u.mirrorWriteOnly?A??g:g;return await Promise.all(Ee.map(ce=>ce())),[!1,De,Fe]},E=async()=>{let Ie=(async()=>{let Fe=u.unstablePackages?.has(e.locatorHash),g=Fe||!r||this.isChecksumCompatible(r)?this.getLocatorPath(e,r):null,Ee=g!==null?this.markedFiles.has(g)||await p.existsPromise(g):!1,De=!!u.mockedPackages?.has(e.locatorHash)&&(!this.check||!Ee),ce=De||Ee,ne=ce?o:a;if(ne&&ne(),ce){let ee=null,we=g;if(!De)if(this.check)ee=await I(we);else{let xe=await C(we,{isColdHit:!1});if(xe.isValid)ee=xe.hash;else return x()}return[De,we,ee]}else{if(this.immutable&&Fe)throw new Jt(56,`Cache entry required but missing for ${jr(this.configuration,e)}; consider defining ${de.pretty(this.configuration,"supportedArchitectures",de.Type.CODE)} to cache packages for multiple systems`);return x()}})();this.mutexes.set(e.locatorHash,Ie);try{return await Ie}finally{this.mutexes.delete(e.locatorHash)}};for(let ae;ae=this.mutexes.get(e.locatorHash);)await ae;let[R,L,U]=await E();R||this.markedFiles.add(L);let z,te=R?()=>h():()=>new Ji(L,{baseFs:p,readOnly:!0}),le=new ry(()=>wL(()=>z=te(),ae=>`Failed to open the cache entry for ${jr(this.configuration,e)}: ${ae}`),V),he=new Uu(L,{baseFs:le,pathUtils:V}),Ae=()=>{z?.discardAndClose()},ye=u.unstablePackages?.has(e.locatorHash)?null:U;return[he,Ae,ye]}},cut=/^(?:(?(?[0-9]+)(?.*))\/)?(?.*)$/});var Jx,cpe=Et(()=>{Jx=(r=>(r[r.SCRIPT=0]="SCRIPT",r[r.SHELLCODE=1]="SHELLCODE",r))(Jx||{})});var uut,iC,p_=Et(()=>{Pt();Nl();xf();bo();uut=[[/^(git(?:\+(?:https|ssh))?:\/\/.*(?:\.git)?)#(.*)$/,(t,e,r,o)=>`${r}#commit=${o}`],[/^https:\/\/((?:[^/]+?)@)?codeload\.github\.com\/([^/]+\/[^/]+)\/tar\.gz\/([0-9a-f]+)$/,(t,e,r="",o,a)=>`https://${r}github.com/${o}.git#commit=${a}`],[/^https:\/\/((?:[^/]+?)@)?github\.com\/([^/]+\/[^/]+?)(?:\.git)?#([0-9a-f]+)$/,(t,e,r="",o,a)=>`https://${r}github.com/${o}.git#commit=${a}`],[/^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?:\/\/[^/]+\/.*\/(@[^/]+)\/([^/]+)\/-\/\1\/\2-(?:[.\d\w-]+)\.tgz(?:#|$)/,(t,e)=>HS({protocol:"npm:",source:null,selector:t,params:{__archiveUrl:e}})],[/^[^/]+\.tgz#[0-9a-f]+$/,t=>`npm:${t}`]],iC=class{constructor(e){this.resolver=e;this.resolutions=null}async setup(e,{report:r}){let o=V.join(e.cwd,dr.lockfile);if(!oe.existsSync(o))return;let a=await oe.readFilePromise(o,"utf8"),n=Ki(a);if(Object.hasOwn(n,"__metadata"))return;let u=this.resolutions=new Map;for(let A of Object.keys(n)){let p=n1(A);if(!p){r.reportWarning(14,`Failed to parse the string "${A}" into a proper descriptor`);continue}let h=xa(p.range)?In(p,`npm:${p.range}`):p,{version:C,resolved:I}=n[A];if(!I)continue;let v;for(let[E,R]of uut){let L=I.match(E);if(L){v=R(C,...L);break}}if(!v){r.reportWarning(14,`${qn(e.configuration,h)}: Only some patterns can be imported from legacy lockfiles (not "${I}")`);continue}let x=h;try{let E=wd(h.range),R=n1(E.selector,!0);R&&(x=R)}catch{}u.set(h.descriptorHash,Qs(x,v))}}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,o){return e}getResolutionDependencies(e,r){return{}}async getCandidates(e,r,o){if(!this.resolutions)throw new Error("Assertion failed: The resolution store should have been setup");let a=this.resolutions.get(e.descriptorHash);if(!a)throw new Error("Assertion failed: The resolution should have been registered");let n=tM(a),u=o.project.configuration.normalizeDependency(n);return await this.resolver.getCandidates(u,r,o)}async getSatisfying(e,r,o,a){let[n]=await this.getCandidates(e,r,a);return{locators:o.filter(u=>u.locatorHash===n.locatorHash),sorted:!1}}async resolve(e,r){throw new Error("Assertion failed: This resolver doesn't support resolving locators to packages")}}});var AA,upe=Et(()=>{Yl();N1();ql();AA=class extends Xs{constructor({configuration:r,stdout:o,suggestInstall:a=!0}){super();this.errorCount=0;zI(this,{configuration:r}),this.configuration=r,this.stdout=o,this.suggestInstall=a}static async start(r,o){let a=new this(r);try{await o(a)}catch(n){a.reportExceptionOnce(n)}finally{await a.finalize()}return a}hasErrors(){return this.errorCount>0}exitCode(){return this.hasErrors()?1:0}reportCacheHit(r){}reportCacheMiss(r){}startSectionSync(r,o){return o()}async startSectionPromise(r,o){return await o()}startTimerSync(r,o,a){return(typeof o=="function"?o:a)()}async startTimerPromise(r,o,a){return await(typeof o=="function"?o:a)()}reportSeparator(){}reportInfo(r,o){}reportWarning(r,o){}reportError(r,o){this.errorCount+=1,this.stdout.write(`${Mt(this.configuration,"\u27A4","redBright")} ${this.formatNameWithHyperlink(r)}: ${o} +`)}reportProgress(r){return{...Promise.resolve().then(async()=>{for await(let{}of r);}),stop:()=>{}}}reportJson(r){}reportFold(r,o){}async finalize(){this.errorCount>0&&(this.stdout.write(` +`),this.stdout.write(`${Mt(this.configuration,"\u27A4","redBright")} Errors happened when preparing the environment required to run this command. +`),this.suggestInstall&&this.stdout.write(`${Mt(this.configuration,"\u27A4","redBright")} This might be caused by packages being missing from the lockfile, in which case running "yarn install" might help. +`))}formatNameWithHyperlink(r){return CU(r,{configuration:this.configuration,json:!1})}}});var sC,h_=Et(()=>{bo();sC=class{constructor(e){this.resolver=e}supportsDescriptor(e,r){return!!(r.project.storedResolutions.get(e.descriptorHash)||r.project.originalPackages.has(MS(e).locatorHash))}supportsLocator(e,r){return!!(r.project.originalPackages.has(e.locatorHash)&&!r.project.lockfileNeedsRefresh)}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,o){return e}getResolutionDependencies(e,r){return this.resolver.getResolutionDependencies(e,r)}async getCandidates(e,r,o){let a=o.project.storedResolutions.get(e.descriptorHash);if(a){let u=o.project.originalPackages.get(a);if(u)return[u]}let n=o.project.originalPackages.get(MS(e).locatorHash);if(n)return[n];throw new Error("Resolution expected from the lockfile data")}async getSatisfying(e,r,o,a){let[n]=await this.getCandidates(e,r,a);return{locators:o.filter(u=>u.locatorHash===n.locatorHash),sorted:!1}}async resolve(e,r){let o=r.project.originalPackages.get(e.locatorHash);if(!o)throw new Error("The lockfile resolver isn't meant to resolve packages - they should already have been stored into a cache");return o}}});function Yf(){}function Aut(t,e,r,o,a){for(var n=0,u=e.length,A=0,p=0;nx.length?R:x}),h.value=t.join(C)}else h.value=t.join(r.slice(A,A+h.count));A+=h.count,h.added||(p+=h.count)}}var v=e[u-1];return u>1&&typeof v.value=="string"&&(v.added||v.removed)&&t.equals("",v.value)&&(e[u-2].value+=v.value,e.pop()),e}function fut(t){return{newPos:t.newPos,components:t.components.slice(0)}}function put(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}function ppe(t,e,r){return r=put(r,{ignoreWhitespace:!0}),E_.diff(t,e,r)}function hut(t,e,r){return C_.diff(t,e,r)}function Xx(t){return typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?Xx=function(e){return typeof e}:Xx=function(e){return e&&typeof Symbol=="function"&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Xx(t)}function g_(t){return mut(t)||yut(t)||Eut(t)||Cut()}function mut(t){if(Array.isArray(t))return d_(t)}function yut(t){if(typeof Symbol<"u"&&Symbol.iterator in Object(t))return Array.from(t)}function Eut(t,e){if(!!t){if(typeof t=="string")return d_(t,e);var r=Object.prototype.toString.call(t).slice(8,-1);if(r==="Object"&&t.constructor&&(r=t.constructor.name),r==="Map"||r==="Set")return Array.from(t);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return d_(t,e)}}function d_(t,e){(e==null||e>t.length)&&(e=t.length);for(var r=0,o=new Array(e);r"u"&&(u.context=4);var A=hut(r,o,u);if(!A)return;A.push({value:"",lines:[]});function p(U){return U.map(function(z){return" "+z})}for(var h=[],C=0,I=0,v=[],x=1,E=1,R=function(z){var te=A[z],le=te.lines||te.value.replace(/\n$/,"").split(` +`);if(te.lines=le,te.added||te.removed){var he;if(!C){var Ae=A[z-1];C=x,I=E,Ae&&(v=u.context>0?p(Ae.lines.slice(-u.context)):[],C-=v.length,I-=v.length)}(he=v).push.apply(he,g_(le.map(function(ce){return(te.added?"+":"-")+ce}))),te.added?E+=le.length:x+=le.length}else{if(C)if(le.length<=u.context*2&&z=A.length-2&&le.length<=u.context){var g=/\n$/.test(r),Ee=/\n$/.test(o),De=le.length==0&&v.length>Fe.oldLines;!g&&De&&r.length>0&&v.splice(Fe.oldLines,0,"\\ No newline at end of file"),(!g&&!De||!Ee)&&v.push("\\ No newline at end of file")}h.push(Fe),C=0,I=0,v=[]}x+=le.length,E+=le.length}},L=0;L{Yf.prototype={diff:function(e,r){var o=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},a=o.callback;typeof o=="function"&&(a=o,o={}),this.options=o;var n=this;function u(R){return a?(setTimeout(function(){a(void 0,R)},0),!0):R}e=this.castInput(e),r=this.castInput(r),e=this.removeEmpty(this.tokenize(e)),r=this.removeEmpty(this.tokenize(r));var A=r.length,p=e.length,h=1,C=A+p;o.maxEditLength&&(C=Math.min(C,o.maxEditLength));var I=[{newPos:-1,components:[]}],v=this.extractCommon(I[0],r,e,0);if(I[0].newPos+1>=A&&v+1>=p)return u([{value:this.join(r),count:r.length}]);function x(){for(var R=-1*h;R<=h;R+=2){var L=void 0,U=I[R-1],z=I[R+1],te=(z?z.newPos:0)-R;U&&(I[R-1]=void 0);var le=U&&U.newPos+1=A&&te+1>=p)return u(Aut(n,L.components,r,e,n.useLongestToken));I[R]=L}h++}if(a)(function R(){setTimeout(function(){if(h>C)return a();x()||R()},0)})();else for(;h<=C;){var E=x();if(E)return E}},pushComponent:function(e,r,o){var a=e[e.length-1];a&&a.added===r&&a.removed===o?e[e.length-1]={count:a.count+1,added:r,removed:o}:e.push({count:1,added:r,removed:o})},extractCommon:function(e,r,o,a){for(var n=r.length,u=o.length,A=e.newPos,p=A-a,h=0;A+1"u"?r:u}:o;return typeof t=="string"?t:JSON.stringify(m_(t,null,null,a),a," ")};n2.equals=function(t,e){return Yf.prototype.equals.call(n2,t.replace(/,([\r\n])/g,"$1"),e.replace(/,([\r\n])/g,"$1"))};y_=new Yf;y_.tokenize=function(t){return t.slice()};y_.join=y_.removeEmpty=function(t){return t}});var dpe=_((n3t,gpe)=>{var Iut=Hl(),But=AE(),vut=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,Dut=/^\w*$/;function Put(t,e){if(Iut(t))return!1;var r=typeof t;return r=="number"||r=="symbol"||r=="boolean"||t==null||But(t)?!0:Dut.test(t)||!vut.test(t)||e!=null&&t in Object(e)}gpe.exports=Put});var Epe=_((i3t,ype)=>{var mpe=_P(),Sut="Expected a function";function I_(t,e){if(typeof t!="function"||e!=null&&typeof e!="function")throw new TypeError(Sut);var r=function(){var o=arguments,a=e?e.apply(this,o):o[0],n=r.cache;if(n.has(a))return n.get(a);var u=t.apply(this,o);return r.cache=n.set(a,u)||n,u};return r.cache=new(I_.Cache||mpe),r}I_.Cache=mpe;ype.exports=I_});var wpe=_((s3t,Cpe)=>{var but=Epe(),xut=500;function kut(t){var e=but(t,function(o){return r.size===xut&&r.clear(),o}),r=e.cache;return e}Cpe.exports=kut});var B_=_((o3t,Ipe)=>{var Qut=wpe(),Fut=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,Rut=/\\(\\)?/g,Tut=Qut(function(t){var e=[];return t.charCodeAt(0)===46&&e.push(""),t.replace(Fut,function(r,o,a,n){e.push(a?n.replace(Rut,"$1"):o||r)}),e});Ipe.exports=Tut});var Hd=_((a3t,Bpe)=>{var Nut=Hl(),Lut=dpe(),Out=B_(),Mut=R1();function Uut(t,e){return Nut(t)?t:Lut(t,e)?[t]:Out(Mut(t))}Bpe.exports=Uut});var oC=_((l3t,vpe)=>{var _ut=AE(),Hut=1/0;function jut(t){if(typeof t=="string"||_ut(t))return t;var e=t+"";return e=="0"&&1/t==-Hut?"-0":e}vpe.exports=jut});var Zx=_((c3t,Dpe)=>{var qut=Hd(),Gut=oC();function Yut(t,e){e=qut(e,t);for(var r=0,o=e.length;t!=null&&r{var Wut=rS(),Kut=Hd(),Vut=MI(),Ppe=il(),zut=oC();function Jut(t,e,r,o){if(!Ppe(t))return t;e=Kut(e,t);for(var a=-1,n=e.length,u=n-1,A=t;A!=null&&++a{var Xut=Zx(),Zut=v_(),$ut=Hd();function eAt(t,e,r){for(var o=-1,a=e.length,n={};++o{function tAt(t,e){return t!=null&&e in Object(t)}kpe.exports=tAt});var D_=_((p3t,Fpe)=>{var rAt=Hd(),nAt=NI(),iAt=Hl(),sAt=MI(),oAt=YP(),aAt=oC();function lAt(t,e,r){e=rAt(e,t);for(var o=-1,a=e.length,n=!1;++o{var cAt=Qpe(),uAt=D_();function AAt(t,e){return t!=null&&uAt(t,e,cAt)}Rpe.exports=AAt});var Lpe=_((g3t,Npe)=>{var fAt=xpe(),pAt=Tpe();function hAt(t,e){return fAt(t,e,function(r,o){return pAt(t,o)})}Npe.exports=hAt});var _pe=_((d3t,Upe)=>{var Ope=Ad(),gAt=NI(),dAt=Hl(),Mpe=Ope?Ope.isConcatSpreadable:void 0;function mAt(t){return dAt(t)||gAt(t)||!!(Mpe&&t&&t[Mpe])}Upe.exports=mAt});var qpe=_((m3t,jpe)=>{var yAt=qP(),EAt=_pe();function Hpe(t,e,r,o,a){var n=-1,u=t.length;for(r||(r=EAt),a||(a=[]);++n0&&r(A)?e>1?Hpe(A,e-1,r,o,a):yAt(a,A):o||(a[a.length]=A)}return a}jpe.exports=Hpe});var Ype=_((y3t,Gpe)=>{var CAt=qpe();function wAt(t){var e=t==null?0:t.length;return e?CAt(t,1):[]}Gpe.exports=wAt});var P_=_((E3t,Wpe)=>{var IAt=Ype(),BAt=pL(),vAt=hL();function DAt(t){return vAt(BAt(t,void 0,IAt),t+"")}Wpe.exports=DAt});var S_=_((C3t,Kpe)=>{var PAt=Lpe(),SAt=P_(),bAt=SAt(function(t,e){return t==null?{}:PAt(t,e)});Kpe.exports=bAt});var $x,Vpe=Et(()=>{Yl();$x=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,o){return this.resolver.bindDescriptor(e,r,o)}getResolutionDependencies(e,r){return this.resolver.getResolutionDependencies(e,r)}async getCandidates(e,r,o){throw new Jt(20,`This package doesn't seem to be present in your lockfile; run "yarn install" to update the lockfile`)}async getSatisfying(e,r,o,a){throw new Jt(20,`This package doesn't seem to be present in your lockfile; run "yarn install" to update the lockfile`)}async resolve(e,r){throw new Jt(20,`This package doesn't seem to be present in your lockfile; run "yarn install" to update the lockfile`)}}});var Qi,b_=Et(()=>{Yl();Qi=class extends Xs{reportCacheHit(e){}reportCacheMiss(e){}startSectionSync(e,r){return r()}async startSectionPromise(e,r){return await r()}startTimerSync(e,r,o){return(typeof r=="function"?r:o)()}async startTimerPromise(e,r,o){return await(typeof r=="function"?r:o)()}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){}reportFold(e,r){}async finalize(){}}});var zpe,aC,x_=Et(()=>{Pt();zpe=$e(TS());uE();Id();ql();rh();xf();bo();aC=class{constructor(e,{project:r}){this.workspacesCwds=new Set;this.project=r,this.cwd=e}async setup(){this.manifest=await Ot.tryFind(this.cwd)??new Ot,this.relativeCwd=V.relative(this.project.cwd,this.cwd)||Bt.dot;let e=this.manifest.name?this.manifest.name:eA(null,`${this.computeCandidateName()}-${Js(this.relativeCwd).substring(0,6)}`);this.anchoredDescriptor=In(e,`${Xn.protocol}${this.relativeCwd}`),this.anchoredLocator=Qs(e,`${Xn.protocol}${this.relativeCwd}`);let r=this.manifest.workspaceDefinitions.map(({pattern:a})=>a);if(r.length===0)return;let o=await(0,zpe.default)(r,{cwd:ue.fromPortablePath(this.cwd),onlyDirectories:!0,ignore:["**/node_modules","**/.git","**/.yarn"]});o.sort(),await o.reduce(async(a,n)=>{let u=V.resolve(this.cwd,ue.toPortablePath(n)),A=await oe.existsPromise(V.join(u,"package.json"));await a,A&&this.workspacesCwds.add(u)},Promise.resolve())}get anchoredPackage(){let e=this.project.storedPackages.get(this.anchoredLocator.locatorHash);if(!e)throw new Error(`Assertion failed: Expected workspace ${s1(this.project.configuration,this)} (${Mt(this.project.configuration,V.join(this.cwd,dr.manifest),yt.PATH)}) to have been resolved. Run "yarn install" to update the lockfile`);return e}accepts(e){let r=e.indexOf(":"),o=r!==-1?e.slice(0,r+1):null,a=r!==-1?e.slice(r+1):e;if(o===Xn.protocol&&V.normalize(a)===this.relativeCwd||o===Xn.protocol&&(a==="*"||a==="^"||a==="~"))return!0;let n=xa(a);return n?o===Xn.protocol?n.test(this.manifest.version??"0.0.0"):this.project.configuration.get("enableTransparentWorkspaces")&&this.manifest.version!==null?n.test(this.manifest.version):!1:!1}computeCandidateName(){return this.cwd===this.project.cwd?"root-workspace":`${V.basename(this.cwd)}`||"unnamed-workspace"}getRecursiveWorkspaceDependencies({dependencies:e=Ot.hardDependencies}={}){let r=new Set,o=a=>{for(let n of e)for(let u of a.manifest[n].values()){let A=this.project.tryWorkspaceByDescriptor(u);A===null||r.has(A)||(r.add(A),o(A))}};return o(this),r}getRecursiveWorkspaceDependents({dependencies:e=Ot.hardDependencies}={}){let r=new Set,o=a=>{for(let n of this.project.workspaces)e.some(A=>[...n.manifest[A].values()].some(p=>{let h=this.project.tryWorkspaceByDescriptor(p);return h!==null&&r1(h.anchoredLocator,a.anchoredLocator)}))&&!r.has(n)&&(r.add(n),o(n))};return o(this),r}getRecursiveWorkspaceChildren(){let e=[];for(let r of this.workspacesCwds){let o=this.project.workspacesByCwd.get(r);o&&e.push(o,...o.getRecursiveWorkspaceChildren())}return e}async persistManifest(){let e={};this.manifest.exportTo(e);let r=V.join(this.cwd,Ot.fileName),o=`${JSON.stringify(e,null,this.manifest.indent)} +`;await oe.changeFilePromise(r,o,{automaticNewlines:!0}),this.manifest.raw=e}}});function TAt({project:t,allDescriptors:e,allResolutions:r,allPackages:o,accessibleLocators:a=new Set,optionalBuilds:n=new Set,peerRequirements:u=new Map,peerWarnings:A=[],volatileDescriptors:p=new Set}){let h=new Map,C=[],I=new Map,v=new Map,x=new Map,E=new Map,R=new Map,L=new Map(t.workspaces.map(Ae=>{let ye=Ae.anchoredLocator.locatorHash,ae=o.get(ye);if(typeof ae>"u")throw new Error("Assertion failed: The workspace should have an associated package");return[ye,ZI(ae)]})),U=()=>{let Ae=oe.mktempSync(),ye=V.join(Ae,"stacktrace.log"),ae=String(C.length+1).length,Ie=C.map((Fe,g)=>`${`${g+1}.`.padStart(ae," ")} ${ba(Fe)} +`).join("");throw oe.writeFileSync(ye,Ie),oe.detachTemp(Ae),new Jt(45,`Encountered a stack overflow when resolving peer dependencies; cf ${ue.fromPortablePath(ye)}`)},z=Ae=>{let ye=r.get(Ae.descriptorHash);if(typeof ye>"u")throw new Error("Assertion failed: The resolution should have been registered");let ae=o.get(ye);if(!ae)throw new Error("Assertion failed: The package could not be found");return ae},te=(Ae,ye,ae,{top:Ie,optional:Fe})=>{C.length>1e3&&U(),C.push(ye);let g=le(Ae,ye,ae,{top:Ie,optional:Fe});return C.pop(),g},le=(Ae,ye,ae,{top:Ie,optional:Fe})=>{if(a.has(ye.locatorHash))return;a.add(ye.locatorHash),Fe||n.delete(ye.locatorHash);let g=o.get(ye.locatorHash);if(!g)throw new Error(`Assertion failed: The package (${jr(t.configuration,ye)}) should have been registered`);let Ee=[],De=[],ce=[],ne=[],ee=[];for(let xe of Array.from(g.dependencies.values())){if(g.peerDependencies.has(xe.identHash)&&g.locatorHash!==Ie)continue;if(Pf(xe))throw new Error("Assertion failed: Virtual packages shouldn't be encountered when virtualizing a branch");p.delete(xe.descriptorHash);let ht=Fe;if(!ht){let Re=g.dependenciesMeta.get(fn(xe));if(typeof Re<"u"){let ze=Re.get(null);typeof ze<"u"&&ze.optional&&(ht=!0)}}let H=r.get(xe.descriptorHash);if(!H)throw new Error(`Assertion failed: The resolution (${qn(t.configuration,xe)}) should have been registered`);let lt=L.get(H)||o.get(H);if(!lt)throw new Error(`Assertion failed: The package (${H}, resolved from ${qn(t.configuration,xe)}) should have been registered`);if(lt.peerDependencies.size===0){te(xe,lt,new Map,{top:Ie,optional:ht});continue}let Te,ke,be=new Set,_e;De.push(()=>{Te=nM(xe,ye.locatorHash),ke=iM(lt,ye.locatorHash),g.dependencies.delete(xe.identHash),g.dependencies.set(Te.identHash,Te),r.set(Te.descriptorHash,ke.locatorHash),e.set(Te.descriptorHash,Te),o.set(ke.locatorHash,ke),Ee.push([lt,Te,ke])}),ce.push(()=>{_e=new Map;for(let Re of ke.peerDependencies.values()){let ze=g.dependencies.get(Re.identHash);if(!ze&&t1(ye,Re)&&(Ae.identHash===ye.identHash?ze=Ae:(ze=In(ye,Ae.range),e.set(ze.descriptorHash,ze),r.set(ze.descriptorHash,ye.locatorHash),p.delete(ze.descriptorHash))),(!ze||ze.range==="missing:")&&ke.dependencies.has(Re.identHash)){ke.peerDependencies.delete(Re.identHash);continue}ze||(ze=In(Re,"missing:")),ke.dependencies.set(ze.identHash,ze),Pf(ze)&&gd(x,ze.descriptorHash).add(ke.locatorHash),I.set(ze.identHash,ze),ze.range==="missing:"&&be.add(ze.identHash),_e.set(Re.identHash,ae.get(Re.identHash)??ke.locatorHash)}ke.dependencies=new Map(ks(ke.dependencies,([Re,ze])=>fn(ze)))}),ne.push(()=>{if(!o.has(ke.locatorHash))return;let Re=h.get(lt.locatorHash);typeof Re=="number"&&Re>=2&&U();let ze=h.get(lt.locatorHash),He=typeof ze<"u"?ze+1:1;h.set(lt.locatorHash,He),te(Te,ke,_e,{top:Ie,optional:ht}),h.set(lt.locatorHash,He-1)}),ee.push(()=>{let Re=g.dependencies.get(xe.identHash);if(typeof Re>"u")throw new Error("Assertion failed: Expected the peer dependency to have been turned into a dependency");let ze=r.get(Re.descriptorHash);if(typeof ze>"u")throw new Error("Assertion failed: Expected the descriptor to be registered");if(gd(R,ze).add(ye.locatorHash),!!o.has(ke.locatorHash)){for(let He of ke.peerDependencies.values()){let b=_e.get(He.identHash);if(typeof b>"u")throw new Error("Assertion failed: Expected the peer dependency ident to be registered");qy(Gy(E,b),fn(He)).push(ke.locatorHash)}for(let He of be)ke.dependencies.delete(He)}})}for(let xe of[...De,...ce])xe();let we;do{we=!0;for(let[xe,ht,H]of Ee){let lt=Gy(v,xe.locatorHash),Te=Js(...[...H.dependencies.values()].map(Re=>{let ze=Re.range!=="missing:"?r.get(Re.descriptorHash):"missing:";if(typeof ze>"u")throw new Error(`Assertion failed: Expected the resolution for ${qn(t.configuration,Re)} to have been registered`);return ze===Ie?`${ze} (top)`:ze}),ht.identHash),ke=lt.get(Te);if(typeof ke>"u"){lt.set(Te,ht);continue}if(ke===ht)continue;o.delete(H.locatorHash),e.delete(ht.descriptorHash),r.delete(ht.descriptorHash),a.delete(H.locatorHash);let be=x.get(ht.descriptorHash)||[],_e=[g.locatorHash,...be];x.delete(ht.descriptorHash);for(let Re of _e){let ze=o.get(Re);typeof ze>"u"||(ze.dependencies.get(ht.identHash).descriptorHash!==ke.descriptorHash&&(we=!1),ze.dependencies.set(ht.identHash,ke))}}}while(!we);for(let xe of[...ne,...ee])xe()};for(let Ae of t.workspaces){let ye=Ae.anchoredLocator;p.delete(Ae.anchoredDescriptor.descriptorHash),te(Ae.anchoredDescriptor,ye,new Map,{top:ye.locatorHash,optional:!1})}let he=new Map;for(let[Ae,ye]of R){let ae=o.get(Ae);if(typeof ae>"u")throw new Error("Assertion failed: Expected the root to be registered");let Ie=E.get(Ae);if(!(typeof Ie>"u"))for(let Fe of ye){let g=o.get(Fe);if(!(typeof g>"u")&&!!t.tryWorkspaceByLocator(g))for(let[Ee,De]of Ie){let ce=zs(Ee);if(g.peerDependencies.has(ce.identHash))continue;let ne=`p${Js(Fe,Ee,Ae).slice(0,5)}`;u.set(ne,{subject:Fe,requested:ce,rootRequester:Ae,allRequesters:De});let ee=ae.dependencies.get(ce.identHash);if(typeof ee<"u"){let we=z(ee),xe=we.version??"0.0.0",ht=new Set;for(let lt of De){let Te=o.get(lt);if(typeof Te>"u")throw new Error("Assertion failed: Expected the link to be registered");let ke=Te.peerDependencies.get(ce.identHash);if(typeof ke>"u")throw new Error("Assertion failed: Expected the ident to be registered");ht.add(ke.range)}if(![...ht].every(lt=>{if(lt.startsWith(Xn.protocol)){if(!t.tryWorkspaceByLocator(we))return!1;lt=lt.slice(Xn.protocol.length),(lt==="^"||lt==="~")&&(lt="*")}return bf(xe,lt)})){let lt=ol(he,we.locatorHash,()=>({type:2,requested:ce,subject:we,dependents:new Map,requesters:new Map,links:new Map,version:xe,hash:`p${we.locatorHash.slice(0,5)}`}));lt.dependents.set(g.locatorHash,g),lt.requesters.set(ae.locatorHash,ae);for(let Te of De)lt.links.set(Te,o.get(Te));A.push({type:1,subject:g,requested:ce,requester:ae,version:xe,hash:ne,requirementCount:De.length})}}else ae.peerDependenciesMeta.get(Ee)?.optional||A.push({type:0,subject:g,requested:ce,requester:ae,hash:ne})}}}A.push(...he.values())}function NAt(t,e){let r=BL(t.peerWarnings,"type"),o=r[2]?.map(n=>{let u=Array.from(n.links.values(),C=>{let I=t.storedPackages.get(C.locatorHash);if(typeof I>"u")throw new Error("Assertion failed: Expected the package to be registered");let v=I.peerDependencies.get(n.requested.identHash);if(typeof v>"u")throw new Error("Assertion failed: Expected the ident to be registered");return v.range}),A=n.links.size>1?"and other dependencies request":"requests",p=aM(u),h=p?aE(t.configuration,p):Mt(t.configuration,"but they have non-overlapping ranges!","redBright");return`${cs(t.configuration,n.requested)} is listed by your project with version ${i1(t.configuration,n.version)}, which doesn't satisfy what ${cs(t.configuration,n.requesters.values().next().value)} (${Mt(t.configuration,n.hash,yt.CODE)}) ${A} (${h}).`})??[],a=r[0]?.map(n=>`${jr(t.configuration,n.subject)} doesn't provide ${cs(t.configuration,n.requested)} (${Mt(t.configuration,n.hash,yt.CODE)}), requested by ${cs(t.configuration,n.requester)}.`)??[];e.startSectionSync({reportFooter:()=>{e.reportWarning(86,`Some peer dependencies are incorrectly met; run ${Mt(t.configuration,"yarn explain peer-requirements ",yt.CODE)} for details, where ${Mt(t.configuration,"",yt.CODE)} is the six-letter p-prefixed code.`)},skipIfEmpty:!0},()=>{for(let n of ks(o,u=>zy.default(u)))e.reportWarning(60,n);for(let n of ks(a,u=>zy.default(u)))e.reportWarning(2,n)})}var ek,tk,rk,Zpe,F_,Q_,R_,nk,xAt,kAt,Jpe,QAt,FAt,RAt,pl,k_,ik,Xpe,St,$pe=Et(()=>{Pt();Pt();Nl();qt();ek=Be("crypto");w_();tk=$e(S_()),rk=$e(rd()),Zpe=$e(Jn()),F_=Be("util"),Q_=$e(Be("v8")),R_=$e(Be("zlib"));f_();v1();p_();h_();uE();fM();Yl();Vpe();N1();b_();Id();x_();KS();ql();rh();jl();Pb();DU();xf();bo();nk=Ky(process.env.YARN_LOCKFILE_VERSION_OVERRIDE??8),xAt=3,kAt=/ *, */g,Jpe=/\/$/,QAt=32,FAt=(0,F_.promisify)(R_.default.gzip),RAt=(0,F_.promisify)(R_.default.gunzip),pl=(r=>(r.UpdateLockfile="update-lockfile",r.SkipBuild="skip-build",r))(pl||{}),k_={restoreLinkersCustomData:["linkersCustomData"],restoreResolutions:["accessibleLocators","conditionalLocators","disabledLocators","optionalBuilds","storedDescriptors","storedResolutions","storedPackages","lockFileChecksum"],restoreBuildState:["skippedBuilds","storedBuildState"]},ik=(o=>(o[o.NotProvided=0]="NotProvided",o[o.NotCompatible=1]="NotCompatible",o[o.NotCompatibleAggregate=2]="NotCompatibleAggregate",o))(ik||{}),Xpe=t=>Js(`${xAt}`,t),St=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.conditionalLocators=new Set;this.disabledLocators=new Set;this.originalPackages=new Map;this.optionalBuilds=new Set;this.skippedBuilds=new Set;this.lockfileLastVersion=null;this.lockfileNeedsRefresh=!1;this.peerRequirements=new Map;this.peerWarnings=[];this.linkersCustomData=new Map;this.lockFileChecksum=null;this.installStateChecksum=null;this.configuration=r,this.cwd=e}static async find(e,r){if(!e.projectCwd)throw new it(`No project found in ${r}`);let o=e.projectCwd,a=r,n=null;for(;n!==e.projectCwd;){if(n=a,oe.existsSync(V.join(n,dr.manifest))){o=n;break}a=V.dirname(n)}let u=new St(e.projectCwd,{configuration:e});Ke.telemetry?.reportProject(u.cwd),await u.setupResolutions(),await u.setupWorkspaces(),Ke.telemetry?.reportWorkspaceCount(u.workspaces.length),Ke.telemetry?.reportDependencyCount(u.workspaces.reduce((E,R)=>E+R.manifest.dependencies.size+R.manifest.devDependencies.size,0));let A=u.tryWorkspaceByCwd(o);if(A)return{project:u,workspace:A,locator:A.anchoredLocator};let p=await u.findLocatorForLocation(`${o}/`,{strict:!0});if(p)return{project:u,locator:p,workspace:null};let h=Mt(e,u.cwd,yt.PATH),C=Mt(e,V.relative(u.cwd,o),yt.PATH),I=`- If ${h} isn't intended to be a project, remove any yarn.lock and/or package.json file there.`,v=`- If ${h} is intended to be a project, it might be that you forgot to list ${C} in its workspace configuration.`,x=`- Finally, if ${h} is fine and you intend ${C} to be treated as a completely separate project (not even a workspace), create an empty yarn.lock file in it.`;throw new it(`The nearest package directory (${Mt(e,o,yt.PATH)}) doesn't seem to be part of the project declared in ${Mt(e,u.cwd,yt.PATH)}. + +${[I,v,x].join(` +`)}`)}async setupResolutions(){this.storedResolutions=new Map,this.storedDescriptors=new Map,this.storedPackages=new Map,this.lockFileChecksum=null;let e=V.join(this.cwd,dr.lockfile),r=this.configuration.get("defaultLanguageName");if(oe.existsSync(e)){let o=await oe.readFilePromise(e,"utf8");this.lockFileChecksum=Xpe(o);let a=Ki(o);if(a.__metadata){let n=a.__metadata.version,u=a.__metadata.cacheKey;this.lockfileLastVersion=n,this.lockfileNeedsRefresh=n"u")throw new Error(`Assertion failed: Expected the lockfile entry to have a resolution field (${A})`);let h=Sf(p.resolution,!0),C=new Ot;C.load(p,{yamlCompatibilityMode:!0});let I=C.version,v=C.languageName||r,x=p.linkType.toUpperCase(),E=p.conditions??null,R=C.dependencies,L=C.peerDependencies,U=C.dependenciesMeta,z=C.peerDependenciesMeta,te=C.bin;if(p.checksum!=null){let he=typeof u<"u"&&!p.checksum.includes("/")?`${u}/${p.checksum}`:p.checksum;this.storedChecksums.set(h.locatorHash,he)}let le={...h,version:I,languageName:v,linkType:x,conditions:E,dependencies:R,peerDependencies:L,dependenciesMeta:U,peerDependenciesMeta:z,bin:te};this.originalPackages.set(le.locatorHash,le);for(let he of A.split(kAt)){let Ae=nh(he);n<=6&&(Ae=this.configuration.normalizeDependency(Ae),Ae=In(Ae,Ae.range.replace(/^patch:[^@]+@(?!npm(:|%3A))/,"$1npm%3A"))),this.storedDescriptors.set(Ae.descriptorHash,Ae),this.storedResolutions.set(Ae.descriptorHash,h.locatorHash)}}}else o.includes("yarn lockfile v1")&&(this.lockfileLastVersion=-1)}}async setupWorkspaces(){this.workspaces=[],this.workspacesByCwd=new Map,this.workspacesByIdent=new Map;let e=new Set,r=(0,rk.default)(4),o=async(a,n)=>{if(e.has(n))return a;e.add(n);let u=new aC(n,{project:this});await r(()=>u.setup());let A=a.then(()=>{this.addWorkspace(u)});return Array.from(u.workspacesCwds).reduce(o,A)};await o(Promise.resolve(),this.cwd)}addWorkspace(e){let r=this.workspacesByIdent.get(e.anchoredLocator.identHash);if(typeof r<"u")throw new Error(`Duplicate workspace name ${cs(this.configuration,e.anchoredLocator)}: ${ue.fromPortablePath(e.cwd)} conflicts with ${ue.fromPortablePath(r.cwd)}`);this.workspaces.push(e),this.workspacesByCwd.set(e.cwd,e),this.workspacesByIdent.set(e.anchoredLocator.identHash,e)}get topLevelWorkspace(){return this.getWorkspaceByCwd(this.cwd)}tryWorkspaceByCwd(e){V.isAbsolute(e)||(e=V.resolve(this.cwd,e)),e=V.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 o of this.workspaces)V.relative(o.cwd,e).startsWith("../")||r&&r.cwd.length>=o.cwd.length||(r=o);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>"u"?null:r}getWorkspaceByIdent(e){let r=this.tryWorkspaceByIdent(e);if(!r)throw new Error(`Workspace not found (${cs(this.configuration,e)})`);return r}tryWorkspaceByDescriptor(e){if(e.range.startsWith(Xn.protocol)){let o=e.range.slice(Xn.protocol.length);if(o!=="^"&&o!=="~"&&o!=="*"&&!xa(o))return this.tryWorkspaceByCwd(o)}let r=this.tryWorkspaceByIdent(e);return r===null||(Pf(e)&&(e=$I(e)),!r.accepts(e.range))?null:r}getWorkspaceByDescriptor(e){let r=this.tryWorkspaceByDescriptor(e);if(r===null)throw new Error(`Workspace not found (${qn(this.configuration,e)})`);return r}tryWorkspaceByLocator(e){let r=this.tryWorkspaceByIdent(e);return r===null||(Hc(e)&&(e=e1(e)),r.anchoredLocator.locatorHash!==e.locatorHash)?null:r}getWorkspaceByLocator(e){let r=this.tryWorkspaceByLocator(e);if(!r)throw new Error(`Workspace not found (${jr(this.configuration,e)})`);return r}deleteDescriptor(e){this.storedResolutions.delete(e),this.storedDescriptors.delete(e)}deleteLocator(e){this.originalPackages.delete(e),this.storedPackages.delete(e),this.accessibleLocators.delete(e)}forgetResolution(e){if("descriptorHash"in e){let r=this.storedResolutions.get(e.descriptorHash);this.deleteDescriptor(e.descriptorHash);let o=new Set(this.storedResolutions.values());typeof r<"u"&&!o.has(r)&&this.deleteLocator(r)}if("locatorHash"in e){this.deleteLocator(e.locatorHash);for(let[r,o]of this.storedResolutions)o===e.locatorHash&&this.deleteDescriptor(r)}}forgetTransientResolutions(){let e=this.configuration.makeResolver(),r=new Map;for(let[o,a]of this.storedResolutions.entries()){let n=r.get(a);n||r.set(a,n=new Set),n.add(o)}for(let o of this.originalPackages.values()){let a;try{a=e.shouldPersistResolution(o,{project:this,resolver:e})}catch{a=!1}if(!a){this.deleteLocator(o.locatorHash);let n=r.get(o.locatorHash);if(n){r.delete(o.locatorHash);for(let u of n)this.deleteDescriptor(u)}}}}forgetVirtualResolutions(){for(let e of this.storedPackages.values())for(let[r,o]of e.dependencies)Pf(o)&&e.dependencies.set(r,$I(o))}getDependencyMeta(e,r){let o={},n=this.topLevelWorkspace.manifest.dependenciesMeta.get(fn(e));if(!n)return o;let u=n.get(null);if(u&&Object.assign(o,u),r===null||!Zpe.default.valid(r))return o;for(let[A,p]of n)A!==null&&A===r&&Object.assign(o,p);return o}async findLocatorForLocation(e,{strict:r=!1}={}){let o=new Qi,a=this.configuration.getLinkers(),n={project:this,report:o};for(let u of a){let A=await u.findPackageLocator(e,n);if(A){if(r&&(await u.findPackageLocation(A,n)).replace(Jpe,"")!==e.replace(Jpe,""))continue;return A}}return null}async loadUserConfig(){let e=V.join(this.cwd,"yarn.config.cjs");return await oe.existsPromise(e)?zp(e):null}async preparePackage(e,{resolver:r,resolveOptions:o}){let a=await this.configuration.getPackageExtensions(),n=this.configuration.normalizePackage(e,{packageExtensions:a});for(let[u,A]of n.dependencies){let p=await this.configuration.reduceHook(C=>C.reduceDependency,A,this,n,A,{resolver:r,resolveOptions:o});if(!t1(A,p))throw new Error("Assertion failed: The descriptor ident cannot be changed through aliases");let h=r.bindDescriptor(p,n,o);n.dependencies.set(u,h)}return n}async resolveEverything(e){if(!this.workspacesByCwd||!this.workspacesByIdent)throw new Error("Workspaces must have been setup before calling this function");this.forgetVirtualResolutions();let r=new Map(this.originalPackages),o=[];e.lockfileOnly||this.forgetTransientResolutions();let a=e.resolver||this.configuration.makeResolver(),n=new iC(a);await n.setup(this,{report:e.report});let u=e.lockfileOnly?[new $x(a)]:[n,a],A=new Bd([new sC(a),...u]),p=new Bd([...u]),h=this.configuration.makeFetcher(),C=e.lockfileOnly?{project:this,report:e.report,resolver:A}:{project:this,report:e.report,resolver:A,fetchOptions:{project:this,cache:e.cache,checksums:this.storedChecksums,report:e.report,fetcher:h,cacheOptions:{mirrorWriteOnly:!0}}},I=new Map,v=new Map,x=new Map,E=new Map,R=new Map,L=new Map,U=this.topLevelWorkspace.anchoredLocator,z=new Set,te=[],le=_4(),he=this.configuration.getSupportedArchitectures();await e.report.startProgressPromise(Xs.progressViaTitle(),async ce=>{let ne=async H=>{let lt=await Yy(async()=>await A.resolve(H,C),_e=>`${jr(this.configuration,H)}: ${_e}`);if(!r1(H,lt))throw new Error(`Assertion failed: The locator cannot be changed by the resolver (went from ${jr(this.configuration,H)} to ${jr(this.configuration,lt)})`);E.set(lt.locatorHash,lt),!r.delete(lt.locatorHash)&&!this.tryWorkspaceByLocator(lt)&&o.push(lt);let ke=await this.preparePackage(lt,{resolver:A,resolveOptions:C}),be=Uc([...ke.dependencies.values()].map(_e=>ht(_e)));return te.push(be),be.catch(()=>{}),v.set(ke.locatorHash,ke),ke},ee=async H=>{let lt=R.get(H.locatorHash);if(typeof lt<"u")return lt;let Te=Promise.resolve().then(()=>ne(H));return R.set(H.locatorHash,Te),Te},we=async(H,lt)=>{let Te=await ht(lt);return I.set(H.descriptorHash,H),x.set(H.descriptorHash,Te.locatorHash),Te},xe=async H=>{ce.setTitle(qn(this.configuration,H));let lt=this.resolutionAliases.get(H.descriptorHash);if(typeof lt<"u")return we(H,this.storedDescriptors.get(lt));let Te=A.getResolutionDependencies(H,C),ke=Object.fromEntries(await Uc(Object.entries(Te).map(async([Re,ze])=>{let He=A.bindDescriptor(ze,U,C),b=await ht(He);return z.add(b.locatorHash),[Re,b]}))),_e=(await Yy(async()=>await A.getCandidates(H,ke,C),Re=>`${qn(this.configuration,H)}: ${Re}`))[0];if(typeof _e>"u")throw new Jt(82,`${qn(this.configuration,H)}: No candidates found`);if(e.checkResolutions){let{locators:Re}=await p.getSatisfying(H,ke,[_e],{...C,resolver:p});if(!Re.find(ze=>ze.locatorHash===_e.locatorHash))throw new Jt(78,`Invalid resolution ${JI(this.configuration,H,_e)}`)}return I.set(H.descriptorHash,H),x.set(H.descriptorHash,_e.locatorHash),ee(_e)},ht=H=>{let lt=L.get(H.descriptorHash);if(typeof lt<"u")return lt;I.set(H.descriptorHash,H);let Te=Promise.resolve().then(()=>xe(H));return L.set(H.descriptorHash,Te),Te};for(let H of this.workspaces){let lt=H.anchoredDescriptor;te.push(ht(lt))}for(;te.length>0;){let H=[...te];te.length=0,await Uc(H)}});let Ae=sl(r.values(),ce=>this.tryWorkspaceByLocator(ce)?sl.skip:ce);if(o.length>0||Ae.length>0){let ce=new Set(this.workspaces.flatMap(H=>{let lt=v.get(H.anchoredLocator.locatorHash);if(!lt)throw new Error("Assertion failed: The workspace should have been resolved");return Array.from(lt.dependencies.values(),Te=>{let ke=x.get(Te.descriptorHash);if(!ke)throw new Error("Assertion failed: The resolution should have been registered");return ke})})),ne=H=>ce.has(H.locatorHash)?"0":"1",ee=H=>ba(H),we=ks(o,[ne,ee]),xe=ks(Ae,[ne,ee]),ht=e.report.getRecommendedLength();we.length>0&&e.report.reportInfo(85,`${Mt(this.configuration,"+",yt.ADDED)} ${cS(this.configuration,we,ht)}`),xe.length>0&&e.report.reportInfo(85,`${Mt(this.configuration,"-",yt.REMOVED)} ${cS(this.configuration,xe,ht)}`)}let ye=new Set(this.resolutionAliases.values()),ae=new Set(v.keys()),Ie=new Set,Fe=new Map,g=[];TAt({project:this,accessibleLocators:Ie,volatileDescriptors:ye,optionalBuilds:ae,peerRequirements:Fe,peerWarnings:g,allDescriptors:I,allResolutions:x,allPackages:v});for(let ce of z)ae.delete(ce);for(let ce of ye)I.delete(ce),x.delete(ce);let Ee=new Set,De=new Set;for(let ce of v.values())ce.conditions!=null&&(!ae.has(ce.locatorHash)||(qS(ce,he)||(qS(ce,le)&&e.report.reportWarningOnce(77,`${jr(this.configuration,ce)}: Your current architecture (${process.platform}-${process.arch}) is supported by this package, but is missing from the ${Mt(this.configuration,"supportedArchitectures",yt.SETTING)} setting`),De.add(ce.locatorHash)),Ee.add(ce.locatorHash)));this.storedResolutions=x,this.storedDescriptors=I,this.storedPackages=v,this.accessibleLocators=Ie,this.conditionalLocators=Ee,this.disabledLocators=De,this.originalPackages=E,this.optionalBuilds=ae,this.peerRequirements=Fe,this.peerWarnings=g}async fetchEverything({cache:e,report:r,fetcher:o,mode:a,persistProject:n=!0}){let u={mockedPackages:this.disabledLocators,unstablePackages:this.conditionalLocators},A=o||this.configuration.makeFetcher(),p={checksums:this.storedChecksums,project:this,cache:e,fetcher:A,report:r,cacheOptions:u},h=Array.from(new Set(ks(this.storedResolutions.values(),[E=>{let R=this.storedPackages.get(E);if(!R)throw new Error("Assertion failed: The locator should have been registered");return ba(R)}])));a==="update-lockfile"&&(h=h.filter(E=>!this.storedChecksums.has(E)));let C=!1,I=Xs.progressViaCounter(h.length);await r.reportProgress(I);let v=(0,rk.default)(QAt);if(await Uc(h.map(E=>v(async()=>{let R=this.storedPackages.get(E);if(!R)throw new Error("Assertion failed: The locator should have been registered");if(Hc(R))return;let L;try{L=await A.fetch(R,p)}catch(U){U.message=`${jr(this.configuration,R)}: ${U.message}`,r.reportExceptionOnce(U),C=U;return}L.checksum!=null?this.storedChecksums.set(R.locatorHash,L.checksum):this.storedChecksums.delete(R.locatorHash),L.releaseFs&&L.releaseFs()}).finally(()=>{I.tick()}))),C)throw C;let x=n&&a!=="update-lockfile"?await this.cacheCleanup({cache:e,report:r}):null;if(r.cacheMisses.size>0||x){let R=(await Promise.all([...r.cacheMisses].map(async Ae=>{let ye=this.storedPackages.get(Ae),ae=this.storedChecksums.get(Ae)??null,Ie=e.getLocatorPath(ye,ae);return(await oe.statPromise(Ie)).size}))).reduce((Ae,ye)=>Ae+ye,0)-(x?.size??0),L=r.cacheMisses.size,U=x?.count??0,z=`${nS(L,{zero:"No new packages",one:"A package was",more:`${Mt(this.configuration,L,yt.NUMBER)} packages were`})} added to the project`,te=`${nS(U,{zero:"none were",one:"one was",more:`${Mt(this.configuration,U,yt.NUMBER)} were`})} removed`,le=R!==0?` (${Mt(this.configuration,R,yt.SIZE_DIFF)})`:"",he=U>0?L>0?`${z}, and ${te}${le}.`:`${z}, but ${te}${le}.`:`${z}${le}.`;r.reportInfo(13,he)}}async linkEverything({cache:e,report:r,fetcher:o,mode:a}){let n={mockedPackages:this.disabledLocators,unstablePackages:this.conditionalLocators,skipIntegrityCheck:!0},u=o||this.configuration.makeFetcher(),A={checksums:this.storedChecksums,project:this,cache:e,fetcher:u,report:r,cacheOptions:n},p=this.configuration.getLinkers(),h={project:this,report:r},C=new Map(p.map(ce=>{let ne=ce.makeInstaller(h),ee=ce.getCustomDataKey(),we=this.linkersCustomData.get(ee);return typeof we<"u"&&ne.attachCustomData(we),[ce,ne]})),I=new Map,v=new Map,x=new Map,E=new Map(await Uc([...this.accessibleLocators].map(async ce=>{let ne=this.storedPackages.get(ce);if(!ne)throw new Error("Assertion failed: The locator should have been registered");return[ce,await u.fetch(ne,A)]}))),R=[],L=new Set,U=[];for(let ce of this.accessibleLocators){let ne=this.storedPackages.get(ce);if(typeof ne>"u")throw new Error("Assertion failed: The locator should have been registered");let ee=E.get(ne.locatorHash);if(typeof ee>"u")throw new Error("Assertion failed: The fetch result should have been registered");let we=[],xe=H=>{we.push(H)},ht=this.tryWorkspaceByLocator(ne);if(ht!==null){let H=[],{scripts:lt}=ht.manifest;for(let ke of["preinstall","install","postinstall"])lt.has(ke)&&H.push({type:0,script:ke});try{for(let[ke,be]of C)if(ke.supportsPackage(ne,h)&&(await be.installPackage(ne,ee,{holdFetchResult:xe})).buildRequest!==null)throw new Error("Assertion failed: Linkers can't return build directives for workspaces; this responsibility befalls to the Yarn core")}finally{we.length===0?ee.releaseFs?.():R.push(Uc(we).catch(()=>{}).then(()=>{ee.releaseFs?.()}))}let Te=V.join(ee.packageFs.getRealPath(),ee.prefixPath);v.set(ne.locatorHash,Te),!Hc(ne)&&H.length>0&&x.set(ne.locatorHash,{buildDirectives:H,buildLocations:[Te]})}else{let H=p.find(ke=>ke.supportsPackage(ne,h));if(!H)throw new Jt(12,`${jr(this.configuration,ne)} isn't supported by any available linker`);let lt=C.get(H);if(!lt)throw new Error("Assertion failed: The installer should have been registered");let Te;try{Te=await lt.installPackage(ne,ee,{holdFetchResult:xe})}finally{we.length===0?ee.releaseFs?.():R.push(Uc(we).then(()=>{}).then(()=>{ee.releaseFs?.()}))}I.set(ne.locatorHash,H),v.set(ne.locatorHash,Te.packageLocation),Te.buildRequest&&Te.packageLocation&&(Te.buildRequest.skipped?(L.add(ne.locatorHash),this.skippedBuilds.has(ne.locatorHash)||U.push([ne,Te.buildRequest.explain])):x.set(ne.locatorHash,{buildDirectives:Te.buildRequest.directives,buildLocations:[Te.packageLocation]}))}}let z=new Map;for(let ce of this.accessibleLocators){let ne=this.storedPackages.get(ce);if(!ne)throw new Error("Assertion failed: The locator should have been registered");let ee=this.tryWorkspaceByLocator(ne)!==null,we=async(xe,ht)=>{let H=v.get(ne.locatorHash);if(typeof H>"u")throw new Error(`Assertion failed: The package (${jr(this.configuration,ne)}) should have been registered`);let lt=[];for(let Te of ne.dependencies.values()){let ke=this.storedResolutions.get(Te.descriptorHash);if(typeof ke>"u")throw new Error(`Assertion failed: The resolution (${qn(this.configuration,Te)}, from ${jr(this.configuration,ne)})should have been registered`);let be=this.storedPackages.get(ke);if(typeof be>"u")throw new Error(`Assertion failed: The package (${ke}, resolved from ${qn(this.configuration,Te)}) should have been registered`);let _e=this.tryWorkspaceByLocator(be)===null?I.get(ke):null;if(typeof _e>"u")throw new Error(`Assertion failed: The package (${ke}, resolved from ${qn(this.configuration,Te)}) should have been registered`);_e===xe||_e===null?v.get(be.locatorHash)!==null&<.push([Te,be]):!ee&&H!==null&&qy(z,ke).push(H)}H!==null&&await ht.attachInternalDependencies(ne,lt)};if(ee)for(let[xe,ht]of C)xe.supportsPackage(ne,h)&&await we(xe,ht);else{let xe=I.get(ne.locatorHash);if(!xe)throw new Error("Assertion failed: The linker should have been found");let ht=C.get(xe);if(!ht)throw new Error("Assertion failed: The installer should have been registered");await we(xe,ht)}}for(let[ce,ne]of z){let ee=this.storedPackages.get(ce);if(!ee)throw new Error("Assertion failed: The package should have been registered");let we=I.get(ee.locatorHash);if(!we)throw new Error("Assertion failed: The linker should have been found");let xe=C.get(we);if(!xe)throw new Error("Assertion failed: The installer should have been registered");await xe.attachExternalDependents(ee,ne)}let te=new Map;for(let[ce,ne]of C){let ee=await ne.finalizeInstall();for(let we of ee?.records??[])we.buildRequest.skipped?(L.add(we.locator.locatorHash),this.skippedBuilds.has(we.locator.locatorHash)||U.push([we.locator,we.buildRequest.explain])):x.set(we.locator.locatorHash,{buildDirectives:we.buildRequest.directives,buildLocations:we.buildLocations});typeof ee?.customData<"u"&&te.set(ce.getCustomDataKey(),ee.customData)}if(this.linkersCustomData=te,await Uc(R),a==="skip-build")return;for(let[,ce]of ks(U,([ne])=>ba(ne)))ce(r);let le=new Set(this.storedPackages.keys()),he=new Set(x.keys());for(let ce of he)le.delete(ce);let Ae=(0,ek.createHash)("sha512");Ae.update(process.versions.node),await this.configuration.triggerHook(ce=>ce.globalHashGeneration,this,ce=>{Ae.update("\0"),Ae.update(ce)});let ye=Ae.digest("hex"),ae=new Map,Ie=ce=>{let ne=ae.get(ce.locatorHash);if(typeof ne<"u")return ne;let ee=this.storedPackages.get(ce.locatorHash);if(typeof ee>"u")throw new Error("Assertion failed: The package should have been registered");let we=(0,ek.createHash)("sha512");we.update(ce.locatorHash),ae.set(ce.locatorHash,"");for(let xe of ee.dependencies.values()){let ht=this.storedResolutions.get(xe.descriptorHash);if(typeof ht>"u")throw new Error(`Assertion failed: The resolution (${qn(this.configuration,xe)}) should have been registered`);let H=this.storedPackages.get(ht);if(typeof H>"u")throw new Error("Assertion failed: The package should have been registered");we.update(Ie(H))}return ne=we.digest("hex"),ae.set(ce.locatorHash,ne),ne},Fe=(ce,ne)=>{let ee=(0,ek.createHash)("sha512");ee.update(ye),ee.update(Ie(ce));for(let we of ne)ee.update(we);return ee.digest("hex")},g=new Map,Ee=!1,De=ce=>{let ne=new Set([ce.locatorHash]);for(let ee of ne){let we=this.storedPackages.get(ee);if(!we)throw new Error("Assertion failed: The package should have been registered");for(let xe of we.dependencies.values()){let ht=this.storedResolutions.get(xe.descriptorHash);if(!ht)throw new Error(`Assertion failed: The resolution (${qn(this.configuration,xe)}) should have been registered`);if(ht!==ce.locatorHash&&he.has(ht))return!1;let H=this.storedPackages.get(ht);if(!H)throw new Error("Assertion failed: The package should have been registered");let lt=this.tryWorkspaceByLocator(H);if(lt){if(lt.anchoredLocator.locatorHash!==ce.locatorHash&&he.has(lt.anchoredLocator.locatorHash))return!1;ne.add(lt.anchoredLocator.locatorHash)}ne.add(ht)}}return!0};for(;he.size>0;){let ce=he.size,ne=[];for(let ee of he){let we=this.storedPackages.get(ee);if(!we)throw new Error("Assertion failed: The package should have been registered");if(!De(we))continue;let xe=x.get(we.locatorHash);if(!xe)throw new Error("Assertion failed: The build directive should have been registered");let ht=Fe(we,xe.buildLocations);if(this.storedBuildState.get(we.locatorHash)===ht){g.set(we.locatorHash,ht),he.delete(ee);continue}Ee||(await this.persistInstallStateFile(),Ee=!0),this.storedBuildState.has(we.locatorHash)?r.reportInfo(8,`${jr(this.configuration,we)} must be rebuilt because its dependency tree changed`):r.reportInfo(7,`${jr(this.configuration,we)} must be built because it never has been before or the last one failed`);let H=xe.buildLocations.map(async lt=>{if(!V.isAbsolute(lt))throw new Error(`Assertion failed: Expected the build location to be absolute (not ${lt})`);for(let Te of xe.buildDirectives){let ke=`# This file contains the result of Yarn building a package (${ba(we)}) +`;switch(Te.type){case 0:ke+=`# Script name: ${Te.script} +`;break;case 1:ke+=`# Script code: ${Te.script} +`;break}let be=null;if(!await oe.mktempPromise(async Re=>{let ze=V.join(Re,"build.log"),{stdout:He,stderr:b}=this.configuration.getSubprocessStreams(ze,{header:ke,prefix:jr(this.configuration,we),report:r}),w;try{switch(Te.type){case 0:w=await Vb(we,Te.script,[],{cwd:lt,project:this,stdin:be,stdout:He,stderr:b});break;case 1:w=await wU(we,Te.script,[],{cwd:lt,project:this,stdin:be,stdout:He,stderr:b});break}}catch(F){b.write(F.stack),w=1}if(He.end(),b.end(),w===0)return!0;oe.detachTemp(Re);let S=`${jr(this.configuration,we)} couldn't be built successfully (exit code ${Mt(this.configuration,w,yt.NUMBER)}, logs can be found here: ${Mt(this.configuration,ze,yt.PATH)})`,y=this.optionalBuilds.has(we.locatorHash);return y?r.reportInfo(9,S):r.reportError(9,S),Jce&&r.reportFold(ue.fromPortablePath(ze),oe.readFileSync(ze,"utf8")),y}))return!1}return!0});ne.push(...H,Promise.allSettled(H).then(lt=>{he.delete(ee),lt.every(Te=>Te.status==="fulfilled"&&Te.value===!0)&&g.set(we.locatorHash,ht)}))}if(await Uc(ne),ce===he.size){let ee=Array.from(he).map(we=>{let xe=this.storedPackages.get(we);if(!xe)throw new Error("Assertion failed: The package should have been registered");return jr(this.configuration,xe)}).join(", ");r.reportError(3,`Some packages have circular dependencies that make their build order unsatisfiable - as a result they won't be built (affected packages are: ${ee})`);break}}this.storedBuildState=g,this.skippedBuilds=L}async installWithNewReport(e,r){return(await Nt.start({configuration:this.configuration,json:e.json,stdout:e.stdout,forceSectionAlignment:!0,includeLogs:!e.json&&!e.quiet,includeVersion:!0},async a=>{await this.install({...r,report:a})})).exitCode()}async install(e){let r=this.configuration.get("nodeLinker");Ke.telemetry?.reportInstall(r);let o=!1;if(await e.report.startTimerPromise("Project validation",{skipIfEmpty:!0},async()=>{this.configuration.get("enableOfflineMode")&&e.report.reportWarning(90,"Offline work is enabled; Yarn won't fetch packages from the remote registry if it can avoid it"),await this.configuration.triggerHook(C=>C.validateProject,this,{reportWarning:(C,I)=>{e.report.reportWarning(C,I)},reportError:(C,I)=>{e.report.reportError(C,I),o=!0}})}),o)return;let a=await this.configuration.getPackageExtensions();for(let C of a.values())for(let[,I]of C)for(let v of I)v.status="inactive";let n=V.join(this.cwd,dr.lockfile),u=null;if(e.immutable)try{u=await oe.readFilePromise(n,"utf8")}catch(C){throw C.code==="ENOENT"?new Jt(28,"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()=>{NAt(this,e.report);for(let[,C]of a)for(let[,I]of C)for(let v of I)if(v.userProvided){let x=Mt(this.configuration,v,yt.PACKAGE_EXTENSION);switch(v.status){case"inactive":e.report.reportWarning(68,`${x}: No matching package in the dependency tree; you may not need this rule anymore.`);break;case"redundant":e.report.reportWarning(69,`${x}: This rule seems redundant when applied on the original package; the extension may have been applied upstream.`);break}}if(u!==null){let C=Mg(u,this.generateLockfile());if(C!==u){let I=hpe(n,n,u,C,void 0,void 0,{maxEditLength:100});if(I){e.report.reportSeparator();for(let v of I.hunks){e.report.reportInfo(null,`@@ -${v.oldStart},${v.oldLines} +${v.newStart},${v.newLines} @@`);for(let x of v.lines)x.startsWith("+")?e.report.reportError(28,Mt(this.configuration,x,yt.ADDED)):x.startsWith("-")?e.report.reportError(28,Mt(this.configuration,x,yt.REMOVED)):e.report.reportInfo(null,Mt(this.configuration,x,"grey"))}e.report.reportSeparator()}throw new Jt(28,"The lockfile would have been modified by this install, which is explicitly forbidden.")}}});for(let C of a.values())for(let[,I]of C)for(let v of I)v.userProvided&&v.status==="active"&&Ke.telemetry?.reportPackageExtension(md(v,yt.PACKAGE_EXTENSION));await e.report.startTimerPromise("Fetch step",async()=>{await this.fetchEverything(e)});let A=e.immutable?[...new Set(this.configuration.get("immutablePatterns"))].sort():[],p=await Promise.all(A.map(async C=>OS(C,{cwd:this.cwd})));(typeof e.persistProject>"u"||e.persistProject)&&await this.persist(),await e.report.startTimerPromise("Link step",async()=>{if(e.mode==="update-lockfile"){e.report.reportWarning(73,`Skipped due to ${Mt(this.configuration,"mode=update-lockfile",yt.CODE)}`);return}await this.linkEverything(e);let C=await Promise.all(A.map(async I=>OS(I,{cwd:this.cwd})));for(let I=0;I{await this.configuration.triggerHook(C=>C.validateProjectAfterInstall,this,{reportWarning:(C,I)=>{e.report.reportWarning(C,I)},reportError:(C,I)=>{e.report.reportError(C,I),h=!0}})}),!h&&await this.configuration.triggerHook(C=>C.afterAllInstalled,this,e)}generateLockfile(){let e=new Map;for(let[n,u]of this.storedResolutions.entries()){let A=e.get(u);A||e.set(u,A=new Set),A.add(n)}let r={},{cacheKey:o}=Lr.getCacheKey(this.configuration);r.__metadata={version:nk,cacheKey:o};for(let[n,u]of e.entries()){let A=this.originalPackages.get(n);if(!A)continue;let p=[];for(let x of u){let E=this.storedDescriptors.get(x);if(!E)throw new Error("Assertion failed: The descriptor should have been registered");p.push(E)}let h=p.map(x=>Sa(x)).sort().join(", "),C=new Ot;C.version=A.linkType==="HARD"?A.version:"0.0.0-use.local",C.languageName=A.languageName,C.dependencies=new Map(A.dependencies),C.peerDependencies=new Map(A.peerDependencies),C.dependenciesMeta=new Map(A.dependenciesMeta),C.peerDependenciesMeta=new Map(A.peerDependenciesMeta),C.bin=new Map(A.bin);let I,v=this.storedChecksums.get(A.locatorHash);if(typeof v<"u"){let x=v.indexOf("/");if(x===-1)throw new Error("Assertion failed: Expected the checksum to reference its cache key");let E=v.slice(0,x),R=v.slice(x+1);E===o?I=R:I=v}r[h]={...C.exportTo({},{compatibilityMode:!1}),linkType:A.linkType.toLowerCase(),resolution:ba(A),checksum:I,conditions:A.conditions||void 0}}return`${[`# This file is generated by running "yarn install" inside your project. +`,`# Manual changes might be lost - proceed with caution! +`].join("")} +`+Ba(r)}async persistLockfile(){let e=V.join(this.cwd,dr.lockfile),r="";try{r=await oe.readFilePromise(e,"utf8")}catch{}let o=this.generateLockfile(),a=Mg(r,o);a!==r&&(await oe.writeFilePromise(e,a),this.lockFileChecksum=Xpe(a),this.lockfileNeedsRefresh=!1)}async persistInstallStateFile(){let e=[];for(let u of Object.values(k_))e.push(...u);let r=(0,tk.default)(this,e),o=Q_.default.serialize(r),a=Js(o);if(this.installStateChecksum===a)return;let n=this.configuration.get("installStatePath");await oe.mkdirPromise(V.dirname(n),{recursive:!0}),await oe.writeFilePromise(n,await FAt(o)),this.installStateChecksum=a}async restoreInstallState({restoreLinkersCustomData:e=!0,restoreResolutions:r=!0,restoreBuildState:o=!0}={}){let a=this.configuration.get("installStatePath"),n;try{let u=await RAt(await oe.readFilePromise(a));n=Q_.default.deserialize(u),this.installStateChecksum=Js(u)}catch{r&&await this.applyLightResolution();return}e&&typeof n.linkersCustomData<"u"&&(this.linkersCustomData=n.linkersCustomData),o&&Object.assign(this,(0,tk.default)(n,k_.restoreBuildState)),r&&(n.lockFileChecksum===this.lockFileChecksum?Object.assign(this,(0,tk.default)(n,k_.restoreResolutions)):await this.applyLightResolution())}async applyLightResolution(){await this.resolveEverything({lockfileOnly:!0,report:new Qi}),await this.persistInstallStateFile()}async persist(){let e=(0,rk.default)(4);await Promise.all([this.persistLockfile(),...this.workspaces.map(r=>e(()=>r.persistManifest()))])}async cacheCleanup({cache:e,report:r}){if(this.configuration.get("enableGlobalCache"))return null;let o=new Set([".gitignore"]);if(!IM(e.cwd,this.cwd)||!await oe.existsPromise(e.cwd))return null;let a=[];for(let u of await oe.readdirPromise(e.cwd)){if(o.has(u))continue;let A=V.resolve(e.cwd,u);e.markedFiles.has(A)||(e.immutable?r.reportError(56,`${Mt(this.configuration,V.basename(A),"magenta")} appears to be unused and would be marked for deletion, but the cache is immutable`):a.push(oe.lstatPromise(A).then(async p=>(await oe.removePromise(A),p.size))))}if(a.length===0)return null;let n=await Promise.all(a);return{count:a.length,size:n.reduce((u,A)=>u+A,0)}}}});function LAt(t){let o=Math.floor(t.timeNow/864e5),a=t.updateInterval*864e5,n=t.state.lastUpdate??t.timeNow+a+Math.floor(a*t.randomInitialInterval),u=n+a,A=t.state.lastTips??o*864e5,p=A+864e5+8*36e5-t.timeZone,h=u<=t.timeNow,C=p<=t.timeNow,I=null;return(h||C||!t.state.lastUpdate||!t.state.lastTips)&&(I={},I.lastUpdate=h?t.timeNow:n,I.lastTips=A,I.blocks=h?{}:t.state.blocks,I.displayedTips=t.state.displayedTips),{nextState:I,triggerUpdate:h,triggerTips:C,nextTips:C?o*864e5:A}}var lC,ehe=Et(()=>{Pt();T1();rh();vb();jl();xf();lC=class{constructor(e,r){this.values=new Map;this.hits=new Map;this.enumerators=new Map;this.nextTips=0;this.displayedTips=[];this.shouldCommitTips=!1;this.configuration=e;let o=this.getRegistryPath();this.isNew=!oe.existsSync(o),this.shouldShowTips=!1,this.sendReport(r),this.startBuffer()}commitTips(){this.shouldShowTips&&(this.shouldCommitTips=!0)}selectTip(e){let r=new Set(this.displayedTips),o=A=>A&&tn?bf(tn,A):!1,a=e.map((A,p)=>p).filter(A=>e[A]&&o(e[A]?.selector));if(a.length===0)return null;let n=a.filter(A=>!r.has(A));if(n.length===0){let A=Math.floor(a.length*.2);this.displayedTips=A>0?this.displayedTips.slice(-A):[],n=a.filter(p=>!r.has(p))}let u=n[Math.floor(Math.random()*n.length)];return this.displayedTips.push(u),this.commitTips(),e[u]}reportVersion(e){this.reportValue("version",e.replace(/-git\..*/,"-git"))}reportCommandName(e){this.reportValue("commandName",e||"")}reportPluginName(e){this.reportValue("pluginName",e)}reportProject(e){this.reportEnumerator("projectCount",e)}reportInstall(e){this.reportHit("installCount",e)}reportPackageExtension(e){this.reportValue("packageExtension",e)}reportWorkspaceCount(e){this.reportValue("workspaceCount",String(e))}reportDependencyCount(e){this.reportValue("dependencyCount",String(e))}reportValue(e,r){gd(this.values,e).add(r)}reportEnumerator(e,r){gd(this.enumerators,e).add(Js(r))}reportHit(e,r="*"){let o=Gy(this.hits,e),a=ol(o,r,()=>0);o.set(r,a+1)}getRegistryPath(){let e=this.configuration.get("globalFolder");return V.join(e,"telemetry.json")}sendReport(e){let r=this.getRegistryPath(),o;try{o=oe.readJsonSync(r)}catch{o={}}let{nextState:a,triggerUpdate:n,triggerTips:u,nextTips:A}=LAt({state:o,timeNow:Date.now(),timeZone:new Date().getTimezoneOffset()*60*1e3,randomInitialInterval:Math.random(),updateInterval:this.configuration.get("telemetryInterval")});if(this.nextTips=A,this.displayedTips=o.displayedTips??[],a!==null)try{oe.mkdirSync(V.dirname(r),{recursive:!0}),oe.writeJsonSync(r,a)}catch{return!1}if(u&&this.configuration.get("enableTips")&&(this.shouldShowTips=!0),n){let p=o.blocks??{};if(Object.keys(p).length===0){let h=`https://browser-http-intake.logs.datadoghq.eu/v1/input/${e}?ddsource=yarn`,C=I=>U4(h,I,{configuration:this.configuration}).catch(()=>{});for(let[I,v]of Object.entries(o.blocks??{})){if(Object.keys(v).length===0)continue;let x=v;x.userId=I,x.reportType="primary";for(let L of Object.keys(x.enumerators??{}))x.enumerators[L]=x.enumerators[L].length;C(x);let E=new Map,R=20;for(let[L,U]of Object.entries(x.values))U.length>0&&E.set(L,U.slice(0,R));for(;E.size>0;){let L={};L.userId=I,L.reportType="secondary",L.metrics={};for(let[U,z]of E)L.metrics[U]=z.shift(),z.length===0&&E.delete(U);C(L)}}}}return!0}applyChanges(){let e=this.getRegistryPath(),r;try{r=oe.readJsonSync(e)}catch{r={}}let o=this.configuration.get("telemetryUserId")??"*",a=r.blocks=r.blocks??{},n=a[o]=a[o]??{};for(let u of this.hits.keys()){let A=n.hits=n.hits??{},p=A[u]=A[u]??{};for(let[h,C]of this.hits.get(u))p[h]=(p[h]??0)+C}for(let u of["values","enumerators"])for(let A of this[u].keys()){let p=n[u]=n[u]??{};p[A]=[...new Set([...p[A]??[],...this[u].get(A)??[]])]}this.shouldCommitTips&&(r.lastTips=this.nextTips,r.displayedTips=this.displayedTips),oe.mkdirSync(V.dirname(e),{recursive:!0}),oe.writeJsonSync(e,r)}startBuffer(){process.on("exit",()=>{try{this.applyChanges()}catch{}})}}});var i2={};Vt(i2,{BuildDirectiveType:()=>Jx,CACHE_CHECKPOINT:()=>A_,CACHE_VERSION:()=>zx,Cache:()=>Lr,Configuration:()=>Ke,DEFAULT_RC_FILENAME:()=>W4,FormatType:()=>Fle,InstallMode:()=>pl,LEGACY_PLUGINS:()=>I1,LOCKFILE_VERSION:()=>nk,LegacyMigrationResolver:()=>iC,LightReport:()=>AA,LinkType:()=>Vy,LockfileResolver:()=>sC,Manifest:()=>Ot,MessageName:()=>wr,MultiFetcher:()=>fE,PackageExtensionStatus:()=>DL,PackageExtensionType:()=>vL,PeerWarningType:()=>ik,Project:()=>St,Report:()=>Xs,ReportError:()=>Jt,SettingsType:()=>B1,StreamReport:()=>Nt,TAG_REGEXP:()=>kE,TelemetryManager:()=>lC,ThrowReport:()=>Qi,VirtualFetcher:()=>pE,WindowsLinkType:()=>Qb,Workspace:()=>aC,WorkspaceFetcher:()=>gE,WorkspaceResolver:()=>Xn,YarnVersion:()=>tn,execUtils:()=>Ur,folderUtils:()=>WS,formatUtils:()=>de,hashUtils:()=>wn,httpUtils:()=>rn,miscUtils:()=>je,nodeUtils:()=>zi,parseMessageName:()=>fP,reportOptionDeprecations:()=>TE,scriptUtils:()=>un,semverUtils:()=>kr,stringifyMessageName:()=>Wu,structUtils:()=>W,tgzUtils:()=>Xi,treeUtils:()=>$s});var Ye=Et(()=>{Sb();KS();ql();rh();vb();jl();Pb();DU();xf();bo();epe();ape();f_();v1();v1();cpe();p_();upe();h_();uE();pP();AM();$pe();Yl();N1();ehe();b_();pM();hM();Id();x_();T1();Bne()});var ohe=_((Y_t,o2)=>{"use strict";var MAt=process.env.TERM_PROGRAM==="Hyper",UAt=process.platform==="win32",nhe=process.platform==="linux",T_={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"},ihe=Object.assign({},T_,{check:"\u221A",cross:"\xD7",ellipsisLarge:"...",ellipsis:"...",info:"i",question:"?",questionSmall:"?",pointer:">",pointerSmall:"\xBB",radioOff:"( )",radioOn:"(*)",warning:"\u203C"}),she=Object.assign({},T_,{ballotCross:"\u2718",check:"\u2714",cross:"\u2716",ellipsisLarge:"\u22EF",ellipsis:"\u2026",info:"\u2139",question:"?",questionFull:"\uFF1F",questionSmall:"\uFE56",pointer:nhe?"\u25B8":"\u276F",pointerSmall:nhe?"\u2023":"\u203A",radioOff:"\u25EF",radioOn:"\u25C9",warning:"\u26A0"});o2.exports=UAt&&!MAt?ihe:she;Reflect.defineProperty(o2.exports,"common",{enumerable:!1,value:T_});Reflect.defineProperty(o2.exports,"windows",{enumerable:!1,value:ihe});Reflect.defineProperty(o2.exports,"other",{enumerable:!1,value:she})});var Kc=_((W_t,N_)=>{"use strict";var _At=t=>t!==null&&typeof t=="object"&&!Array.isArray(t),HAt=/[\u001b\u009b][[\]#;?()]*(?:(?:(?:[^\W_]*;?[^\W_]*)\u0007)|(?:(?:[0-9]{1,4}(;[0-9]{0,4})*)?[~0-9=<>cf-nqrtyA-PRZ]))/g,ahe=()=>{let t={enabled:!0,visible:!0,styles:{},keys:{}};"FORCE_COLOR"in process.env&&(t.enabled=process.env.FORCE_COLOR!=="0");let e=n=>{let u=n.open=`\x1B[${n.codes[0]}m`,A=n.close=`\x1B[${n.codes[1]}m`,p=n.regex=new RegExp(`\\u001b\\[${n.codes[1]}m`,"g");return n.wrap=(h,C)=>{h.includes(A)&&(h=h.replace(p,A+u));let I=u+h+A;return C?I.replace(/\r*\n/g,`${A}$&${u}`):I},n},r=(n,u,A)=>typeof n=="function"?n(u):n.wrap(u,A),o=(n,u)=>{if(n===""||n==null)return"";if(t.enabled===!1)return n;if(t.visible===!1)return"";let A=""+n,p=A.includes(` +`),h=u.length;for(h>0&&u.includes("unstyle")&&(u=[...new Set(["unstyle",...u])].reverse());h-- >0;)A=r(t.styles[u[h]],A,p);return A},a=(n,u,A)=>{t.styles[n]=e({name:n,codes:u}),(t.keys[A]||(t.keys[A]=[])).push(n),Reflect.defineProperty(t,n,{configurable:!0,enumerable:!0,set(h){t.alias(n,h)},get(){let h=C=>o(C,h.stack);return Reflect.setPrototypeOf(h,t),h.stack=this.stack?this.stack.concat(n):[n],h}})};return a("reset",[0,0],"modifier"),a("bold",[1,22],"modifier"),a("dim",[2,22],"modifier"),a("italic",[3,23],"modifier"),a("underline",[4,24],"modifier"),a("inverse",[7,27],"modifier"),a("hidden",[8,28],"modifier"),a("strikethrough",[9,29],"modifier"),a("black",[30,39],"color"),a("red",[31,39],"color"),a("green",[32,39],"color"),a("yellow",[33,39],"color"),a("blue",[34,39],"color"),a("magenta",[35,39],"color"),a("cyan",[36,39],"color"),a("white",[37,39],"color"),a("gray",[90,39],"color"),a("grey",[90,39],"color"),a("bgBlack",[40,49],"bg"),a("bgRed",[41,49],"bg"),a("bgGreen",[42,49],"bg"),a("bgYellow",[43,49],"bg"),a("bgBlue",[44,49],"bg"),a("bgMagenta",[45,49],"bg"),a("bgCyan",[46,49],"bg"),a("bgWhite",[47,49],"bg"),a("blackBright",[90,39],"bright"),a("redBright",[91,39],"bright"),a("greenBright",[92,39],"bright"),a("yellowBright",[93,39],"bright"),a("blueBright",[94,39],"bright"),a("magentaBright",[95,39],"bright"),a("cyanBright",[96,39],"bright"),a("whiteBright",[97,39],"bright"),a("bgBlackBright",[100,49],"bgBright"),a("bgRedBright",[101,49],"bgBright"),a("bgGreenBright",[102,49],"bgBright"),a("bgYellowBright",[103,49],"bgBright"),a("bgBlueBright",[104,49],"bgBright"),a("bgMagentaBright",[105,49],"bgBright"),a("bgCyanBright",[106,49],"bgBright"),a("bgWhiteBright",[107,49],"bgBright"),t.ansiRegex=HAt,t.hasColor=t.hasAnsi=n=>(t.ansiRegex.lastIndex=0,typeof n=="string"&&n!==""&&t.ansiRegex.test(n)),t.alias=(n,u)=>{let A=typeof u=="string"?t[u]:u;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:n}),t.styles[n]=A,A.stack=[n]),Reflect.defineProperty(t,n,{configurable:!0,enumerable:!0,set(p){t.alias(n,p)},get(){let p=h=>o(h,p.stack);return Reflect.setPrototypeOf(p,t),p.stack=this.stack?this.stack.concat(A.stack):A.stack,p}})},t.theme=n=>{if(!_At(n))throw new TypeError("Expected theme to be an object");for(let u of Object.keys(n))t.alias(u,n[u]);return t},t.alias("unstyle",n=>typeof n=="string"&&n!==""?(t.ansiRegex.lastIndex=0,n.replace(t.ansiRegex,"")):""),t.alias("noop",n=>n),t.none=t.clear=t.noop,t.stripColor=t.unstyle,t.symbols=ohe(),t.define=a,t};N_.exports=ahe();N_.exports.create=ahe});var No=_(nn=>{"use strict";var jAt=Object.prototype.toString,rc=Kc(),lhe=!1,L_=[],che={yellow:"blue",cyan:"red",green:"magenta",black:"white",blue:"yellow",red:"cyan",magenta:"green",white:"black"};nn.longest=(t,e)=>t.reduce((r,o)=>Math.max(r,e?o[e].length:o.length),0);nn.hasColor=t=>!!t&&rc.hasColor(t);var ok=nn.isObject=t=>t!==null&&typeof t=="object"&&!Array.isArray(t);nn.nativeType=t=>jAt.call(t).slice(8,-1).toLowerCase().replace(/\s/g,"");nn.isAsyncFn=t=>nn.nativeType(t)==="asyncfunction";nn.isPrimitive=t=>t!=null&&typeof t!="object"&&typeof t!="function";nn.resolve=(t,e,...r)=>typeof e=="function"?e.call(t,...r):e;nn.scrollDown=(t=[])=>[...t.slice(1),t[0]];nn.scrollUp=(t=[])=>[t.pop(),...t];nn.reorder=(t=[])=>{let e=t.slice();return e.sort((r,o)=>r.index>o.index?1:r.index{let o=t.length,a=r===o?0:r<0?o-1:r,n=t[e];t[e]=t[a],t[a]=n};nn.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};nn.height=(t,e=20)=>{let r=t&&t.rows?t.rows:e;return t&&typeof t.getWindowSize=="function"&&(r=t.getWindowSize()[1]),r};nn.wordWrap=(t,e={})=>{if(!t)return t;typeof e=="number"&&(e={width:e});let{indent:r="",newline:o=` +`+r,width:a=80}=e,n=(o+r).match(/[^\S\n]/g)||[];a-=n.length;let u=`.{1,${a}}([\\s\\u200B]+|$)|[^\\s\\u200B]+?([\\s\\u200B]+|$)`,A=t.trim(),p=new RegExp(u,"g"),h=A.match(p)||[];return h=h.map(C=>C.replace(/\n$/,"")),e.padEnd&&(h=h.map(C=>C.padEnd(a," "))),e.padStart&&(h=h.map(C=>C.padStart(a," "))),r+h.join(o)};nn.unmute=t=>{let e=t.stack.find(o=>rc.keys.color.includes(o));return e?rc[e]:t.stack.find(o=>o.slice(2)==="bg")?rc[e.slice(2)]:o=>o};nn.pascal=t=>t?t[0].toUpperCase()+t.slice(1):"";nn.inverse=t=>{if(!t||!t.stack)return t;let e=t.stack.find(o=>rc.keys.color.includes(o));if(e){let o=rc["bg"+nn.pascal(e)];return o?o.black:t}let r=t.stack.find(o=>o.slice(0,2)==="bg");return r?rc[r.slice(2).toLowerCase()]||t:rc.none};nn.complement=t=>{if(!t||!t.stack)return t;let e=t.stack.find(o=>rc.keys.color.includes(o)),r=t.stack.find(o=>o.slice(0,2)==="bg");if(e&&!r)return rc[che[e]||e];if(r){let o=r.slice(2).toLowerCase(),a=che[o];return a&&rc["bg"+nn.pascal(a)]||t}return rc.none};nn.meridiem=t=>{let e=t.getHours(),r=t.getMinutes(),o=e>=12?"pm":"am";e=e%12;let a=e===0?12:e,n=r<10?"0"+r:r;return a+":"+n+" "+o};nn.set=(t={},e="",r)=>e.split(".").reduce((o,a,n,u)=>{let A=u.length-1>n?o[a]||{}:r;return!nn.isObject(A)&&n{let o=t[e]==null?e.split(".").reduce((a,n)=>a&&a[n],t):t[e];return o??r};nn.mixin=(t,e)=>{if(!ok(t))return e;if(!ok(e))return t;for(let r of Object.keys(e)){let o=Object.getOwnPropertyDescriptor(e,r);if(o.hasOwnProperty("value"))if(t.hasOwnProperty(r)&&ok(o.value)){let a=Object.getOwnPropertyDescriptor(t,r);ok(a.value)?t[r]=nn.merge({},t[r],e[r]):Reflect.defineProperty(t,r,o)}else Reflect.defineProperty(t,r,o);else Reflect.defineProperty(t,r,o)}return t};nn.merge=(...t)=>{let e={};for(let r of t)nn.mixin(e,r);return e};nn.mixinEmitter=(t,e)=>{let r=e.constructor.prototype;for(let o of Object.keys(r)){let a=r[o];typeof a=="function"?nn.define(t,o,a.bind(e)):nn.define(t,o,a)}};nn.onExit=t=>{let e=(r,o)=>{lhe||(lhe=!0,L_.forEach(a=>a()),r===!0&&process.exit(128+o))};L_.length===0&&(process.once("SIGTERM",e.bind(null,!0,15)),process.once("SIGINT",e.bind(null,!0,2)),process.once("exit",e)),L_.push(t)};nn.define=(t,e,r)=>{Reflect.defineProperty(t,e,{value:r})};nn.defineExport=(t,e,r)=>{let o;Reflect.defineProperty(t,e,{enumerable:!0,configurable:!0,set(a){o=a},get(){return o?o():r()}})}});var uhe=_(fC=>{"use strict";fC.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"};fC.shift={up:"shiftUp",down:"shiftDown",left:"shiftLeft",right:"shiftRight",tab:"prev"};fC.fn={up:"pageUp",down:"pageDown",left:"pageLeft",right:"pageRight",delete:"deleteForward"};fC.option={b:"backward",f:"forward",d:"cutRight",left:"cutLeft",up:"altUp",down:"altDown"};fC.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 phe=_((z_t,fhe)=>{"use strict";var Ahe=Be("readline"),qAt=uhe(),GAt=/^(?:\x1b)([a-zA-Z0-9])$/,YAt=/^(?:\x1b+)(O|N|\[|\[\[)(?:(\d+)(?:;(\d+))?([~^$])|(?:1;)?(\d+)?([a-zA-Z]))/,WAt={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 KAt(t){return["[a","[b","[c","[d","[e","[2$","[3$","[5$","[6$","[7$","[8$","[Z"].includes(t)}function VAt(t){return["Oa","Ob","Oc","Od","Oe","[2^","[3^","[5^","[6^","[7^","[8^"].includes(t)}var ak=(t="",e={})=>{let r,o={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="\x1B"+String(t)):t=String(t):t!==void 0&&typeof t!="string"?t=String(t):t||(t=o.sequence||""),o.sequence=o.sequence||t||o.name,t==="\r")o.raw=void 0,o.name="return";else if(t===` +`)o.name="enter";else if(t===" ")o.name="tab";else if(t==="\b"||t==="\x7F"||t==="\x1B\x7F"||t==="\x1B\b")o.name="backspace",o.meta=t.charAt(0)==="\x1B";else if(t==="\x1B"||t==="\x1B\x1B")o.name="escape",o.meta=t.length===2;else if(t===" "||t==="\x1B ")o.name="space",o.meta=t.length===2;else if(t<="")o.name=String.fromCharCode(t.charCodeAt(0)+"a".charCodeAt(0)-1),o.ctrl=!0;else if(t.length===1&&t>="0"&&t<="9")o.name="number";else if(t.length===1&&t>="a"&&t<="z")o.name=t;else if(t.length===1&&t>="A"&&t<="Z")o.name=t.toLowerCase(),o.shift=!0;else if(r=GAt.exec(t))o.meta=!0,o.shift=/^[A-Z]$/.test(r[1]);else if(r=YAt.exec(t)){let a=[...t];a[0]==="\x1B"&&a[1]==="\x1B"&&(o.option=!0);let n=[r[1],r[2],r[4],r[6]].filter(Boolean).join(""),u=(r[3]||r[5]||1)-1;o.ctrl=!!(u&4),o.meta=!!(u&10),o.shift=!!(u&1),o.code=n,o.name=WAt[n],o.shift=KAt(n)||o.shift,o.ctrl=VAt(n)||o.ctrl}return o};ak.listen=(t={},e)=>{let{stdin:r}=t;if(!r||r!==process.stdin&&!r.isTTY)throw new Error("Invalid stream passed");let o=Ahe.createInterface({terminal:!0,input:r});Ahe.emitKeypressEvents(r,o);let a=(A,p)=>e(A,ak(A,p),o),n=r.isRaw;return r.isTTY&&r.setRawMode(!0),r.on("keypress",a),o.resume(),()=>{r.isTTY&&r.setRawMode(n),r.removeListener("keypress",a),o.pause(),o.close()}};ak.action=(t,e,r)=>{let o={...qAt,...r};return e.ctrl?(e.action=o.ctrl[e.name],e):e.option&&o.option?(e.action=o.option[e.name],e):e.shift?(e.action=o.shift[e.name],e):(e.action=o.keys[e.name],e)};fhe.exports=ak});var ghe=_((J_t,hhe)=>{"use strict";hhe.exports=t=>{t.timers=t.timers||{};let e=t.options.timers;if(!!e)for(let r of Object.keys(e)){let o=e[r];typeof o=="number"&&(o={interval:o}),zAt(t,r,o)}};function zAt(t,e,r={}){let o=t.timers[e]={name:e,start:Date.now(),ms:0,tick:0},a=r.interval||120;o.frames=r.frames||[],o.loading=!0;let n=setInterval(()=>{o.ms=Date.now()-o.start,o.tick++,t.render()},a);return o.stop=()=>{o.loading=!1,clearInterval(n)},Reflect.defineProperty(o,"interval",{value:n}),t.once("close",()=>o.stop()),o.stop}});var mhe=_((X_t,dhe)=>{"use strict";var{define:JAt,width:XAt}=No(),O_=class{constructor(e){let r=e.options;JAt(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=XAt(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"}};dhe.exports=O_});var Ehe=_((Z_t,yhe)=>{"use strict";var M_=No(),eo=Kc(),U_={default:eo.noop,noop:eo.noop,set inverse(t){this._inverse=t},get inverse(){return this._inverse||M_.inverse(this.primary)},set complement(t){this._complement=t},get complement(){return this._complement||M_.complement(this.primary)},primary:eo.cyan,success:eo.green,danger:eo.magenta,strong:eo.bold,warning:eo.yellow,muted:eo.dim,disabled:eo.gray,dark:eo.dim.gray,underline:eo.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}};U_.merge=(t={})=>{t.styles&&typeof t.styles.enabled=="boolean"&&(eo.enabled=t.styles.enabled),t.styles&&typeof t.styles.visible=="boolean"&&(eo.visible=t.styles.visible);let e=M_.merge({},U_,t.styles);delete e.merge;for(let r of Object.keys(eo))e.hasOwnProperty(r)||Reflect.defineProperty(e,r,{get:()=>eo[r]});for(let r of Object.keys(eo.styles))e.hasOwnProperty(r)||Reflect.defineProperty(e,r,{get:()=>eo[r]});return e};yhe.exports=U_});var whe=_(($_t,Che)=>{"use strict";var __=process.platform==="win32",Wf=Kc(),ZAt=No(),H_={...Wf.symbols,upDownDoubleArrow:"\u21D5",upDownDoubleArrow2:"\u2B0D",upDownArrow:"\u2195",asterisk:"*",asterism:"\u2042",bulletWhite:"\u25E6",electricArrow:"\u2301",ellipsisLarge:"\u22EF",ellipsisSmall:"\u2026",fullBlock:"\u2588",identicalTo:"\u2261",indicator:Wf.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:Wf.symbols.question,submitted:Wf.symbols.check,cancelled:Wf.symbols.cross},separator:{pending:Wf.symbols.pointerSmall,submitted:Wf.symbols.middot,cancelled:Wf.symbols.middot},radio:{off:__?"( )":"\u25EF",on:__?"(*)":"\u25C9",disabled:__?"(|)":"\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"]};H_.merge=t=>{let e=ZAt.merge({},Wf.symbols,H_,t.symbols);return delete e.merge,e};Che.exports=H_});var Bhe=_((e8t,Ihe)=>{"use strict";var $At=Ehe(),eft=whe(),tft=No();Ihe.exports=t=>{t.options=tft.merge({},t.options.theme,t.options),t.symbols=eft.merge(t.options),t.styles=$At.merge(t.options)}});var bhe=_((Phe,She)=>{"use strict";var vhe=process.env.TERM_PROGRAM==="Apple_Terminal",rft=Kc(),j_=No(),Vc=She.exports=Phe,Di="\x1B[",Dhe="\x07",q_=!1,Ph=Vc.code={bell:Dhe,beep:Dhe,beginning:`${Di}G`,down:`${Di}J`,esc:Di,getPosition:`${Di}6n`,hide:`${Di}?25l`,line:`${Di}2K`,lineEnd:`${Di}K`,lineStart:`${Di}1K`,restorePosition:Di+(vhe?"8":"u"),savePosition:Di+(vhe?"7":"s"),screen:`${Di}2J`,show:`${Di}?25h`,up:`${Di}1J`},jd=Vc.cursor={get hidden(){return q_},hide(){return q_=!0,Ph.hide},show(){return q_=!1,Ph.show},forward:(t=1)=>`${Di}${t}C`,backward:(t=1)=>`${Di}${t}D`,nextLine:(t=1)=>`${Di}E`.repeat(t),prevLine:(t=1)=>`${Di}F`.repeat(t),up:(t=1)=>t?`${Di}${t}A`:"",down:(t=1)=>t?`${Di}${t}B`:"",right:(t=1)=>t?`${Di}${t}C`:"",left:(t=1)=>t?`${Di}${t}D`:"",to(t,e){return e?`${Di}${e+1};${t+1}H`:`${Di}${t+1}G`},move(t=0,e=0){let r="";return r+=t<0?jd.left(-t):t>0?jd.right(t):"",r+=e<0?jd.up(-e):e>0?jd.down(e):"",r},restore(t={}){let{after:e,cursor:r,initial:o,input:a,prompt:n,size:u,value:A}=t;if(o=j_.isPrimitive(o)?String(o):"",a=j_.isPrimitive(a)?String(a):"",A=j_.isPrimitive(A)?String(A):"",u){let p=Vc.cursor.up(u)+Vc.cursor.to(n.length),h=a.length-r;return h>0&&(p+=Vc.cursor.left(h)),p}if(A||e){let p=!a&&!!o?-o.length:-a.length+r;return e&&(p-=e.length),a===""&&o&&!n.includes(o)&&(p+=o.length),Vc.cursor.move(p)}}},G_=Vc.erase={screen:Ph.screen,up:Ph.up,down:Ph.down,line:Ph.line,lineEnd:Ph.lineEnd,lineStart:Ph.lineStart,lines(t){let e="";for(let r=0;r{if(!e)return G_.line+jd.to(0);let r=n=>[...rft.unstyle(n)].length,o=t.split(/\r?\n/),a=0;for(let n of o)a+=1+Math.floor(Math.max(r(n)-1,0)/e);return(G_.line+jd.prevLine()).repeat(a-1)+G_.line+jd.to(0)}});var pC=_((t8t,khe)=>{"use strict";var nft=Be("events"),xhe=Kc(),Y_=phe(),ift=ghe(),sft=mhe(),oft=Bhe(),Ra=No(),qd=bhe(),a2=class extends nft{constructor(e={}){super(),this.name=e.name,this.type=e.type,this.options=e,oft(this),ift(this),this.state=new sft(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=lft(this.options.margin),this.setMaxListeners(0),aft(this)}async keypress(e,r={}){this.keypressed=!0;let o=Y_.action(e,Y_(e,r),this.options.actions);this.state.keypress=o,this.emit("keypress",e,o),this.emit("state",this.state.clone());let a=this.options[o.action]||this[o.action]||this.dispatch;if(typeof a=="function")return await a.call(this,e,o);this.alert()}alert(){delete this.state.alert,this.options.show===!1?this.emit("alert"):this.stdout.write(qd.code.beep)}cursorHide(){this.stdout.write(qd.cursor.hide()),Ra.onExit(()=>this.cursorShow())}cursorShow(){this.stdout.write(qd.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(qd.cursor.down(e)+qd.clear(r,this.width))}restore(){if(this.state.closed||this.options.show===!1)return;let{prompt:e,after:r,rest:o}=this.sections(),{cursor:a,initial:n="",input:u="",value:A=""}=this,p=this.state.size=o.length,h={after:r,cursor:a,initial:n,input:u,prompt:e,size:p,value:A},C=qd.cursor.restore(h);C&&this.stdout.write(C)}sections(){let{buffer:e,input:r,prompt:o}=this.state;o=xhe.unstyle(o);let a=xhe.unstyle(e),n=a.indexOf(o),u=a.slice(0,n),p=a.slice(n).split(` +`),h=p[0],C=p[p.length-1],v=(o+(r?" "+r:"")).length,x=ve.call(this,this.value),this.result=()=>o.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 a=r.onSubmit.bind(this),n=this.submit.bind(this);delete this.options.onSubmit,this.submit=async()=>(await a(this.name,this.value,this),n())}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,o){let{options:a,state:n,symbols:u,timers:A}=this,p=A&&A[e];n.timer=p;let h=a[e]||n[e]||u[e],C=r&&r[e]!=null?r[e]:await h;if(C==="")return C;let I=await this.resolve(C,n,r,o);return!I&&r&&r[e]?this.resolve(h,n,r,o):I}async prefix(){let e=await this.element("prefix")||this.symbols,r=this.timers&&this.timers.prefix,o=this.state;return o.timer=r,Ra.isObject(e)&&(e=e[o.status]||e.pending),Ra.hasColor(e)?e:(this.styles[o.status]||this.styles.pending)(e)}async message(){let e=await this.element("message");return Ra.hasColor(e)?e:this.styles.strong(e)}async separator(){let e=await this.element("separator")||this.symbols,r=this.timers&&this.timers.separator,o=this.state;o.timer=r;let a=e[o.status]||e.pending||o.separator,n=await this.resolve(a,o);return Ra.isObject(n)&&(n=n[o.status]||n.pending),Ra.hasColor(n)?n:this.styles.muted(n)}async pointer(e,r){let o=await this.element("pointer",e,r);if(typeof o=="string"&&Ra.hasColor(o))return o;if(o){let a=this.styles,n=this.index===r,u=n?a.primary:h=>h,A=await this.resolve(o[n?"on":"off"]||o,this.state),p=Ra.hasColor(A)?A:u(A);return n?p:" ".repeat(A.length)}}async indicator(e,r){let o=await this.element("indicator",e,r);if(typeof o=="string"&&Ra.hasColor(o))return o;if(o){let a=this.styles,n=e.enabled===!0,u=n?a.success:a.dark,A=o[n?"on":"off"]||o;return Ra.hasColor(A)?A:u(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 Ra.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 Ra.resolve(this,e,...r)}get base(){return a2.prototype}get style(){return this.styles[this.state.status]}get height(){return this.options.rows||Ra.height(this.stdout,25)}get width(){return this.options.columns||Ra.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,o=[r,e].find(this.isValue.bind(this));return this.isValue(o)?o:this.initial}static get prompt(){return e=>new this(e).run()}};function aft(t){let e=a=>t[a]===void 0||typeof t[a]=="function",r=["actions","choices","initial","margin","roles","styles","symbols","theme","timers","value"],o=["body","footer","error","header","hint","indicator","message","prefix","separator","skip"];for(let a of Object.keys(t.options)){if(r.includes(a)||/^on[A-Z]/.test(a))continue;let n=t.options[a];typeof n=="function"&&e(a)?o.includes(a)||(t[a]=n.bind(t)):typeof t[a]!="function"&&(t[a]=n)}}function lft(t){typeof t=="number"&&(t=[t,t,t,t]);let e=[].concat(t||[]),r=a=>a%2===0?` +`:" ",o=[];for(let a=0;a<4;a++){let n=r(a);e[a]?o.push(n.repeat(e[a])):o.push("")}return o}khe.exports=a2});var Rhe=_((r8t,Fhe)=>{"use strict";var cft=No(),Qhe={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 Qhe.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}};Fhe.exports=(t,e={})=>{let r=cft.merge({},Qhe,e.roles);return r[t]||r.default}});var l2=_((n8t,Lhe)=>{"use strict";var uft=Kc(),Aft=pC(),fft=Rhe(),lk=No(),{reorder:W_,scrollUp:pft,scrollDown:hft,isObject:The,swap:gft}=lk,K_=class extends Aft{constructor(e){super(e),this.cursorHide(),this.maxSelected=e.maxSelected||1/0,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:o,suggest:a}=this.options;if(this.state._choices=[],this.state.choices=[],this.choices=await Promise.all(await this.toChoices(e)),this.choices.forEach(n=>n.enabled=!1),typeof a!="function"&&this.selectable.length===0)throw new Error("At least one choice must be selectable");The(r)&&(r=Object.keys(r)),Array.isArray(r)?(o!=null&&(this.index=this.findIndex(o)),r.forEach(n=>this.enable(this.find(n))),await this.render()):(o!=null&&(r=o),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 o=[],a=0,n=async(u,A)=>{typeof u=="function"&&(u=await u.call(this)),u instanceof Promise&&(u=await u);for(let p=0;p(this.state.loadingChoices=!1,u))}async toChoice(e,r,o){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 a=e.value;if(e=fft(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,lk.define(e,"parent",o),e.level=o?o.level+1:1,e.indent==null&&(e.indent=o?o.indent+" ":e.indent||""),e.path=o?o.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,uft.unstyle(e.message).length));let u={...e};return e.reset=(A=u.input,p=u.value)=>{for(let h of Object.keys(u))e[h]=u[h];e.input=A,e.value=p},a==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,o){let a=await this.toChoice(e,r,o);return this.choices.push(a),this.index=this.choices.length-1,this.limit=this.choices.length,a}async newItem(e,r,o){let a={name:"New choice name?",editable:!0,newChoice:!0,...e},n=await this.addChoice(a,r,o);return n.updateChoice=()=>{delete n.newChoice,n.name=n.message=n.input,n.input="",n.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(a=>this.toggle(a,r));let o=e.parent;for(;o;){let a=o.choices.filter(n=>this.isDisabled(n));o.enabled=a.every(n=>n.enabled===!0),o=o.parent}return Nhe(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=o=>{let a=Number(o);if(a>this.choices.length-1)return this.alert();let n=this.focused,u=this.choices.find(A=>a===A.index);if(!u.enabled&&this.selected.length>=this.maxSelected)return this.alert();if(this.visible.indexOf(u)===-1){let A=W_(this.choices),p=A.indexOf(u);if(n.index>p){let h=A.slice(p,p+this.limit),C=A.filter(I=>!h.includes(I));this.choices=h.concat(C)}else{let h=p-this.limit+1;this.choices=A.slice(h).concat(A.slice(0,h))}}return this.index=this.choices.indexOf(u),this.toggle(this.focused),this.render()};return clearTimeout(this.numberTimeout),new Promise(o=>{let a=this.choices.length,n=this.num,u=(A=!1,p)=>{clearTimeout(this.numberTimeout),A&&(p=r(n)),this.num="",o(p)};if(n==="0"||n.length===1&&Number(n+"0")>a)return u(!0);if(Number(n)>a)return u(!1,this.alert());this.numberTimeout=setTimeout(()=>u(!0),this.delay)})}home(){return this.choices=W_(this.choices),this.index=0,this.render()}end(){let e=this.choices.length-this.limit,r=W_(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,o=this.index;return this.options.scroll===!1&&o===0?this.alert():e>r&&o===0?this.scrollUp():(this.index=(o-1%e+e)%e,this.isDisabled()?this.up():this.render())}down(){let e=this.choices.length,r=this.visible.length,o=this.index;return this.options.scroll===!1&&o===r-1?this.alert():e>r&&o===r-1?this.scrollDown():(this.index=(o+1)%e,this.isDisabled()?this.down():this.render())}scrollUp(e=0){return this.choices=pft(this.choices),this.index=e,this.isDisabled()?this.up():this.render()}scrollDown(e=this.visible.length-1){return this.choices=hft(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){gft(this.choices,this.index,e)}isDisabled(e=this.focused){return e&&["disabled","collapsed","hidden","completing","readonly"].some(o=>e[o]===!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(o=>!this.isDisabled(o));return e.enabled&&r.every(o=>this.isEnabled(o))}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((o,a)=>(o[a]=this.find(a,r),o),{})}filter(e,r){let a=typeof e=="function"?e:(A,p)=>[A.name,p].includes(e),u=(this.options.multiple?this.state._choices:this.choices).filter(a);return r?u.map(A=>A[r]):u}find(e,r){if(The(e))return r?e[r]:e;let a=typeof e=="function"?e:(u,A)=>[u.name,A].includes(e),n=this.choices.find(a);if(n)return r?n[r]:n}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(u=>u.newChoice))return this.alert();let{reorder:r,sort:o}=this.options,a=this.multiple===!0,n=this.selected;return n===void 0?this.alert():(Array.isArray(n)&&r!==!1&&o!==!0&&(n=lk.reorder(n)),this.value=a?n.map(u=>u.name):n.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(o=>o.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 o=this.find(r);o&&(this.initial=o.index,this.focus(o,!0))}}}get choices(){return Nhe(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:o}=this,a=e.limit||this._limit||r.limit||o.length;return Math.min(a,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 Nhe(t,e){if(e instanceof Promise)return e;if(typeof e=="function"){if(lk.isAsyncFn(e))return e;e=e.call(t,t)}for(let r of e){if(Array.isArray(r.choices)){let o=r.choices.filter(a=>!t.isDisabled(a));r.enabled=o.every(a=>a.enabled===!0)}t.isDisabled(r)===!0&&delete r.enabled}return e}Lhe.exports=K_});var Sh=_((i8t,Ohe)=>{"use strict";var dft=l2(),V_=No(),z_=class extends dft{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 o=this.resolve(e.message,this.state,e,r);return e.role==="heading"&&!V_.hasColor(o)&&(o=this.styles.strong(o)),this.resolve(o,this.state,e,r)}choiceSeparator(){return":"}async renderChoice(e,r){await this.onChoice(e,r);let o=this.index===r,a=await this.pointer(e,r),n=await this.indicator(e,r)+(e.pad||""),u=await this.resolve(e.hint,this.state,e,r);u&&!V_.hasColor(u)&&(u=this.styles.muted(u));let A=this.indent(e),p=await this.choiceMessage(e,r),h=()=>[this.margin[3],A+a+n,p,this.margin[1],u].filter(Boolean).join(" ");return e.role==="heading"?h():e.disabled?(V_.hasColor(p)||(p=this.styles.disabled(p)),h()):(o&&(p=this.styles.em(p)),h())}async renderChoices(){if(this.state.loading==="choices")return this.styles.warning("Loading choices");if(this.state.submitted)return"";let e=this.visible.map(async(n,u)=>await this.renderChoice(n,u)),r=await Promise.all(e);r.length||r.push(this.styles.danger("No matching choices"));let o=this.margin[0]+r.join(` +`),a;return this.options.choicesHeader&&(a=await this.resolve(this.options.choicesHeader,this.state)),[a,o].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,o="",a=await this.header(),n=await this.prefix(),u=await this.separator(),A=await this.message();this.options.promptLine!==!1&&(o=[n,A,u,""].join(" "),this.state.prompt=o);let p=await this.format(),h=await this.error()||await this.hint(),C=await this.renderChoices(),I=await this.footer();p&&(o+=p),h&&!o.includes(h)&&(o+=" "+h),e&&!p&&!C.trim()&&this.multiple&&this.emptyError!=null&&(o+=this.styles.danger(this.emptyError)),this.clear(r),this.write([a,o,C,I].filter(Boolean).join(` +`)),this.write(this.margin[2]),this.restore()}};Ohe.exports=z_});var Uhe=_((s8t,Mhe)=>{"use strict";var mft=Sh(),yft=(t,e)=>{let r=t.toLowerCase();return o=>{let n=o.toLowerCase().indexOf(r),u=e(o.slice(n,n+r.length));return n>=0?o.slice(0,n)+u+o.slice(n+r.length):o}},J_=class extends mft{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:o}=this.state;return this.input=o.slice(0,r)+e+o.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 o=e.toLowerCase();return r.filter(a=>a.message.toLowerCase().includes(o))}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=yft(this.input,e),o=this.choices;this.choices=o.map(a=>({...a,message:r(a.message)})),await super.render(),this.choices=o}submit(){return this.options.multiple&&(this.value=this.selected.map(e=>e.name)),super.submit()}};Mhe.exports=J_});var Z_=_((o8t,_he)=>{"use strict";var X_=No();_he.exports=(t,e={})=>{t.cursorHide();let{input:r="",initial:o="",pos:a,showCursor:n=!0,color:u}=e,A=u||t.styles.placeholder,p=X_.inverse(t.styles.primary),h=R=>p(t.styles.black(R)),C=r,I=" ",v=h(I);if(t.blink&&t.blink.off===!0&&(h=R=>R,v=""),n&&a===0&&o===""&&r==="")return h(I);if(n&&a===0&&(r===o||r===""))return h(o[0])+A(o.slice(1));o=X_.isPrimitive(o)?`${o}`:"",r=X_.isPrimitive(r)?`${r}`:"";let x=o&&o.startsWith(r)&&o!==r,E=x?h(o[r.length]):v;if(a!==r.length&&n===!0&&(C=r.slice(0,a)+h(r[a])+r.slice(a+1),E=""),n===!1&&(E=""),x){let R=t.styles.unstyle(C+E);return C+E+A(o.slice(R.length))}return C+E}});var ck=_((a8t,Hhe)=>{"use strict";var Eft=Kc(),Cft=Sh(),wft=Z_(),$_=class extends Cft{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:o,input:a}=r;return r.value=r.input=a.slice(0,o)+e+a.slice(o),r.cursor++,this.render()}delete(){let e=this.focused;if(!e||e.cursor<=0)return this.alert();let{cursor:r,input:o}=e;return e.value=e.input=o.slice(0,r-1)+o.slice(r),e.cursor--,this.render()}deleteForward(){let e=this.focused;if(!e)return this.alert();let{cursor:r,input:o}=e;if(o[r]===void 0)return this.alert();let a=`${o}`.slice(0,r)+`${o}`.slice(r+1);return e.value=e.input=a,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:o}=e;return r&&r.startsWith(o)&&o!==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 o=await this.resolve(e.separator,this.state,e,r)||":";return o?" "+this.styles.disabled(o):""}async renderChoice(e,r){await this.onChoice(e,r);let{state:o,styles:a}=this,{cursor:n,initial:u="",name:A,hint:p,input:h=""}=e,{muted:C,submitted:I,primary:v,danger:x}=a,E=p,R=this.index===r,L=e.validate||(()=>!0),U=await this.choiceSeparator(e,r),z=e.message;this.align==="right"&&(z=z.padStart(this.longest+1," ")),this.align==="left"&&(z=z.padEnd(this.longest+1," "));let te=this.values[A]=h||u,le=h?"success":"dark";await L.call(e,te,this.state)!==!0&&(le="danger");let he=a[le],Ae=he(await this.indicator(e,r))+(e.pad||""),ye=this.indent(e),ae=()=>[ye,Ae,z+U,h,E].filter(Boolean).join(" ");if(o.submitted)return z=Eft.unstyle(z),h=I(h),E="",ae();if(e.format)h=await e.format.call(this,h,e,r);else{let Ie=this.styles.muted;h=wft(this,{input:h,initial:u,pos:n,showCursor:R,color:Ie})}return this.isValue(h)||(h=this.styles.muted(this.symbols.ellipsis)),e.result&&(this.values[A]=await e.result.call(this,te,e,r)),R&&(z=v(z)),e.error?h+=(h?" ":"")+x(e.error.trim()):e.hint&&(h+=(h?" ":"")+C(e.hint.trim())),ae()}async submit(){return this.value=this.values,super.base.submit.call(this)}};Hhe.exports=$_});var e8=_((l8t,qhe)=>{"use strict";var Ift=ck(),Bft=()=>{throw new Error("expected prompt to have a custom authenticate method")},jhe=(t=Bft)=>{class e extends Ift{constructor(o){super(o)}async submit(){this.value=await t.call(this,this.values,this.state),super.base.submit.call(this)}static create(o){return jhe(o)}}return e};qhe.exports=jhe()});var Whe=_((c8t,Yhe)=>{"use strict";var vft=e8();function Dft(t,e){return t.username===this.options.username&&t.password===this.options.password}var Ghe=(t=Dft)=>{let e=[{name:"username",message:"username"},{name:"password",message:"password",format(o){return this.options.showPassword?o:(this.state.submitted?this.styles.primary:this.styles.muted)(this.symbols.asterisk.repeat(o.length))}}];class r extends vft.create(t){constructor(a){super({...a,choices:e})}static create(a){return Ghe(a)}}return r};Yhe.exports=Ghe()});var uk=_((u8t,Khe)=>{"use strict";var Pft=pC(),{isPrimitive:Sft,hasColor:bft}=No(),t8=class extends Pft{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:o}=this;return o.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 Sft(e)&&(this.isTrue(e)||this.isFalse(e))}async hint(){if(this.state.status==="pending"){let e=await this.element("hint");return bft(e)?e:this.styles.muted(e)}}async render(){let{input:e,size:r}=this.state,o=await this.prefix(),a=await this.separator(),n=await this.message(),u=this.styles.muted(this.default),A=[o,n,u,a].filter(Boolean).join(" ");this.state.prompt=A;let p=await this.header(),h=this.value=this.cast(e),C=await this.format(h),I=await this.error()||await this.hint(),v=await this.footer();I&&!A.includes(I)&&(C+=" "+I),A+=" "+C,this.clear(r),this.write([p,A,v].filter(Boolean).join(` +`)),this.restore()}set value(e){super.value=e}get value(){return this.cast(super.value)}};Khe.exports=t8});var zhe=_((A8t,Vhe)=>{"use strict";var xft=uk(),r8=class extends xft{constructor(e){super(e),this.default=this.options.default||(this.initial?"(Y/n)":"(y/N)")}};Vhe.exports=r8});var Xhe=_((f8t,Jhe)=>{"use strict";var kft=Sh(),Qft=ck(),hC=Qft.prototype,n8=class extends kft{constructor(e){super({...e,multiple:!0}),this.align=[this.options.align,"left"].find(r=>r!=null),this.emptyError="",this.values={}}dispatch(e,r){let o=this.focused,a=o.parent||{};return!o.editable&&!a.editable&&(e==="a"||e==="i")?super[e]():hC.dispatch.call(this,e,r)}append(e,r){return hC.append.call(this,e,r)}delete(e,r){return hC.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?hC.next.call(this):super.next()}prev(){return this.focused.editable?hC.prev.call(this):super.prev()}async indicator(e,r){let o=e.indicator||"",a=e.editable?o:super.indicator(e,r);return await this.resolve(a,this.state,e,r)||""}indent(e){return e.role==="heading"?"":e.editable?" ":" "}async renderChoice(e,r){return e.indent="",e.editable?hC.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 o=r.parent?this.value[r.parent.name]:this.value;if(r.editable?o=r.value===r.name?r.initial||"":r.value:this.isDisabled(r)||(o=r.enabled===!0),e=await r.validate(o,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)}};Jhe.exports=n8});var Gd=_((p8t,Zhe)=>{"use strict";var Fft=pC(),Rft=Z_(),{isPrimitive:Tft}=No(),i8=class extends Fft{constructor(e){super(e),this.initial=Tft(this.initial)?String(this.initial):"",this.initial&&this.cursorHide(),this.state.prevCursor=0,this.state.clipboard=[]}async keypress(e,r={}){let o=this.state.prevKeypress;return this.state.prevKeypress=r,this.options.multiline===!0&&r.name==="return"&&(!o||o.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:o}=this.state;this.input=`${o}`.slice(0,r)+e+`${o}`.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),o=this.input.slice(e),a=r.split(" ");this.state.clipboard.push(a.pop()),this.input=a.join(" "),this.cursor=this.input.length,this.input+=o,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):Rft(this,{input:e,initial:r,pos:this.cursor})}async render(){let e=this.state.size,r=await this.prefix(),o=await this.separator(),a=await this.message(),n=[r,a,o].filter(Boolean).join(" ");this.state.prompt=n;let u=await this.header(),A=await this.format(),p=await this.error()||await this.hint(),h=await this.footer();p&&!A.includes(p)&&(A+=" "+p),n+=" "+A,this.clear(e),this.write([u,n,h].filter(Boolean).join(` +`)),this.restore()}};Zhe.exports=i8});var e0e=_((h8t,$he)=>{"use strict";var Nft=t=>t.filter((e,r)=>t.lastIndexOf(e)===r),Ak=t=>Nft(t).filter(Boolean);$he.exports=(t,e={},r="")=>{let{past:o=[],present:a=""}=e,n,u;switch(t){case"prev":case"undo":return n=o.slice(0,o.length-1),u=o[o.length-1]||"",{past:Ak([r,...n]),present:u};case"next":case"redo":return n=o.slice(1),u=o[0]||"",{past:Ak([...n,r]),present:u};case"save":return{past:Ak([...o,r]),present:""};case"remove":return u=Ak(o.filter(A=>A!==r)),a="",u.length&&(a=u.pop()),{past:u,present:a};default:throw new Error(`Invalid action: "${t}"`)}}});var o8=_((g8t,r0e)=>{"use strict";var Lft=Gd(),t0e=e0e(),s8=class extends Lft{constructor(e){super(e);let r=this.options.history;if(r&&r.store){let o=r.values||this.initial;this.autosave=!!r.autosave,this.store=r.store,this.data=this.store.get("values")||{past:[],present:o},this.initial=this.data.present||this.data.past[this.data.past.length-1]}}completion(e){return this.store?(this.data=t0e(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=t0e("save",this.data,this.input),this.store.set("values",this.data))}submit(){return this.store&&this.autosave===!0&&this.save(),super.submit()}};r0e.exports=s8});var i0e=_((d8t,n0e)=>{"use strict";var Oft=Gd(),a8=class extends Oft{format(){return""}};n0e.exports=a8});var o0e=_((m8t,s0e)=>{"use strict";var Mft=Gd(),l8=class extends Mft{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()}};s0e.exports=l8});var l0e=_((y8t,a0e)=>{"use strict";var Uft=Sh(),c8=class extends Uft{constructor(e){super({...e,multiple:!0})}};a0e.exports=c8});var A8=_((E8t,c0e)=>{"use strict";var _ft=Gd(),u8=class extends _ft{constructor(e={}){super({style:"number",...e}),this.min=this.isValue(e.min)?this.toNumber(e.min):-1/0,this.max=this.isValue(e.max)?this.toNumber(e.max):1/0,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,o=this.toNumber(this.input);return o>this.max+r?this.alert():(this.input=`${o+r}`,this.render())}down(e){let r=e||this.minor,o=this.toNumber(this.input);return othis.isValue(r));return this.value=this.toNumber(e||0),super.submit()}};c0e.exports=u8});var A0e=_((C8t,u0e)=>{u0e.exports=A8()});var p0e=_((w8t,f0e)=>{"use strict";var Hft=Gd(),f8=class extends Hft{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)):""}};f0e.exports=f8});var d0e=_((I8t,g0e)=>{"use strict";var jft=Kc(),qft=l2(),h0e=No(),p8=class extends qft{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((o,a)=>({name:a+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 o=0;o=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(){return this.scaleKey===!1||this.state.submitted?"":["",...this.scale.map(o=>` ${o.name} - ${o.message}`)].map(o=>this.styles.muted(o)).join(` +`)}renderScaleHeading(e){let r=this.scale.map(p=>p.name);typeof this.options.renderScaleHeading=="function"&&(r=this.options.renderScaleHeading.call(this,e));let o=this.scaleLength-r.join("").length,a=Math.round(o/(r.length-1)),u=r.map(p=>this.styles.strong(p)).join(" ".repeat(a)),A=" ".repeat(this.widths[0]);return this.margin[3]+A+this.margin[1]+u}scaleIndicator(e,r,o){if(typeof this.options.scaleIndicator=="function")return this.options.scaleIndicator.call(this,e,r,o);let a=e.scaleIndex===r.index;return r.disabled?this.styles.hint(this.symbols.radio.disabled):a?this.styles.success(this.symbols.radio.on):this.symbols.radio.off}renderScale(e,r){let o=e.scale.map(n=>this.scaleIndicator(e,n,r)),a=this.term==="Hyper"?"":" ";return o.join(a+this.symbols.line.repeat(this.edgeLength))}async renderChoice(e,r){await this.onChoice(e,r);let o=this.index===r,a=await this.pointer(e,r),n=await e.hint;n&&!h0e.hasColor(n)&&(n=this.styles.muted(n));let u=E=>this.margin[3]+E.replace(/\s+$/,"").padEnd(this.widths[0]," "),A=this.newline,p=this.indent(e),h=await this.resolve(e.message,this.state,e,r),C=await this.renderScale(e,r),I=this.margin[1]+this.margin[3];this.scaleLength=jft.unstyle(C).length,this.widths[0]=Math.min(this.widths[0],this.width-this.scaleLength-I.length);let x=h0e.wordWrap(h,{width:this.widths[0],newline:A}).split(` +`).map(E=>u(E)+this.margin[1]);return o&&(C=this.styles.info(C),x=x.map(E=>this.styles.info(E))),x[0]+=C,this.linebreak&&x.push(""),[p+a,x.join(` +`)].filter(Boolean)}async renderChoices(){if(this.state.submitted)return"";this.tableize();let e=this.visible.map(async(a,n)=>await this.renderChoice(a,n)),r=await Promise.all(e),o=await this.renderScaleHeading();return this.margin[0]+[o,...r.map(a=>a.join(" "))].join(` +`)}async render(){let{submitted:e,size:r}=this.state,o=await this.prefix(),a=await this.separator(),n=await this.message(),u="";this.options.promptLine!==!1&&(u=[o,n,a,""].join(" "),this.state.prompt=u);let A=await this.header(),p=await this.format(),h=await this.renderScaleKey(),C=await this.error()||await this.hint(),I=await this.renderChoices(),v=await this.footer(),x=this.emptyError;p&&(u+=p),C&&!u.includes(C)&&(u+=" "+C),e&&!p&&!I.trim()&&this.multiple&&x!=null&&(u+=this.styles.danger(x)),this.clear(r),this.write([A,u,h,I,v].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)}};g0e.exports=p8});var E0e=_((B8t,y0e)=>{"use strict";var m0e=Kc(),Gft=(t="")=>typeof t=="string"?t.replace(/^['"]|['"]$/g,""):"",g8=class{constructor(e){this.name=e.key,this.field=e.field||{},this.value=Gft(e.initial||this.field.initial||""),this.message=e.message||this.name,this.cursor=0,this.input="",this.lines=[]}},Yft=async(t={},e={},r=o=>o)=>{let o=new Set,a=t.fields||[],n=t.template,u=[],A=[],p=[],h=1;typeof n=="function"&&(n=await n());let C=-1,I=()=>n[++C],v=()=>n[C+1],x=E=>{E.line=h,u.push(E)};for(x({type:"bos",value:""});Cle.name===U.key);U.field=a.find(le=>le.name===U.key),te||(te=new g8(U),A.push(te)),te.lines.push(U.line-1);continue}let R=u[u.length-1];R.type==="text"&&R.line===h?R.value+=E:x({type:"text",value:E})}return x({type:"eos",value:""}),{input:n,tabstops:u,unique:o,keys:p,items:A}};y0e.exports=async t=>{let e=t.options,r=new Set(e.required===!0?[]:e.required||[]),o={...e.values,...e.initial},{tabstops:a,items:n,keys:u}=await Yft(e,o),A=h8("result",t,e),p=h8("format",t,e),h=h8("validate",t,e,!0),C=t.isValue.bind(t);return async(I={},v=!1)=>{let x=0;I.required=r,I.items=n,I.keys=u,I.output="";let E=async(z,te,le,he)=>{let Ae=await h(z,te,le,he);return Ae===!1?"Invalid field "+le.name:Ae};for(let z of a){let te=z.value,le=z.key;if(z.type!=="template"){te&&(I.output+=te);continue}if(z.type==="template"){let he=n.find(Fe=>Fe.name===le);e.required===!0&&I.required.add(he.name);let Ae=[he.input,I.values[he.value],he.value,te].find(C),ae=(he.field||{}).message||z.inner;if(v){let Fe=await E(I.values[le],I,he,x);if(Fe&&typeof Fe=="string"||Fe===!1){I.invalid.set(le,Fe);continue}I.invalid.delete(le);let g=await A(I.values[le],I,he,x);I.output+=m0e.unstyle(g);continue}he.placeholder=!1;let Ie=te;te=await p(te,I,he,x),Ae!==te?(I.values[le]=Ae,te=t.styles.typing(Ae),I.missing.delete(ae)):(I.values[le]=void 0,Ae=`<${ae}>`,te=t.styles.primary(Ae),he.placeholder=!0,I.required.has(le)&&I.missing.add(ae)),I.missing.has(ae)&&I.validating&&(te=t.styles.warning(Ae)),I.invalid.has(le)&&I.validating&&(te=t.styles.danger(Ae)),x===I.index&&(Ie!==te?te=t.styles.underline(te):te=t.styles.heading(m0e.unstyle(te))),x++}te&&(I.output+=te)}let R=I.output.split(` +`).map(z=>" "+z),L=n.length,U=0;for(let z of n)I.invalid.has(z.name)&&z.lines.forEach(te=>{R[te][0]===" "&&(R[te]=I.styles.danger(I.symbols.bullet)+R[te].slice(1))}),t.isValue(I.values[z.name])&&U++;return I.completed=(U/L*100).toFixed(0),I.output=R.join(` +`),I.output}};function h8(t,e,r,o){return(a,n,u,A)=>typeof u.field[t]=="function"?u.field[t].call(e,a,n,u,A):[o,a].find(p=>e.isValue(p))}});var w0e=_((v8t,C0e)=>{"use strict";var Wft=Kc(),Kft=E0e(),Vft=pC(),d8=class extends Vft{constructor(e){super(e),this.cursorHide(),this.reset(!0)}async initialize(){this.interpolate=await Kft(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 o=this.getItem(),a=o.input.slice(0,this.cursor),n=o.input.slice(this.cursor);this.input=o.input=`${a}${e}${n}`,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),o=e.input.slice(0,this.cursor-1);this.input=e.input=`${o}${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:o,size:a}=this.state,n=[this.options.newline,` +`].find(z=>z!=null),u=await this.prefix(),A=await this.separator(),p=await this.message(),h=[u,p,A].filter(Boolean).join(" ");this.state.prompt=h;let C=await this.header(),I=await this.error()||"",v=await this.hint()||"",x=o?"":await this.interpolate(this.state),E=this.state.key=r[e]||"",R=await this.format(E),L=await this.footer();R&&(h+=" "+R),v&&!R&&this.state.completed===0&&(h+=" "+v),this.clear(a);let U=[C,h,x,L,I.trim()];this.write(U.filter(Boolean).join(n)),this.restore()}getItem(e){let{items:r,keys:o,index:a}=this.state,n=r.find(u=>u.name===o[a]);return n&&n.input!=null&&(this.input=n.input,this.cursor=n.cursor),n}async submit(){typeof this.interpolate!="function"&&await this.initialize(),await this.interpolate(this.state,!0);let{invalid:e,missing:r,output:o,values:a}=this.state;if(e.size){let A="";for(let[p,h]of e)A+=`Invalid ${p}: ${h} +`;return this.state.error=A,super.submit()}if(r.size)return this.state.error="Required: "+[...r.keys()].join(", "),super.submit();let u=Wft.unstyle(o).split(` +`).map(A=>A.slice(1)).join(` +`);return this.value={values:a,result:u},super.submit()}};C0e.exports=d8});var B0e=_((D8t,I0e)=>{"use strict";var zft="(Use + to sort)",Jft=Sh(),m8=class extends Jft{constructor(e){super({...e,reorder:!1,sort:!0,multiple:!0}),this.state.hint=[this.options.hint,zft].find(this.isValue.bind(this))}indicator(){return""}async renderChoice(e,r){let o=await super.renderChoice(e,r),a=this.symbols.identicalTo+" ",n=this.index===r&&this.sorting?this.styles.muted(a):" ";return this.options.drag===!1&&(n=""),this.options.numbered===!0?n+`${r+1} - `+o:n+o}get selected(){return this.choices}submit(){return this.value=this.choices.map(e=>e.value),super.submit()}};I0e.exports=m8});var D0e=_((P8t,v0e)=>{"use strict";var Xft=l2(),y8=class extends Xft{constructor(e={}){if(super(e),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(o=>this.styles.muted(o)),this.state.header=r.join(` + `)}}async toChoices(...e){if(this.createdScales)return!1;this.createdScales=!0;let r=await super.toChoices(...e);for(let o of r)o.scale=Zft(5,this.options),o.scaleIdx=2;return r}dispatch(){this.alert()}space(){let e=this.focused,r=e.scale[e.scaleIdx],o=r.selected;return e.scale.forEach(a=>a.selected=!1),r.selected=!o,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 o=this.index===r,a=this.term==="Hyper",n=a?9:8,u=a?"":" ",A=this.symbols.line.repeat(n),p=" ".repeat(n+(a?0:1)),h=te=>(te?this.styles.success("\u25C9"):"\u25EF")+u,C=r+1+".",I=o?this.styles.heading:this.styles.noop,v=await this.resolve(e.message,this.state,e,r),x=this.indent(e),E=x+e.scale.map((te,le)=>h(le===e.scaleIdx)).join(A),R=te=>te===e.scaleIdx?I(te):te,L=x+e.scale.map((te,le)=>R(le)).join(p),U=()=>[C,v].filter(Boolean).join(" "),z=()=>[U(),E,L," "].filter(Boolean).join(` +`);return o&&(E=this.styles.cyan(E),L=this.styles.cyan(L)),z()}async renderChoices(){if(this.state.submitted)return"";let e=this.visible.map(async(o,a)=>await this.renderChoice(o,a)),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,o=await this.prefix(),a=await this.separator(),n=await this.message(),u=[o,n,a].filter(Boolean).join(" ");this.state.prompt=u;let A=await this.header(),p=await this.format(),h=await this.error()||await this.hint(),C=await this.renderChoices(),I=await this.footer();(p||!h)&&(u+=" "+p),h&&!u.includes(h)&&(u+=" "+h),e&&!p&&!C&&this.multiple&&this.type!=="form"&&(u+=this.styles.danger(this.emptyError)),this.clear(r),this.write([u,A,C,I].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 Zft(t,e={}){if(Array.isArray(e.scale))return e.scale.map(o=>({...o}));let r=[];for(let o=1;o{P0e.exports=o8()});var x0e=_((b8t,b0e)=>{"use strict";var $ft=uk(),E8=class extends $ft{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=o=>this.styles.primary.underline(o);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(),o=await this.prefix(),a=await this.separator(),n=await this.message(),u=await this.format(),A=await this.error()||await this.hint(),p=await this.footer(),h=[o,n,a,u].join(" ");this.state.prompt=h,A&&!h.includes(A)&&(h+=" "+A),this.clear(e),this.write([r,h,p].filter(Boolean).join(` +`)),this.write(this.margin[2]),this.restore()}};b0e.exports=E8});var Q0e=_((x8t,k0e)=>{"use strict";var ept=Sh(),C8=class extends ept{constructor(e){if(super(e),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 o=await super.toChoices(e,r);if(o.length<2)throw new Error("Please give at least two choices to the user");if(this.options.correctChoice>o.length)throw new Error("Please specify the index of the correct answer from the list of choices");return o}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)}}};k0e.exports=C8});var R0e=_(w8=>{"use strict";var F0e=No(),As=(t,e)=>{F0e.defineExport(w8,t,e),F0e.defineExport(w8,t.toLowerCase(),e)};As("AutoComplete",()=>Uhe());As("BasicAuth",()=>Whe());As("Confirm",()=>zhe());As("Editable",()=>Xhe());As("Form",()=>ck());As("Input",()=>o8());As("Invisible",()=>i0e());As("List",()=>o0e());As("MultiSelect",()=>l0e());As("Numeral",()=>A0e());As("Password",()=>p0e());As("Scale",()=>d0e());As("Select",()=>Sh());As("Snippet",()=>w0e());As("Sort",()=>B0e());As("Survey",()=>D0e());As("Text",()=>S0e());As("Toggle",()=>x0e());As("Quiz",()=>Q0e())});var N0e=_((Q8t,T0e)=>{T0e.exports={ArrayPrompt:l2(),AuthPrompt:e8(),BooleanPrompt:uk(),NumberPrompt:A8(),StringPrompt:Gd()}});var u2=_((F8t,O0e)=>{"use strict";var L0e=Be("assert"),B8=Be("events"),bh=No(),zc=class extends B8{constructor(e,r){super(),this.options=bh.merge({},e),this.answers={...r}}register(e,r){if(bh.isObject(e)){for(let a of Object.keys(e))this.register(a,e[a]);return this}L0e.equal(typeof r,"function","expected a function");let o=e.toLowerCase();return r.prototype instanceof this.Prompt?this.prompts[o]=r:this.prompts[o]=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(bh.merge({},this.options,r))}catch(o){return Promise.reject(o)}return this.answers}async ask(e){typeof e=="function"&&(e=await e.call(this));let r=bh.merge({},this.options,e),{type:o,name:a}=e,{set:n,get:u}=bh;if(typeof o=="function"&&(o=await o.call(this,e,this.answers)),!o)return this.answers[a];L0e(this.prompts[o],`Prompt "${o}" is not registered`);let A=new this.prompts[o](r),p=u(this.answers,a);A.state.answers=this.answers,A.enquirer=this,a&&A.on("submit",C=>{this.emit("answer",a,C,A),n(this.answers,a,C)});let h=A.emit.bind(A);return A.emit=(...C)=>(this.emit.call(this,...C),h(...C)),this.emit("prompt",A,this),r.autofill&&p!=null?(A.value=A.input=p,r.autofill==="show"&&await A.submit()):p=A.value=await A.run(),p}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||pC()}static get prompts(){return R0e()}static get types(){return N0e()}static get prompt(){let e=(r,...o)=>{let a=new this(...o),n=a.emit.bind(a);return a.emit=(...u)=>(e.emit(...u),n(...u)),a.prompt(r)};return bh.mixinEmitter(e,new B8),e}};bh.mixinEmitter(zc,new B8);var I8=zc.prompts;for(let t of Object.keys(I8)){let e=t.toLowerCase(),r=o=>new I8[t](o).run();zc.prompt[e]=r,zc[e]=r,zc[t]||Reflect.defineProperty(zc,t,{get:()=>I8[t]})}var c2=t=>{bh.defineExport(zc,t,()=>zc.types[t])};c2("ArrayPrompt");c2("AuthPrompt");c2("BooleanPrompt");c2("NumberPrompt");c2("StringPrompt");O0e.exports=zc});var h2=_((hHt,G0e)=>{var opt=Zx();function apt(t,e,r){var o=t==null?void 0:opt(t,e);return o===void 0?r:o}G0e.exports=apt});var K0e=_((CHt,W0e)=>{function lpt(t,e){for(var r=-1,o=t==null?0:t.length;++r{var cpt=hd(),upt=JP();function Apt(t,e){return t&&cpt(e,upt(e),t)}V0e.exports=Apt});var X0e=_((IHt,J0e)=>{var fpt=hd(),ppt=jy();function hpt(t,e){return t&&fpt(e,ppt(e),t)}J0e.exports=hpt});var $0e=_((BHt,Z0e)=>{var gpt=hd(),dpt=GP();function mpt(t,e){return gpt(t,dpt(t),e)}Z0e.exports=mpt});var x8=_((vHt,ege)=>{var ypt=qP(),Ept=tS(),Cpt=GP(),wpt=VN(),Ipt=Object.getOwnPropertySymbols,Bpt=Ipt?function(t){for(var e=[];t;)ypt(e,Cpt(t)),t=Ept(t);return e}:wpt;ege.exports=Bpt});var rge=_((DHt,tge)=>{var vpt=hd(),Dpt=x8();function Ppt(t,e){return vpt(t,Dpt(t),e)}tge.exports=Ppt});var k8=_((PHt,nge)=>{var Spt=KN(),bpt=x8(),xpt=jy();function kpt(t){return Spt(t,xpt,bpt)}nge.exports=kpt});var sge=_((SHt,ige)=>{var Qpt=Object.prototype,Fpt=Qpt.hasOwnProperty;function Rpt(t){var e=t.length,r=new t.constructor(e);return e&&typeof t[0]=="string"&&Fpt.call(t,"index")&&(r.index=t.index,r.input=t.input),r}ige.exports=Rpt});var age=_((bHt,oge)=>{var Tpt=$P();function Npt(t,e){var r=e?Tpt(t.buffer):t.buffer;return new t.constructor(r,t.byteOffset,t.byteLength)}oge.exports=Npt});var cge=_((xHt,lge)=>{var Lpt=/\w*$/;function Opt(t){var e=new t.constructor(t.source,Lpt.exec(t));return e.lastIndex=t.lastIndex,e}lge.exports=Opt});var hge=_((kHt,pge)=>{var uge=Ad(),Age=uge?uge.prototype:void 0,fge=Age?Age.valueOf:void 0;function Mpt(t){return fge?Object(fge.call(t)):{}}pge.exports=Mpt});var dge=_((QHt,gge)=>{var Upt=$P(),_pt=age(),Hpt=cge(),jpt=hge(),qpt=lL(),Gpt="[object Boolean]",Ypt="[object Date]",Wpt="[object Map]",Kpt="[object Number]",Vpt="[object RegExp]",zpt="[object Set]",Jpt="[object String]",Xpt="[object Symbol]",Zpt="[object ArrayBuffer]",$pt="[object DataView]",eht="[object Float32Array]",tht="[object Float64Array]",rht="[object Int8Array]",nht="[object Int16Array]",iht="[object Int32Array]",sht="[object Uint8Array]",oht="[object Uint8ClampedArray]",aht="[object Uint16Array]",lht="[object Uint32Array]";function cht(t,e,r){var o=t.constructor;switch(e){case Zpt:return Upt(t);case Gpt:case Ypt:return new o(+t);case $pt:return _pt(t,r);case eht:case tht:case rht:case nht:case iht:case sht:case oht:case aht:case lht:return qpt(t,r);case Wpt:return new o;case Kpt:case Jpt:return new o(t);case Vpt:return Hpt(t);case zpt:return new o;case Xpt:return jpt(t)}}gge.exports=cht});var yge=_((FHt,mge)=>{var uht=jI(),Aht=zu(),fht="[object Map]";function pht(t){return Aht(t)&&uht(t)==fht}mge.exports=pht});var Ige=_((RHt,wge)=>{var hht=yge(),ght=WP(),Ege=KP(),Cge=Ege&&Ege.isMap,dht=Cge?ght(Cge):hht;wge.exports=dht});var vge=_((THt,Bge)=>{var mht=jI(),yht=zu(),Eht="[object Set]";function Cht(t){return yht(t)&&mht(t)==Eht}Bge.exports=Cht});var bge=_((NHt,Sge)=>{var wht=vge(),Iht=WP(),Dge=KP(),Pge=Dge&&Dge.isSet,Bht=Pge?Iht(Pge):wht;Sge.exports=Bht});var Q8=_((LHt,Fge)=>{var vht=HP(),Dht=K0e(),Pht=rS(),Sht=z0e(),bht=X0e(),xht=aL(),kht=eS(),Qht=$0e(),Fht=rge(),Rht=ZN(),Tht=k8(),Nht=jI(),Lht=sge(),Oht=dge(),Mht=cL(),Uht=Hl(),_ht=OI(),Hht=Ige(),jht=il(),qht=bge(),Ght=JP(),Yht=jy(),Wht=1,Kht=2,Vht=4,xge="[object Arguments]",zht="[object Array]",Jht="[object Boolean]",Xht="[object Date]",Zht="[object Error]",kge="[object Function]",$ht="[object GeneratorFunction]",e0t="[object Map]",t0t="[object Number]",Qge="[object Object]",r0t="[object RegExp]",n0t="[object Set]",i0t="[object String]",s0t="[object Symbol]",o0t="[object WeakMap]",a0t="[object ArrayBuffer]",l0t="[object DataView]",c0t="[object Float32Array]",u0t="[object Float64Array]",A0t="[object Int8Array]",f0t="[object Int16Array]",p0t="[object Int32Array]",h0t="[object Uint8Array]",g0t="[object Uint8ClampedArray]",d0t="[object Uint16Array]",m0t="[object Uint32Array]",ri={};ri[xge]=ri[zht]=ri[a0t]=ri[l0t]=ri[Jht]=ri[Xht]=ri[c0t]=ri[u0t]=ri[A0t]=ri[f0t]=ri[p0t]=ri[e0t]=ri[t0t]=ri[Qge]=ri[r0t]=ri[n0t]=ri[i0t]=ri[s0t]=ri[h0t]=ri[g0t]=ri[d0t]=ri[m0t]=!0;ri[Zht]=ri[kge]=ri[o0t]=!1;function pk(t,e,r,o,a,n){var u,A=e&Wht,p=e&Kht,h=e&Vht;if(r&&(u=a?r(t,o,a,n):r(t)),u!==void 0)return u;if(!jht(t))return t;var C=Uht(t);if(C){if(u=Lht(t),!A)return kht(t,u)}else{var I=Nht(t),v=I==kge||I==$ht;if(_ht(t))return xht(t,A);if(I==Qge||I==xge||v&&!a){if(u=p||v?{}:Mht(t),!A)return p?Fht(t,bht(u,t)):Qht(t,Sht(u,t))}else{if(!ri[I])return a?t:{};u=Oht(t,I,A)}}n||(n=new vht);var x=n.get(t);if(x)return x;n.set(t,u),qht(t)?t.forEach(function(L){u.add(pk(L,e,r,L,t,n))}):Hht(t)&&t.forEach(function(L,U){u.set(U,pk(L,e,r,U,t,n))});var E=h?p?Tht:Rht:p?Yht:Ght,R=C?void 0:E(t);return Dht(R||t,function(L,U){R&&(U=L,L=t[U]),Pht(u,U,pk(L,e,r,U,t,n))}),u}Fge.exports=pk});var F8=_((OHt,Rge)=>{var y0t=Q8(),E0t=1,C0t=4;function w0t(t){return y0t(t,E0t|C0t)}Rge.exports=w0t});var R8=_((MHt,Tge)=>{var I0t=v_();function B0t(t,e,r){return t==null?t:I0t(t,e,r)}Tge.exports=B0t});var Uge=_((GHt,Mge)=>{var v0t=Object.prototype,D0t=v0t.hasOwnProperty;function P0t(t,e){return t!=null&&D0t.call(t,e)}Mge.exports=P0t});var Hge=_((YHt,_ge)=>{var S0t=Uge(),b0t=D_();function x0t(t,e){return t!=null&&b0t(t,e,S0t)}_ge.exports=x0t});var qge=_((WHt,jge)=>{function k0t(t){var e=t==null?0:t.length;return e?t[e-1]:void 0}jge.exports=k0t});var Yge=_((KHt,Gge)=>{var Q0t=Zx(),F0t=gU();function R0t(t,e){return e.length<2?t:Q0t(t,F0t(e,0,-1))}Gge.exports=R0t});var N8=_((VHt,Wge)=>{var T0t=Hd(),N0t=qge(),L0t=Yge(),O0t=oC();function M0t(t,e){return e=T0t(e,t),t=L0t(t,e),t==null||delete t[O0t(N0t(e))]}Wge.exports=M0t});var L8=_((zHt,Kge)=>{var U0t=N8();function _0t(t,e){return t==null?!0:U0t(t,e)}Kge.exports=_0t});var Zge=_((v6t,q0t)=>{q0t.exports={name:"@yarnpkg/cli",version:"4.0.1",license:"BSD-2-Clause",main:"./sources/index.ts",exports:{".":"./sources/index.ts","./polyfills":"./sources/polyfills.ts","./package.json":"./package.json"},dependencies:{"@yarnpkg/core":"workspace:^","@yarnpkg/fslib":"workspace:^","@yarnpkg/libzip":"workspace:^","@yarnpkg/parsers":"workspace:^","@yarnpkg/plugin-compat":"workspace:^","@yarnpkg/plugin-constraints":"workspace:^","@yarnpkg/plugin-dlx":"workspace:^","@yarnpkg/plugin-essentials":"workspace:^","@yarnpkg/plugin-exec":"workspace:^","@yarnpkg/plugin-file":"workspace:^","@yarnpkg/plugin-git":"workspace:^","@yarnpkg/plugin-github":"workspace:^","@yarnpkg/plugin-http":"workspace:^","@yarnpkg/plugin-init":"workspace:^","@yarnpkg/plugin-interactive-tools":"workspace:^","@yarnpkg/plugin-link":"workspace:^","@yarnpkg/plugin-nm":"workspace:^","@yarnpkg/plugin-npm":"workspace:^","@yarnpkg/plugin-npm-cli":"workspace:^","@yarnpkg/plugin-pack":"workspace:^","@yarnpkg/plugin-patch":"workspace:^","@yarnpkg/plugin-pnp":"workspace:^","@yarnpkg/plugin-pnpm":"workspace:^","@yarnpkg/plugin-stage":"workspace:^","@yarnpkg/plugin-typescript":"workspace:^","@yarnpkg/plugin-version":"workspace:^","@yarnpkg/plugin-workspace-tools":"workspace:^","@yarnpkg/shell":"workspace:^","ci-info":"^3.2.0",clipanion:"^4.0.0-rc.2",semver:"^7.1.2",tslib:"^2.4.0",typanion:"^3.14.0"},devDependencies:{"@types/semver":"^7.1.0","@yarnpkg/builder":"workspace:^","@yarnpkg/monorepo":"workspace:^","@yarnpkg/pnpify":"workspace:^"},peerDependencies:{"@yarnpkg/core":"workspace:^"},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",bin:null,exports:{".":"./lib/index.js","./package.json":"./package.json"}},files:["/lib/**/*","!/lib/pluginConfiguration.*","!/lib/cli.*"],"@yarnpkg/builder":{bundles:{standard:["@yarnpkg/plugin-essentials","@yarnpkg/plugin-compat","@yarnpkg/plugin-constraints","@yarnpkg/plugin-dlx","@yarnpkg/plugin-exec","@yarnpkg/plugin-file","@yarnpkg/plugin-git","@yarnpkg/plugin-github","@yarnpkg/plugin-http","@yarnpkg/plugin-init","@yarnpkg/plugin-interactive-tools","@yarnpkg/plugin-link","@yarnpkg/plugin-nm","@yarnpkg/plugin-npm","@yarnpkg/plugin-npm-cli","@yarnpkg/plugin-pack","@yarnpkg/plugin-patch","@yarnpkg/plugin-pnp","@yarnpkg/plugin-pnpm","@yarnpkg/plugin-stage","@yarnpkg/plugin-typescript","@yarnpkg/plugin-version","@yarnpkg/plugin-workspace-tools"]}},repository:{type:"git",url:"ssh://git@github.com/yarnpkg/berry.git",directory:"packages/yarnpkg-cli"},engines:{node:">=18.12.0"}}});var Y8=_((e5t,Ade)=>{"use strict";Ade.exports=function(e,r){r===!0&&(r=0);var o="";if(typeof e=="string")try{o=new URL(e).protocol}catch{}else e&&e.constructor===URL&&(o=e.protocol);var a=o.split(/\:|\+/).filter(Boolean);return typeof r=="number"?a[r]:a}});var pde=_((t5t,fde)=>{"use strict";var agt=Y8();function lgt(t){var e={protocols:[],protocol:null,port:null,resource:"",host:"",user:"",password:"",pathname:"",hash:"",search:"",href:t,query:{},parse_failed:!1};try{var r=new URL(t);e.protocols=agt(r),e.protocol=e.protocols[0],e.port=r.port,e.resource=r.hostname,e.host=r.host,e.user=r.username||"",e.password=r.password||"",e.pathname=r.pathname,e.hash=r.hash.slice(1),e.search=r.search.slice(1),e.href=r.href,e.query=Object.fromEntries(r.searchParams)}catch{e.protocols=["file"],e.protocol=e.protocols[0],e.port="",e.resource="",e.user="",e.pathname="",e.hash="",e.search="",e.href=t,e.query={},e.parse_failed=!0}return e}fde.exports=lgt});var dde=_((r5t,gde)=>{"use strict";var cgt=pde();function ugt(t){return t&&typeof t=="object"&&"default"in t?t:{default:t}}var Agt=ugt(cgt),fgt="text/plain",pgt="us-ascii",hde=(t,e)=>e.some(r=>r instanceof RegExp?r.test(t):r===t),hgt=(t,{stripHash:e})=>{let r=/^data:(?[^,]*?),(?[^#]*?)(?:#(?.*))?$/.exec(t);if(!r)throw new Error(`Invalid URL: ${t}`);let{type:o,data:a,hash:n}=r.groups,u=o.split(";");n=e?"":n;let A=!1;u[u.length-1]==="base64"&&(u.pop(),A=!0);let p=(u.shift()||"").toLowerCase(),C=[...u.map(I=>{let[v,x=""]=I.split("=").map(E=>E.trim());return v==="charset"&&(x=x.toLowerCase(),x===pgt)?"":`${v}${x?`=${x}`:""}`}).filter(Boolean)];return A&&C.push("base64"),(C.length>0||p&&p!==fgt)&&C.unshift(p),`data:${C.join(";")},${A?a.trim():a}${n?`#${n}`:""}`};function ggt(t,e){if(e={defaultProtocol:"http:",normalizeProtocol:!0,forceHttp:!1,forceHttps:!1,stripAuthentication:!0,stripHash:!1,stripTextFragment:!0,stripWWW:!0,removeQueryParameters:[/^utm_\w+/i],removeTrailingSlash:!0,removeSingleSlash:!0,removeDirectoryIndex:!1,sortQueryParameters:!0,...e},t=t.trim(),/^data:/i.test(t))return hgt(t,e);if(/^view-source:/i.test(t))throw new Error("`view-source:` is not supported as it is a non-standard protocol");let r=t.startsWith("//");!r&&/^\.*\//.test(t)||(t=t.replace(/^(?!(?:\w+:)?\/\/)|^\/\//,e.defaultProtocol));let a=new URL(t);if(e.forceHttp&&e.forceHttps)throw new Error("The `forceHttp` and `forceHttps` options cannot be used together");if(e.forceHttp&&a.protocol==="https:"&&(a.protocol="http:"),e.forceHttps&&a.protocol==="http:"&&(a.protocol="https:"),e.stripAuthentication&&(a.username="",a.password=""),e.stripHash?a.hash="":e.stripTextFragment&&(a.hash=a.hash.replace(/#?:~:text.*?$/i,"")),a.pathname){let u=/\b[a-z][a-z\d+\-.]{1,50}:\/\//g,A=0,p="";for(;;){let C=u.exec(a.pathname);if(!C)break;let I=C[0],v=C.index,x=a.pathname.slice(A,v);p+=x.replace(/\/{2,}/g,"/"),p+=I,A=v+I.length}let h=a.pathname.slice(A,a.pathname.length);p+=h.replace(/\/{2,}/g,"/"),a.pathname=p}if(a.pathname)try{a.pathname=decodeURI(a.pathname)}catch{}if(e.removeDirectoryIndex===!0&&(e.removeDirectoryIndex=[/^index\.[a-z]+$/]),Array.isArray(e.removeDirectoryIndex)&&e.removeDirectoryIndex.length>0){let u=a.pathname.split("/"),A=u[u.length-1];hde(A,e.removeDirectoryIndex)&&(u=u.slice(0,-1),a.pathname=u.slice(1).join("/")+"/")}if(a.hostname&&(a.hostname=a.hostname.replace(/\.$/,""),e.stripWWW&&/^www\.(?!www\.)[a-z\-\d]{1,63}\.[a-z.\-\d]{2,63}$/.test(a.hostname)&&(a.hostname=a.hostname.replace(/^www\./,""))),Array.isArray(e.removeQueryParameters))for(let u of[...a.searchParams.keys()])hde(u,e.removeQueryParameters)&&a.searchParams.delete(u);if(e.removeQueryParameters===!0&&(a.search=""),e.sortQueryParameters){a.searchParams.sort();try{a.search=decodeURIComponent(a.search)}catch{}}e.removeTrailingSlash&&(a.pathname=a.pathname.replace(/\/$/,""));let n=t;return t=a.toString(),!e.removeSingleSlash&&a.pathname==="/"&&!n.endsWith("/")&&a.hash===""&&(t=t.replace(/\/$/,"")),(e.removeTrailingSlash||a.pathname==="/")&&a.hash===""&&e.removeSingleSlash&&(t=t.replace(/\/$/,"")),r&&!e.normalizeProtocol&&(t=t.replace(/^http:\/\//,"//")),e.stripProtocol&&(t=t.replace(/^(?:https?:)?\/\//,"")),t}var W8=(t,e=!1)=>{let r=/^(?:([a-z_][a-z0-9_-]{0,31})@|https?:\/\/)([\w\.\-@]+)[\/:]([\~,\.\w,\-,\_,\/]+?(?:\.git|\/)?)$/,o=n=>{let u=new Error(n);throw u.subject_url=t,u};(typeof t!="string"||!t.trim())&&o("Invalid url."),t.length>W8.MAX_INPUT_LENGTH&&o("Input exceeds maximum length. If needed, change the value of parseUrl.MAX_INPUT_LENGTH."),e&&(typeof e!="object"&&(e={stripHash:!1}),t=ggt(t,e));let a=Agt.default(t);if(a.parse_failed){let n=a.href.match(r);n?(a.protocols=["ssh"],a.protocol="ssh",a.resource=n[2],a.host=n[2],a.user=n[1],a.pathname=`/${n[3]}`,a.parse_failed=!1):o("URL parsing failed.")}return a};W8.MAX_INPUT_LENGTH=2048;gde.exports=W8});var Ede=_((n5t,yde)=>{"use strict";var dgt=Y8();function mde(t){if(Array.isArray(t))return t.indexOf("ssh")!==-1||t.indexOf("rsync")!==-1;if(typeof t!="string")return!1;var e=dgt(t);if(t=t.substring(t.indexOf("://")+3),mde(e))return!0;var r=new RegExp(".([a-zA-Z\\d]+):(\\d+)/");return!t.match(r)&&t.indexOf("@"){"use strict";var mgt=dde(),Cde=Ede();function ygt(t){var e=mgt(t);return e.token="",e.password==="x-oauth-basic"?e.token=e.user:e.user==="x-token-auth"&&(e.token=e.password),Cde(e.protocols)||e.protocols.length===0&&Cde(t)?e.protocol="ssh":e.protocols.length?e.protocol=e.protocols[0]:(e.protocol="file",e.protocols=["file"]),e.href=e.href.replace(/\/$/,""),e}wde.exports=ygt});var vde=_((s5t,Bde)=>{"use strict";var Egt=Ide();function K8(t){if(typeof t!="string")throw new Error("The url must be a string.");var e=/^([a-z\d-]{1,39})\/([-\.\w]{1,100})$/i;e.test(t)&&(t="https://github.com/"+t);var r=Egt(t),o=r.resource.split("."),a=null;switch(r.toString=function(L){return K8.stringify(this,L)},r.source=o.length>2?o.slice(1-o.length).join("."):r.source=r.resource,r.git_suffix=/\.git$/.test(r.pathname),r.name=decodeURIComponent((r.pathname||r.href).replace(/(^\/)|(\/$)/g,"").replace(/\.git$/,"")),r.owner=decodeURIComponent(r.user),r.source){case"git.cloudforge.com":r.owner=r.user,r.organization=o[0],r.source="cloudforge.com";break;case"visualstudio.com":if(r.resource==="vs-ssh.visualstudio.com"){a=r.name.split("/"),a.length===4&&(r.organization=a[1],r.owner=a[2],r.name=a[3],r.full_name=a[2]+"/"+a[3]);break}else{a=r.name.split("/"),a.length===2?(r.owner=a[1],r.name=a[1],r.full_name="_git/"+r.name):a.length===3?(r.name=a[2],a[0]==="DefaultCollection"?(r.owner=a[2],r.organization=a[0],r.full_name=r.organization+"/_git/"+r.name):(r.owner=a[0],r.full_name=r.owner+"/_git/"+r.name)):a.length===4&&(r.organization=a[0],r.owner=a[1],r.name=a[3],r.full_name=r.organization+"/"+r.owner+"/_git/"+r.name);break}case"dev.azure.com":case"azure.com":if(r.resource==="ssh.dev.azure.com"){a=r.name.split("/"),a.length===4&&(r.organization=a[1],r.owner=a[2],r.name=a[3]);break}else{a=r.name.split("/"),a.length===5?(r.organization=a[0],r.owner=a[1],r.name=a[4],r.full_name="_git/"+r.name):a.length===3?(r.name=a[2],a[0]==="DefaultCollection"?(r.owner=a[2],r.organization=a[0],r.full_name=r.organization+"/_git/"+r.name):(r.owner=a[0],r.full_name=r.owner+"/_git/"+r.name)):a.length===4&&(r.organization=a[0],r.owner=a[1],r.name=a[3],r.full_name=r.organization+"/"+r.owner+"/_git/"+r.name),r.query&&r.query.path&&(r.filepath=r.query.path.replace(/^\/+/g,"")),r.query&&r.query.version&&(r.ref=r.query.version.replace(/^GB/,""));break}default:a=r.name.split("/");var n=a.length-1;if(a.length>=2){var u=a.indexOf("-",2),A=a.indexOf("blob",2),p=a.indexOf("tree",2),h=a.indexOf("commit",2),C=a.indexOf("src",2),I=a.indexOf("raw",2),v=a.indexOf("edit",2);n=u>0?u-1:A>0?A-1:p>0?p-1:h>0?h-1:C>0?C-1:I>0?I-1:v>0?v-1:n,r.owner=a.slice(0,n).join("/"),r.name=a[n],h&&(r.commit=a[n+2])}r.ref="",r.filepathtype="",r.filepath="";var x=a.length>n&&a[n+1]==="-"?n+1:n;a.length>x+2&&["raw","src","blob","tree","edit"].indexOf(a[x+1])>=0&&(r.filepathtype=a[x+1],r.ref=a[x+2],a.length>x+3&&(r.filepath=a.slice(x+3).join("/"))),r.organization=r.owner;break}r.full_name||(r.full_name=r.owner,r.name&&(r.full_name&&(r.full_name+="/"),r.full_name+=r.name)),r.owner.startsWith("scm/")&&(r.source="bitbucket-server",r.owner=r.owner.replace("scm/",""),r.organization=r.owner,r.full_name=r.owner+"/"+r.name);var E=/(projects|users)\/(.*?)\/repos\/(.*?)((\/.*$)|$)/,R=E.exec(r.pathname);return R!=null&&(r.source="bitbucket-server",R[1]==="users"?r.owner="~"+R[2]:r.owner=R[2],r.organization=r.owner,r.name=R[3],a=R[4].split("/"),a.length>1&&(["raw","browse"].indexOf(a[1])>=0?(r.filepathtype=a[1],a.length>2&&(r.filepath=a.slice(2).join("/"))):a[1]==="commits"&&a.length>2&&(r.commit=a[2])),r.full_name=r.owner+"/"+r.name,r.query.at?r.ref=r.query.at:r.ref=""),r}K8.stringify=function(t,e){e=e||(t.protocols&&t.protocols.length?t.protocols.join("+"):t.protocol);var r=t.port?":"+t.port:"",o=t.user||"git",a=t.git_suffix?".git":"";switch(e){case"ssh":return r?"ssh://"+o+"@"+t.resource+r+"/"+t.full_name+a:o+"@"+t.resource+":"+t.full_name+a;case"git+ssh":case"ssh+git":case"ftp":case"ftps":return e+"://"+o+"@"+t.resource+r+"/"+t.full_name+a;case"http":case"https":var n=t.token?Cgt(t):t.user&&(t.protocols.includes("http")||t.protocols.includes("https"))?t.user+"@":"";return e+"://"+n+t.resource+r+"/"+wgt(t)+a;default:return t.href}};function Cgt(t){switch(t.source){case"bitbucket.org":return"x-token-auth:"+t.token+"@";default:return t.token+"@"}}function wgt(t){switch(t.source){case"bitbucket-server":return"scm/"+t.full_name;default:return""+t.full_name}}Bde.exports=K8});var _de=_((M9t,Ude)=>{var Fgt=qb(),Rgt=eS(),Tgt=Hl(),Ngt=AE(),Lgt=B_(),Ogt=oC(),Mgt=R1();function Ugt(t){return Tgt(t)?Fgt(t,Ogt):Ngt(t)?[t]:Rgt(Lgt(Mgt(t)))}Ude.exports=Ugt});function qgt(t,e){return e===1&&jgt.has(t[0])}function w2(t){let e=Array.isArray(t)?t:(0,qde.default)(t);return e.map((o,a)=>_gt.test(o)?`[${o}]`:Hgt.test(o)&&!qgt(e,a)?`.${o}`:`[${JSON.stringify(o)}]`).join("").replace(/^\./,"")}function Ggt(t,e){let r=[];if(e.methodName!==null&&r.push(de.pretty(t,e.methodName,de.Type.CODE)),e.file!==null){let o=[];o.push(de.pretty(t,e.file,de.Type.PATH)),e.line!==null&&(o.push(de.pretty(t,e.line,de.Type.NUMBER)),e.column!==null&&o.push(de.pretty(t,e.column,de.Type.NUMBER))),r.push(`(${o.join(de.pretty(t,":","grey"))})`)}return r.join(" ")}function mk(t,{manifestUpdates:e,reportedErrors:r},{fix:o}={}){let a=new Map,n=new Map,u=[...r.keys()].map(A=>[A,new Map]);for(let[A,p]of[...u,...e]){let h=r.get(A)?.map(x=>({text:x,fixable:!1}))??[],C=!1,I=t.getWorkspaceByCwd(A),v=I.manifest.exportTo({});for(let[x,E]of p){if(E.size>1){let R=[...E].map(([L,U])=>{let z=de.pretty(t.configuration,L,de.Type.INSPECT),te=U.size>0?Ggt(t.configuration,U.values().next().value):null;return te!==null?` +${z} at ${te}`:` +${z}`}).join("");h.push({text:`Conflict detected in constraint targeting ${de.pretty(t.configuration,x,de.Type.CODE)}; conflicting values are:${R}`,fixable:!1})}else{let[[R]]=E,L=(0,Hde.default)(v,x);if(L===R)continue;if(!o){let U=typeof L>"u"?`Missing field ${de.pretty(t.configuration,x,de.Type.CODE)}; expected ${de.pretty(t.configuration,R,de.Type.INSPECT)}`:typeof R>"u"?`Extraneous field ${de.pretty(t.configuration,x,de.Type.CODE)} currently set to ${de.pretty(t.configuration,L,de.Type.INSPECT)}`:`Invalid field ${de.pretty(t.configuration,x,de.Type.CODE)}; expected ${de.pretty(t.configuration,R,de.Type.INSPECT)}, found ${de.pretty(t.configuration,L,de.Type.INSPECT)}`;h.push({text:U,fixable:!0});continue}typeof R>"u"?(0,Gde.default)(v,x):(0,jde.default)(v,x,R),C=!0}C&&a.set(I,v)}h.length>0&&n.set(I,h)}return{changedWorkspaces:a,remainingErrors:n}}function Yde(t,{configuration:e}){let r={children:[]};for(let[o,a]of t){let n=[];for(let A of a){let p=A.text.split(/\n/);A.fixable&&(p[0]=`${de.pretty(e,"\u2699","gray")} ${p[0]}`),n.push({value:de.tuple(de.Type.NO_HINT,p[0]),children:p.slice(1).map(h=>({value:de.tuple(de.Type.NO_HINT,h)}))})}let u={value:de.tuple(de.Type.LOCATOR,o.anchoredLocator),children:je.sortMap(n,A=>A.value[1])};r.children.push(u)}return r.children=je.sortMap(r.children,o=>o.value[1]),r}var Hde,jde,qde,Gde,EC,_gt,Hgt,jgt,I2=Et(()=>{Ye();Hde=$e(h2()),jde=$e(R8()),qde=$e(_de()),Gde=$e(L8()),EC=class{constructor(e){this.indexedFields=e;this.items=[];this.indexes={};this.clear()}clear(){this.items=[];for(let e of this.indexedFields)this.indexes[e]=new Map}insert(e){this.items.push(e);for(let r of this.indexedFields){let o=Object.hasOwn(e,r)?e[r]:void 0;if(typeof o>"u")continue;je.getArrayWithDefault(this.indexes[r],o).push(e)}return e}find(e){if(typeof e>"u")return this.items;let r=Object.entries(e);if(r.length===0)return this.items;let o=[],a;for(let[u,A]of r){let p=u,h=Object.hasOwn(this.indexes,p)?this.indexes[p]:void 0;if(typeof h>"u"){o.push([p,A]);continue}let C=new Set(h.get(A)??[]);if(C.size===0)return[];if(typeof a>"u")a=C;else for(let I of a)C.has(I)||a.delete(I);if(a.size===0)break}let n=[...a??[]];return o.length>0&&(n=n.filter(u=>{for(let[A,p]of o)if(!(typeof p<"u"?Object.hasOwn(u,A)&&u[A]===p:Object.hasOwn(u,A)===!1))return!1;return!0})),n}},_gt=/^[0-9]+$/,Hgt=/^[a-zA-Z0-9_]+$/,jgt=new Set(["scripts",...Ot.allDependencies])});var Wde=_((J9t,aH)=>{var Ygt;(function(t){var e=function(){return{"append/2":[new t.type.Rule(new t.type.Term("append",[new t.type.Var("X"),new t.type.Var("L")]),new t.type.Term("foldl",[new t.type.Term("append",[]),new t.type.Var("X"),new t.type.Term("[]",[]),new t.type.Var("L")]))],"append/3":[new t.type.Rule(new t.type.Term("append",[new t.type.Term("[]",[]),new t.type.Var("X"),new t.type.Var("X")]),null),new t.type.Rule(new t.type.Term("append",[new t.type.Term(".",[new t.type.Var("H"),new t.type.Var("T")]),new t.type.Var("X"),new t.type.Term(".",[new t.type.Var("H"),new t.type.Var("S")])]),new t.type.Term("append",[new t.type.Var("T"),new t.type.Var("X"),new t.type.Var("S")]))],"member/2":[new t.type.Rule(new t.type.Term("member",[new t.type.Var("X"),new t.type.Term(".",[new t.type.Var("X"),new t.type.Var("_")])]),null),new t.type.Rule(new t.type.Term("member",[new t.type.Var("X"),new t.type.Term(".",[new t.type.Var("_"),new t.type.Var("Xs")])]),new t.type.Term("member",[new t.type.Var("X"),new t.type.Var("Xs")]))],"permutation/2":[new t.type.Rule(new t.type.Term("permutation",[new t.type.Term("[]",[]),new t.type.Term("[]",[])]),null),new t.type.Rule(new t.type.Term("permutation",[new t.type.Term(".",[new t.type.Var("H"),new t.type.Var("T")]),new t.type.Var("S")]),new t.type.Term(",",[new t.type.Term("permutation",[new t.type.Var("T"),new t.type.Var("P")]),new t.type.Term(",",[new t.type.Term("append",[new t.type.Var("X"),new t.type.Var("Y"),new t.type.Var("P")]),new t.type.Term("append",[new t.type.Var("X"),new t.type.Term(".",[new t.type.Var("H"),new t.type.Var("Y")]),new t.type.Var("S")])])]))],"maplist/2":[new t.type.Rule(new t.type.Term("maplist",[new t.type.Var("_"),new t.type.Term("[]",[])]),null),new t.type.Rule(new t.type.Term("maplist",[new t.type.Var("P"),new t.type.Term(".",[new t.type.Var("X"),new t.type.Var("Xs")])]),new t.type.Term(",",[new t.type.Term("call",[new t.type.Var("P"),new t.type.Var("X")]),new t.type.Term("maplist",[new t.type.Var("P"),new t.type.Var("Xs")])]))],"maplist/3":[new t.type.Rule(new t.type.Term("maplist",[new t.type.Var("_"),new t.type.Term("[]",[]),new t.type.Term("[]",[])]),null),new t.type.Rule(new t.type.Term("maplist",[new t.type.Var("P"),new t.type.Term(".",[new t.type.Var("A"),new t.type.Var("As")]),new t.type.Term(".",[new t.type.Var("B"),new t.type.Var("Bs")])]),new t.type.Term(",",[new t.type.Term("call",[new t.type.Var("P"),new t.type.Var("A"),new t.type.Var("B")]),new t.type.Term("maplist",[new t.type.Var("P"),new t.type.Var("As"),new t.type.Var("Bs")])]))],"maplist/4":[new t.type.Rule(new t.type.Term("maplist",[new t.type.Var("_"),new t.type.Term("[]",[]),new t.type.Term("[]",[]),new t.type.Term("[]",[])]),null),new t.type.Rule(new t.type.Term("maplist",[new t.type.Var("P"),new t.type.Term(".",[new t.type.Var("A"),new t.type.Var("As")]),new t.type.Term(".",[new t.type.Var("B"),new t.type.Var("Bs")]),new t.type.Term(".",[new t.type.Var("C"),new t.type.Var("Cs")])]),new t.type.Term(",",[new t.type.Term("call",[new t.type.Var("P"),new t.type.Var("A"),new t.type.Var("B"),new t.type.Var("C")]),new t.type.Term("maplist",[new t.type.Var("P"),new t.type.Var("As"),new t.type.Var("Bs"),new t.type.Var("Cs")])]))],"maplist/5":[new t.type.Rule(new t.type.Term("maplist",[new t.type.Var("_"),new t.type.Term("[]",[]),new t.type.Term("[]",[]),new t.type.Term("[]",[]),new t.type.Term("[]",[])]),null),new t.type.Rule(new t.type.Term("maplist",[new t.type.Var("P"),new t.type.Term(".",[new t.type.Var("A"),new t.type.Var("As")]),new t.type.Term(".",[new t.type.Var("B"),new t.type.Var("Bs")]),new t.type.Term(".",[new t.type.Var("C"),new t.type.Var("Cs")]),new t.type.Term(".",[new t.type.Var("D"),new t.type.Var("Ds")])]),new t.type.Term(",",[new t.type.Term("call",[new t.type.Var("P"),new t.type.Var("A"),new t.type.Var("B"),new t.type.Var("C"),new t.type.Var("D")]),new t.type.Term("maplist",[new t.type.Var("P"),new t.type.Var("As"),new t.type.Var("Bs"),new t.type.Var("Cs"),new t.type.Var("Ds")])]))],"maplist/6":[new t.type.Rule(new t.type.Term("maplist",[new t.type.Var("_"),new t.type.Term("[]",[]),new t.type.Term("[]",[]),new t.type.Term("[]",[]),new t.type.Term("[]",[]),new t.type.Term("[]",[])]),null),new t.type.Rule(new t.type.Term("maplist",[new t.type.Var("P"),new t.type.Term(".",[new t.type.Var("A"),new t.type.Var("As")]),new t.type.Term(".",[new t.type.Var("B"),new t.type.Var("Bs")]),new t.type.Term(".",[new t.type.Var("C"),new t.type.Var("Cs")]),new t.type.Term(".",[new t.type.Var("D"),new t.type.Var("Ds")]),new t.type.Term(".",[new t.type.Var("E"),new t.type.Var("Es")])]),new t.type.Term(",",[new t.type.Term("call",[new t.type.Var("P"),new t.type.Var("A"),new t.type.Var("B"),new t.type.Var("C"),new t.type.Var("D"),new t.type.Var("E")]),new t.type.Term("maplist",[new t.type.Var("P"),new t.type.Var("As"),new t.type.Var("Bs"),new t.type.Var("Cs"),new t.type.Var("Ds"),new t.type.Var("Es")])]))],"maplist/7":[new t.type.Rule(new t.type.Term("maplist",[new t.type.Var("_"),new t.type.Term("[]",[]),new t.type.Term("[]",[]),new t.type.Term("[]",[]),new t.type.Term("[]",[]),new t.type.Term("[]",[]),new t.type.Term("[]",[])]),null),new t.type.Rule(new t.type.Term("maplist",[new t.type.Var("P"),new t.type.Term(".",[new t.type.Var("A"),new t.type.Var("As")]),new t.type.Term(".",[new t.type.Var("B"),new t.type.Var("Bs")]),new t.type.Term(".",[new t.type.Var("C"),new t.type.Var("Cs")]),new t.type.Term(".",[new t.type.Var("D"),new t.type.Var("Ds")]),new t.type.Term(".",[new t.type.Var("E"),new t.type.Var("Es")]),new t.type.Term(".",[new t.type.Var("F"),new t.type.Var("Fs")])]),new t.type.Term(",",[new t.type.Term("call",[new t.type.Var("P"),new t.type.Var("A"),new t.type.Var("B"),new t.type.Var("C"),new t.type.Var("D"),new t.type.Var("E"),new t.type.Var("F")]),new t.type.Term("maplist",[new t.type.Var("P"),new t.type.Var("As"),new t.type.Var("Bs"),new t.type.Var("Cs"),new t.type.Var("Ds"),new t.type.Var("Es"),new t.type.Var("Fs")])]))],"maplist/8":[new t.type.Rule(new t.type.Term("maplist",[new t.type.Var("_"),new t.type.Term("[]",[]),new t.type.Term("[]",[]),new t.type.Term("[]",[]),new t.type.Term("[]",[]),new t.type.Term("[]",[]),new t.type.Term("[]",[]),new t.type.Term("[]",[])]),null),new t.type.Rule(new t.type.Term("maplist",[new t.type.Var("P"),new t.type.Term(".",[new t.type.Var("A"),new t.type.Var("As")]),new t.type.Term(".",[new t.type.Var("B"),new t.type.Var("Bs")]),new t.type.Term(".",[new t.type.Var("C"),new t.type.Var("Cs")]),new t.type.Term(".",[new t.type.Var("D"),new t.type.Var("Ds")]),new t.type.Term(".",[new t.type.Var("E"),new t.type.Var("Es")]),new t.type.Term(".",[new t.type.Var("F"),new t.type.Var("Fs")]),new t.type.Term(".",[new t.type.Var("G"),new t.type.Var("Gs")])]),new t.type.Term(",",[new t.type.Term("call",[new t.type.Var("P"),new t.type.Var("A"),new t.type.Var("B"),new t.type.Var("C"),new t.type.Var("D"),new t.type.Var("E"),new t.type.Var("F"),new t.type.Var("G")]),new t.type.Term("maplist",[new t.type.Var("P"),new t.type.Var("As"),new t.type.Var("Bs"),new t.type.Var("Cs"),new t.type.Var("Ds"),new t.type.Var("Es"),new t.type.Var("Fs"),new t.type.Var("Gs")])]))],"include/3":[new t.type.Rule(new t.type.Term("include",[new t.type.Var("_"),new t.type.Term("[]",[]),new t.type.Term("[]",[])]),null),new t.type.Rule(new t.type.Term("include",[new t.type.Var("P"),new t.type.Term(".",[new t.type.Var("H"),new t.type.Var("T")]),new t.type.Var("L")]),new t.type.Term(",",[new t.type.Term("=..",[new t.type.Var("P"),new t.type.Var("A")]),new t.type.Term(",",[new t.type.Term("append",[new t.type.Var("A"),new t.type.Term(".",[new t.type.Var("H"),new t.type.Term("[]",[])]),new t.type.Var("B")]),new t.type.Term(",",[new t.type.Term("=..",[new t.type.Var("F"),new t.type.Var("B")]),new t.type.Term(",",[new t.type.Term(";",[new t.type.Term(",",[new t.type.Term("call",[new t.type.Var("F")]),new t.type.Term(",",[new t.type.Term("=",[new t.type.Var("L"),new t.type.Term(".",[new t.type.Var("H"),new t.type.Var("S")])]),new t.type.Term("!",[])])]),new t.type.Term("=",[new t.type.Var("L"),new t.type.Var("S")])]),new t.type.Term("include",[new t.type.Var("P"),new t.type.Var("T"),new t.type.Var("S")])])])])]))],"exclude/3":[new t.type.Rule(new t.type.Term("exclude",[new t.type.Var("_"),new t.type.Term("[]",[]),new t.type.Term("[]",[])]),null),new t.type.Rule(new t.type.Term("exclude",[new t.type.Var("P"),new t.type.Term(".",[new t.type.Var("H"),new t.type.Var("T")]),new t.type.Var("S")]),new t.type.Term(",",[new t.type.Term("exclude",[new t.type.Var("P"),new t.type.Var("T"),new t.type.Var("E")]),new t.type.Term(",",[new t.type.Term("=..",[new t.type.Var("P"),new t.type.Var("L")]),new t.type.Term(",",[new t.type.Term("append",[new t.type.Var("L"),new t.type.Term(".",[new t.type.Var("H"),new t.type.Term("[]",[])]),new t.type.Var("Q")]),new t.type.Term(",",[new t.type.Term("=..",[new t.type.Var("R"),new t.type.Var("Q")]),new t.type.Term(";",[new t.type.Term(",",[new t.type.Term("call",[new t.type.Var("R")]),new t.type.Term(",",[new t.type.Term("!",[]),new t.type.Term("=",[new t.type.Var("S"),new t.type.Var("E")])])]),new t.type.Term("=",[new t.type.Var("S"),new t.type.Term(".",[new t.type.Var("H"),new t.type.Var("E")])])])])])])]))],"foldl/4":[new t.type.Rule(new t.type.Term("foldl",[new t.type.Var("_"),new t.type.Term("[]",[]),new t.type.Var("I"),new t.type.Var("I")]),null),new t.type.Rule(new t.type.Term("foldl",[new t.type.Var("P"),new t.type.Term(".",[new t.type.Var("H"),new t.type.Var("T")]),new t.type.Var("I"),new t.type.Var("R")]),new t.type.Term(",",[new t.type.Term("=..",[new t.type.Var("P"),new t.type.Var("L")]),new t.type.Term(",",[new t.type.Term("append",[new t.type.Var("L"),new t.type.Term(".",[new t.type.Var("I"),new t.type.Term(".",[new t.type.Var("H"),new t.type.Term(".",[new t.type.Var("X"),new t.type.Term("[]",[])])])]),new t.type.Var("L2")]),new t.type.Term(",",[new t.type.Term("=..",[new t.type.Var("P2"),new t.type.Var("L2")]),new t.type.Term(",",[new t.type.Term("call",[new t.type.Var("P2")]),new t.type.Term("foldl",[new t.type.Var("P"),new t.type.Var("T"),new t.type.Var("X"),new t.type.Var("R")])])])])]))],"select/3":[new t.type.Rule(new t.type.Term("select",[new t.type.Var("E"),new t.type.Term(".",[new t.type.Var("E"),new t.type.Var("Xs")]),new t.type.Var("Xs")]),null),new t.type.Rule(new t.type.Term("select",[new t.type.Var("E"),new t.type.Term(".",[new t.type.Var("X"),new t.type.Var("Xs")]),new t.type.Term(".",[new t.type.Var("X"),new t.type.Var("Ys")])]),new t.type.Term("select",[new t.type.Var("E"),new t.type.Var("Xs"),new t.type.Var("Ys")]))],"sum_list/2":[new t.type.Rule(new t.type.Term("sum_list",[new t.type.Term("[]",[]),new t.type.Num(0,!1)]),null),new t.type.Rule(new t.type.Term("sum_list",[new t.type.Term(".",[new t.type.Var("X"),new t.type.Var("Xs")]),new t.type.Var("S")]),new t.type.Term(",",[new t.type.Term("sum_list",[new t.type.Var("Xs"),new t.type.Var("Y")]),new t.type.Term("is",[new t.type.Var("S"),new t.type.Term("+",[new t.type.Var("X"),new t.type.Var("Y")])])]))],"max_list/2":[new t.type.Rule(new t.type.Term("max_list",[new t.type.Term(".",[new t.type.Var("X"),new t.type.Term("[]",[])]),new t.type.Var("X")]),null),new t.type.Rule(new t.type.Term("max_list",[new t.type.Term(".",[new t.type.Var("X"),new t.type.Var("Xs")]),new t.type.Var("S")]),new t.type.Term(",",[new t.type.Term("max_list",[new t.type.Var("Xs"),new t.type.Var("Y")]),new t.type.Term(";",[new t.type.Term(",",[new t.type.Term(">=",[new t.type.Var("X"),new t.type.Var("Y")]),new t.type.Term(",",[new t.type.Term("=",[new t.type.Var("S"),new t.type.Var("X")]),new t.type.Term("!",[])])]),new t.type.Term("=",[new t.type.Var("S"),new t.type.Var("Y")])])]))],"min_list/2":[new t.type.Rule(new t.type.Term("min_list",[new t.type.Term(".",[new t.type.Var("X"),new t.type.Term("[]",[])]),new t.type.Var("X")]),null),new t.type.Rule(new t.type.Term("min_list",[new t.type.Term(".",[new t.type.Var("X"),new t.type.Var("Xs")]),new t.type.Var("S")]),new t.type.Term(",",[new t.type.Term("min_list",[new t.type.Var("Xs"),new t.type.Var("Y")]),new t.type.Term(";",[new t.type.Term(",",[new t.type.Term("=<",[new t.type.Var("X"),new t.type.Var("Y")]),new t.type.Term(",",[new t.type.Term("=",[new t.type.Var("S"),new t.type.Var("X")]),new t.type.Term("!",[])])]),new t.type.Term("=",[new t.type.Var("S"),new t.type.Var("Y")])])]))],"prod_list/2":[new t.type.Rule(new t.type.Term("prod_list",[new t.type.Term("[]",[]),new t.type.Num(1,!1)]),null),new t.type.Rule(new t.type.Term("prod_list",[new t.type.Term(".",[new t.type.Var("X"),new t.type.Var("Xs")]),new t.type.Var("S")]),new t.type.Term(",",[new t.type.Term("prod_list",[new t.type.Var("Xs"),new t.type.Var("Y")]),new t.type.Term("is",[new t.type.Var("S"),new t.type.Term("*",[new t.type.Var("X"),new t.type.Var("Y")])])]))],"last/2":[new t.type.Rule(new t.type.Term("last",[new t.type.Term(".",[new t.type.Var("X"),new t.type.Term("[]",[])]),new t.type.Var("X")]),null),new t.type.Rule(new t.type.Term("last",[new t.type.Term(".",[new t.type.Var("_"),new t.type.Var("Xs")]),new t.type.Var("X")]),new t.type.Term("last",[new t.type.Var("Xs"),new t.type.Var("X")]))],"prefix/2":[new t.type.Rule(new t.type.Term("prefix",[new t.type.Var("Part"),new t.type.Var("Whole")]),new t.type.Term("append",[new t.type.Var("Part"),new t.type.Var("_"),new t.type.Var("Whole")]))],"nth0/3":[new t.type.Rule(new t.type.Term("nth0",[new t.type.Var("X"),new t.type.Var("Y"),new t.type.Var("Z")]),new t.type.Term(";",[new t.type.Term("->",[new t.type.Term("var",[new t.type.Var("X")]),new t.type.Term("nth",[new t.type.Num(0,!1),new t.type.Var("X"),new t.type.Var("Y"),new t.type.Var("Z"),new t.type.Var("_")])]),new t.type.Term(",",[new t.type.Term(">=",[new t.type.Var("X"),new t.type.Num(0,!1)]),new t.type.Term(",",[new t.type.Term("nth",[new t.type.Num(0,!1),new t.type.Var("X"),new t.type.Var("Y"),new t.type.Var("Z"),new t.type.Var("_")]),new t.type.Term("!",[])])])]))],"nth1/3":[new t.type.Rule(new t.type.Term("nth1",[new t.type.Var("X"),new t.type.Var("Y"),new t.type.Var("Z")]),new t.type.Term(";",[new t.type.Term("->",[new t.type.Term("var",[new t.type.Var("X")]),new t.type.Term("nth",[new t.type.Num(1,!1),new t.type.Var("X"),new t.type.Var("Y"),new t.type.Var("Z"),new t.type.Var("_")])]),new t.type.Term(",",[new t.type.Term(">",[new t.type.Var("X"),new t.type.Num(0,!1)]),new t.type.Term(",",[new t.type.Term("nth",[new t.type.Num(1,!1),new t.type.Var("X"),new t.type.Var("Y"),new t.type.Var("Z"),new t.type.Var("_")]),new t.type.Term("!",[])])])]))],"nth0/4":[new t.type.Rule(new t.type.Term("nth0",[new t.type.Var("X"),new t.type.Var("Y"),new t.type.Var("Z"),new t.type.Var("W")]),new t.type.Term(";",[new t.type.Term("->",[new t.type.Term("var",[new t.type.Var("X")]),new t.type.Term("nth",[new t.type.Num(0,!1),new t.type.Var("X"),new t.type.Var("Y"),new t.type.Var("Z"),new t.type.Var("W")])]),new t.type.Term(",",[new t.type.Term(">=",[new t.type.Var("X"),new t.type.Num(0,!1)]),new t.type.Term(",",[new t.type.Term("nth",[new t.type.Num(0,!1),new t.type.Var("X"),new t.type.Var("Y"),new t.type.Var("Z"),new t.type.Var("W")]),new t.type.Term("!",[])])])]))],"nth1/4":[new t.type.Rule(new t.type.Term("nth1",[new t.type.Var("X"),new t.type.Var("Y"),new t.type.Var("Z"),new t.type.Var("W")]),new t.type.Term(";",[new t.type.Term("->",[new t.type.Term("var",[new t.type.Var("X")]),new t.type.Term("nth",[new t.type.Num(1,!1),new t.type.Var("X"),new t.type.Var("Y"),new t.type.Var("Z"),new t.type.Var("W")])]),new t.type.Term(",",[new t.type.Term(">",[new t.type.Var("X"),new t.type.Num(0,!1)]),new t.type.Term(",",[new t.type.Term("nth",[new t.type.Num(1,!1),new t.type.Var("X"),new t.type.Var("Y"),new t.type.Var("Z"),new t.type.Var("W")]),new t.type.Term("!",[])])])]))],"nth/5":[new t.type.Rule(new t.type.Term("nth",[new t.type.Var("N"),new t.type.Var("N"),new t.type.Term(".",[new t.type.Var("X"),new t.type.Var("Xs")]),new t.type.Var("X"),new t.type.Var("Xs")]),null),new t.type.Rule(new t.type.Term("nth",[new t.type.Var("N"),new t.type.Var("O"),new t.type.Term(".",[new t.type.Var("X"),new t.type.Var("Xs")]),new t.type.Var("Y"),new t.type.Term(".",[new t.type.Var("X"),new t.type.Var("Ys")])]),new t.type.Term(",",[new t.type.Term("is",[new t.type.Var("M"),new t.type.Term("+",[new t.type.Var("N"),new t.type.Num(1,!1)])]),new t.type.Term("nth",[new t.type.Var("M"),new t.type.Var("O"),new t.type.Var("Xs"),new t.type.Var("Y"),new t.type.Var("Ys")])]))],"length/2":function(o,a,n){var u=n.args[0],A=n.args[1];if(!t.type.is_variable(A)&&!t.type.is_integer(A))o.throw_error(t.error.type("integer",A,n.indicator));else if(t.type.is_integer(A)&&A.value<0)o.throw_error(t.error.domain("not_less_than_zero",A,n.indicator));else{var p=new t.type.Term("length",[u,new t.type.Num(0,!1),A]);t.type.is_integer(A)&&(p=new t.type.Term(",",[p,new t.type.Term("!",[])])),o.prepend([new t.type.State(a.goal.replace(p),a.substitution,a)])}},"length/3":[new t.type.Rule(new t.type.Term("length",[new t.type.Term("[]",[]),new t.type.Var("N"),new t.type.Var("N")]),null),new t.type.Rule(new t.type.Term("length",[new t.type.Term(".",[new t.type.Var("_"),new t.type.Var("X")]),new t.type.Var("A"),new t.type.Var("N")]),new t.type.Term(",",[new t.type.Term("succ",[new t.type.Var("A"),new t.type.Var("B")]),new t.type.Term("length",[new t.type.Var("X"),new t.type.Var("B"),new t.type.Var("N")])]))],"replicate/3":function(o,a,n){var u=n.args[0],A=n.args[1],p=n.args[2];if(t.type.is_variable(A))o.throw_error(t.error.instantiation(n.indicator));else if(!t.type.is_integer(A))o.throw_error(t.error.type("integer",A,n.indicator));else if(A.value<0)o.throw_error(t.error.domain("not_less_than_zero",A,n.indicator));else if(!t.type.is_variable(p)&&!t.type.is_list(p))o.throw_error(t.error.type("list",p,n.indicator));else{for(var h=new t.type.Term("[]"),C=0;C0;I--)C[I].equals(C[I-1])&&C.splice(I,1);for(var v=new t.type.Term("[]"),I=C.length-1;I>=0;I--)v=new t.type.Term(".",[C[I],v]);o.prepend([new t.type.State(a.goal.replace(new t.type.Term("=",[v,A])),a.substitution,a)])}}},"msort/2":function(o,a,n){var u=n.args[0],A=n.args[1];if(t.type.is_variable(u))o.throw_error(t.error.instantiation(n.indicator));else if(!t.type.is_variable(A)&&!t.type.is_fully_list(A))o.throw_error(t.error.type("list",A,n.indicator));else{for(var p=[],h=u;h.indicator==="./2";)p.push(h.args[0]),h=h.args[1];if(t.type.is_variable(h))o.throw_error(t.error.instantiation(n.indicator));else if(!t.type.is_empty_list(h))o.throw_error(t.error.type("list",u,n.indicator));else{for(var C=p.sort(t.compare),I=new t.type.Term("[]"),v=C.length-1;v>=0;v--)I=new t.type.Term(".",[C[v],I]);o.prepend([new t.type.State(a.goal.replace(new t.type.Term("=",[I,A])),a.substitution,a)])}}},"keysort/2":function(o,a,n){var u=n.args[0],A=n.args[1];if(t.type.is_variable(u))o.throw_error(t.error.instantiation(n.indicator));else if(!t.type.is_variable(A)&&!t.type.is_fully_list(A))o.throw_error(t.error.type("list",A,n.indicator));else{for(var p=[],h,C=u;C.indicator==="./2";){if(h=C.args[0],t.type.is_variable(h)){o.throw_error(t.error.instantiation(n.indicator));return}else if(!t.type.is_term(h)||h.indicator!=="-/2"){o.throw_error(t.error.type("pair",h,n.indicator));return}h.args[0].pair=h.args[1],p.push(h.args[0]),C=C.args[1]}if(t.type.is_variable(C))o.throw_error(t.error.instantiation(n.indicator));else if(!t.type.is_empty_list(C))o.throw_error(t.error.type("list",u,n.indicator));else{for(var I=p.sort(t.compare),v=new t.type.Term("[]"),x=I.length-1;x>=0;x--)v=new t.type.Term(".",[new t.type.Term("-",[I[x],I[x].pair]),v]),delete I[x].pair;o.prepend([new t.type.State(a.goal.replace(new t.type.Term("=",[v,A])),a.substitution,a)])}}},"take/3":function(o,a,n){var u=n.args[0],A=n.args[1],p=n.args[2];if(t.type.is_variable(A)||t.type.is_variable(u))o.throw_error(t.error.instantiation(n.indicator));else if(!t.type.is_list(A))o.throw_error(t.error.type("list",A,n.indicator));else if(!t.type.is_integer(u))o.throw_error(t.error.type("integer",u,n.indicator));else if(!t.type.is_variable(p)&&!t.type.is_list(p))o.throw_error(t.error.type("list",p,n.indicator));else{for(var h=u.value,C=[],I=A;h>0&&I.indicator==="./2";)C.push(I.args[0]),I=I.args[1],h--;if(h===0){for(var v=new t.type.Term("[]"),h=C.length-1;h>=0;h--)v=new t.type.Term(".",[C[h],v]);o.prepend([new t.type.State(a.goal.replace(new t.type.Term("=",[v,p])),a.substitution,a)])}}},"drop/3":function(o,a,n){var u=n.args[0],A=n.args[1],p=n.args[2];if(t.type.is_variable(A)||t.type.is_variable(u))o.throw_error(t.error.instantiation(n.indicator));else if(!t.type.is_list(A))o.throw_error(t.error.type("list",A,n.indicator));else if(!t.type.is_integer(u))o.throw_error(t.error.type("integer",u,n.indicator));else if(!t.type.is_variable(p)&&!t.type.is_list(p))o.throw_error(t.error.type("list",p,n.indicator));else{for(var h=u.value,C=[],I=A;h>0&&I.indicator==="./2";)C.push(I.args[0]),I=I.args[1],h--;h===0&&o.prepend([new t.type.State(a.goal.replace(new t.type.Term("=",[I,p])),a.substitution,a)])}},"reverse/2":function(o,a,n){var u=n.args[0],A=n.args[1],p=t.type.is_instantiated_list(u),h=t.type.is_instantiated_list(A);if(t.type.is_variable(u)&&t.type.is_variable(A))o.throw_error(t.error.instantiation(n.indicator));else if(!t.type.is_variable(u)&&!t.type.is_fully_list(u))o.throw_error(t.error.type("list",u,n.indicator));else if(!t.type.is_variable(A)&&!t.type.is_fully_list(A))o.throw_error(t.error.type("list",A,n.indicator));else if(!p&&!h)o.throw_error(t.error.instantiation(n.indicator));else{for(var C=p?u:A,I=new t.type.Term("[]",[]);C.indicator==="./2";)I=new t.type.Term(".",[C.args[0],I]),C=C.args[1];o.prepend([new t.type.State(a.goal.replace(new t.type.Term("=",[I,p?A:u])),a.substitution,a)])}},"list_to_set/2":function(o,a,n){var u=n.args[0],A=n.args[1];if(t.type.is_variable(u))o.throw_error(t.error.instantiation(n.indicator));else{for(var p=u,h=[];p.indicator==="./2";)h.push(p.args[0]),p=p.args[1];if(t.type.is_variable(p))o.throw_error(t.error.instantiation(n.indicator));else if(!t.type.is_term(p)||p.indicator!=="[]/0")o.throw_error(t.error.type("list",u,n.indicator));else{for(var C=[],I=new t.type.Term("[]",[]),v,x=0;x=0;x--)I=new t.type.Term(".",[C[x],I]);o.prepend([new t.type.State(a.goal.replace(new t.type.Term("=",[A,I])),a.substitution,a)])}}}}},r=["append/2","append/3","member/2","permutation/2","maplist/2","maplist/3","maplist/4","maplist/5","maplist/6","maplist/7","maplist/8","include/3","exclude/3","foldl/4","sum_list/2","max_list/2","min_list/2","prod_list/2","last/2","prefix/2","nth0/3","nth1/3","nth0/4","nth1/4","length/2","replicate/3","select/3","sort/2","msort/2","keysort/2","take/3","drop/3","reverse/2","list_to_set/2"];typeof aH<"u"?aH.exports=function(o){t=o,new t.type.Module("lists",e(),r)}:new t.type.Module("lists",e(),r)})(Ygt)});var ame=_(Yr=>{"use strict";var Xd=process.platform==="win32",lH="aes-256-cbc",Wgt="sha256",zde="The current environment doesn't support interactive reading from TTY.",Yn=Be("fs"),Kde=process.binding("tty_wrap").TTY,uH=Be("child_process"),l0=Be("path"),AH={prompt:"> ",hideEchoBack:!1,mask:"*",limit:[],limitMessage:"Input another, please.$<( [)limit(])>",defaultInput:"",trueValue:[],falseValue:[],caseSensitive:!1,keepWhitespace:!1,encoding:"utf8",bufferSize:1024,print:void 0,history:!0,cd:!1,phContent:void 0,preCheck:void 0},Vf="none",Xc,wC,Vde=!1,a0,Ek,cH,Kgt=0,dH="",Jd=[],Ck,Jde=!1,fH=!1,B2=!1;function Xde(t){function e(r){return r.replace(/[^\w\u0080-\uFFFF]/g,function(o){return"#"+o.charCodeAt(0)+";"})}return Ek.concat(function(r){var o=[];return Object.keys(r).forEach(function(a){r[a]==="boolean"?t[a]&&o.push("--"+a):r[a]==="string"&&t[a]&&o.push("--"+a,e(t[a]))}),o}({display:"string",displayOnly:"boolean",keyIn:"boolean",hideEchoBack:"boolean",mask:"string",limit:"string",caseSensitive:"boolean"}))}function Vgt(t,e){function r(U){var z,te="",le;for(cH=cH||Be("os").tmpdir();;){z=l0.join(cH,U+te);try{le=Yn.openSync(z,"wx")}catch(he){if(he.code==="EEXIST"){te++;continue}else throw he}Yn.closeSync(le);break}return z}var o,a,n,u={},A,p,h=r("readline-sync.stdout"),C=r("readline-sync.stderr"),I=r("readline-sync.exit"),v=r("readline-sync.done"),x=Be("crypto"),E,R,L;E=x.createHash(Wgt),E.update(""+process.pid+Kgt+++Math.random()),L=E.digest("hex"),R=x.createDecipher(lH,L),o=Xde(t),Xd?(a=process.env.ComSpec||"cmd.exe",process.env.Q='"',n=["/V:ON","/S","/C","(%Q%"+a+"%Q% /V:ON /S /C %Q%%Q%"+a0+"%Q%"+o.map(function(U){return" %Q%"+U+"%Q%"}).join("")+" & (echo !ERRORLEVEL!)>%Q%"+I+"%Q%%Q%) 2>%Q%"+C+"%Q% |%Q%"+process.execPath+"%Q% %Q%"+__dirname+"\\encrypt.js%Q% %Q%"+lH+"%Q% %Q%"+L+"%Q% >%Q%"+h+"%Q% & (echo 1)>%Q%"+v+"%Q%"]):(a="/bin/sh",n=["-c",'("'+a0+'"'+o.map(function(U){return" '"+U.replace(/'/g,"'\\''")+"'"}).join("")+'; echo $?>"'+I+'") 2>"'+C+'" |"'+process.execPath+'" "'+__dirname+'/encrypt.js" "'+lH+'" "'+L+'" >"'+h+'"; echo 1 >"'+v+'"']),B2&&B2("_execFileSync",o);try{uH.spawn(a,n,e)}catch(U){u.error=new Error(U.message),u.error.method="_execFileSync - spawn",u.error.program=a,u.error.args=n}for(;Yn.readFileSync(v,{encoding:t.encoding}).trim()!=="1";);return(A=Yn.readFileSync(I,{encoding:t.encoding}).trim())==="0"?u.input=R.update(Yn.readFileSync(h,{encoding:"binary"}),"hex",t.encoding)+R.final(t.encoding):(p=Yn.readFileSync(C,{encoding:t.encoding}).trim(),u.error=new Error(zde+(p?` +`+p:"")),u.error.method="_execFileSync",u.error.program=a,u.error.args=n,u.error.extMessage=p,u.error.exitCode=+A),Yn.unlinkSync(h),Yn.unlinkSync(C),Yn.unlinkSync(I),Yn.unlinkSync(v),u}function zgt(t){var e,r={},o,a={env:process.env,encoding:t.encoding};if(a0||(Xd?process.env.PSModulePath?(a0="powershell.exe",Ek=["-ExecutionPolicy","Bypass","-File",__dirname+"\\read.ps1"]):(a0="cscript.exe",Ek=["//nologo",__dirname+"\\read.cs.js"]):(a0="/bin/sh",Ek=[__dirname+"/read.sh"])),Xd&&!process.env.PSModulePath&&(a.stdio=[process.stdin]),uH.execFileSync){e=Xde(t),B2&&B2("execFileSync",e);try{r.input=uH.execFileSync(a0,e,a)}catch(n){o=n.stderr?(n.stderr+"").trim():"",r.error=new Error(zde+(o?` +`+o:"")),r.error.method="execFileSync",r.error.program=a0,r.error.args=e,r.error.extMessage=o,r.error.exitCode=n.status,r.error.code=n.code,r.error.signal=n.signal}}else r=Vgt(t,a);return r.error||(r.input=r.input.replace(/^\s*'|'\s*$/g,""),t.display=""),r}function pH(t){var e="",r=t.display,o=!t.display&&t.keyIn&&t.hideEchoBack&&!t.mask;function a(){var n=zgt(t);if(n.error)throw n.error;return n.input}return fH&&fH(t),function(){var n,u,A;function p(){return n||(n=process.binding("fs"),u=process.binding("constants")),n}if(typeof Vf=="string")if(Vf=null,Xd){if(A=function(h){var C=h.replace(/^\D+/,"").split("."),I=0;return(C[0]=+C[0])&&(I+=C[0]*1e4),(C[1]=+C[1])&&(I+=C[1]*100),(C[2]=+C[2])&&(I+=C[2]),I}(process.version),!(A>=20302&&A<40204||A>=5e4&&A<50100||A>=50600&&A<60200)&&process.stdin.isTTY)process.stdin.pause(),Vf=process.stdin.fd,wC=process.stdin._handle;else try{Vf=p().open("CONIN$",u.O_RDWR,parseInt("0666",8)),wC=new Kde(Vf,!0)}catch{}if(process.stdout.isTTY)Xc=process.stdout.fd;else{try{Xc=Yn.openSync("\\\\.\\CON","w")}catch{}if(typeof Xc!="number")try{Xc=p().open("CONOUT$",u.O_RDWR,parseInt("0666",8))}catch{}}}else{if(process.stdin.isTTY){process.stdin.pause();try{Vf=Yn.openSync("/dev/tty","r"),wC=process.stdin._handle}catch{}}else try{Vf=Yn.openSync("/dev/tty","r"),wC=new Kde(Vf,!1)}catch{}if(process.stdout.isTTY)Xc=process.stdout.fd;else try{Xc=Yn.openSync("/dev/tty","w")}catch{}}}(),function(){var n,u,A=!t.hideEchoBack&&!t.keyIn,p,h,C,I,v;Ck="";function x(E){return E===Vde?!0:wC.setRawMode(E)!==0?!1:(Vde=E,!0)}if(Jde||!wC||typeof Xc!="number"&&(t.display||!A)){e=a();return}if(t.display&&(Yn.writeSync(Xc,t.display),t.display=""),!t.displayOnly){if(!x(!A)){e=a();return}for(h=t.keyIn?1:t.bufferSize,p=Buffer.allocUnsafe&&Buffer.alloc?Buffer.alloc(h):new Buffer(h),t.keyIn&&t.limit&&(u=new RegExp("[^"+t.limit+"]","g"+(t.caseSensitive?"":"i")));;){C=0;try{C=Yn.readSync(Vf,p,0,h)}catch(E){if(E.code!=="EOF"){x(!1),e+=a();return}}if(C>0?(I=p.toString(t.encoding,0,C),Ck+=I):(I=` +`,Ck+=String.fromCharCode(0)),I&&typeof(v=(I.match(/^(.*?)[\r\n]/)||[])[1])=="string"&&(I=v,n=!0),I&&(I=I.replace(/[\x00-\x08\x0b\x0c\x0e-\x1f\x7f]/g,"")),I&&u&&(I=I.replace(u,"")),I&&(A||(t.hideEchoBack?t.mask&&Yn.writeSync(Xc,new Array(I.length+1).join(t.mask)):Yn.writeSync(Xc,I)),e+=I),!t.keyIn&&n||t.keyIn&&e.length>=h)break}!A&&!o&&Yn.writeSync(Xc,` +`),x(!1)}}(),t.print&&!o&&t.print(r+(t.displayOnly?"":(t.hideEchoBack?new Array(e.length+1).join(t.mask):e)+` +`),t.encoding),t.displayOnly?"":dH=t.keepWhitespace||t.keyIn?e:e.trim()}function Jgt(t,e){var r=[];function o(a){a!=null&&(Array.isArray(a)?a.forEach(o):(!e||e(a))&&r.push(a))}return o(t),r}function mH(t){return t.replace(/[\x00-\x7f]/g,function(e){return"\\x"+("00"+e.charCodeAt().toString(16)).substr(-2)})}function Rs(){var t=Array.prototype.slice.call(arguments),e,r;return t.length&&typeof t[0]=="boolean"&&(r=t.shift(),r&&(e=Object.keys(AH),t.unshift(AH))),t.reduce(function(o,a){return a==null||(a.hasOwnProperty("noEchoBack")&&!a.hasOwnProperty("hideEchoBack")&&(a.hideEchoBack=a.noEchoBack,delete a.noEchoBack),a.hasOwnProperty("noTrim")&&!a.hasOwnProperty("keepWhitespace")&&(a.keepWhitespace=a.noTrim,delete a.noTrim),r||(e=Object.keys(a)),e.forEach(function(n){var u;if(!!a.hasOwnProperty(n))switch(u=a[n],n){case"mask":case"limitMessage":case"defaultInput":case"encoding":u=u!=null?u+"":"",u&&n!=="limitMessage"&&(u=u.replace(/[\r\n]/g,"")),o[n]=u;break;case"bufferSize":!isNaN(u=parseInt(u,10))&&typeof u=="number"&&(o[n]=u);break;case"displayOnly":case"keyIn":case"hideEchoBack":case"caseSensitive":case"keepWhitespace":case"history":case"cd":o[n]=!!u;break;case"limit":case"trueValue":case"falseValue":o[n]=Jgt(u,function(A){var p=typeof A;return p==="string"||p==="number"||p==="function"||A instanceof RegExp}).map(function(A){return typeof A=="string"?A.replace(/[\r\n]/g,""):A});break;case"print":case"phContent":case"preCheck":o[n]=typeof u=="function"?u:void 0;break;case"prompt":case"display":o[n]=u??"";break}})),o},{})}function hH(t,e,r){return e.some(function(o){var a=typeof o;return a==="string"?r?t===o:t.toLowerCase()===o.toLowerCase():a==="number"?parseFloat(t)===o:a==="function"?o(t):o instanceof RegExp?o.test(t):!1})}function yH(t,e){var r=l0.normalize(Xd?(process.env.HOMEDRIVE||"")+(process.env.HOMEPATH||""):process.env.HOME||"").replace(/[\/\\]+$/,"");return t=l0.normalize(t),e?t.replace(/^~(?=\/|\\|$)/,r):t.replace(new RegExp("^"+mH(r)+"(?=\\/|\\\\|$)",Xd?"i":""),"~")}function IC(t,e){var r="(?:\\(([\\s\\S]*?)\\))?(\\w+|.-.)(?:\\(([\\s\\S]*?)\\))?",o=new RegExp("(\\$)?(\\$<"+r+">)","g"),a=new RegExp("(\\$)?(\\$\\{"+r+"\\})","g");function n(u,A,p,h,C,I){var v;return A||typeof(v=e(C))!="string"?p:v?(h||"")+v+(I||""):""}return t.replace(o,n).replace(a,n)}function Zde(t,e,r){var o,a=[],n=-1,u=0,A="",p;function h(C,I){return I.length>3?(C.push(I[0]+"..."+I[I.length-1]),p=!0):I.length&&(C=C.concat(I)),C}return o=t.reduce(function(C,I){return C.concat((I+"").split(""))},[]).reduce(function(C,I){var v,x;return e||(I=I.toLowerCase()),v=/^\d$/.test(I)?1:/^[A-Z]$/.test(I)?2:/^[a-z]$/.test(I)?3:0,r&&v===0?A+=I:(x=I.charCodeAt(0),v&&v===n&&x===u+1?a.push(I):(C=h(C,a),a=[I],n=v),u=x),C},[]),o=h(o,a),A&&(o.push(A),p=!0),{values:o,suppressed:p}}function $de(t,e){return t.join(t.length>2?", ":e?" / ":"/")}function eme(t,e){var r,o,a={},n;if(e.phContent&&(r=e.phContent(t,e)),typeof r!="string")switch(t){case"hideEchoBack":case"mask":case"defaultInput":case"caseSensitive":case"keepWhitespace":case"encoding":case"bufferSize":case"history":case"cd":r=e.hasOwnProperty(t)?typeof e[t]=="boolean"?e[t]?"on":"off":e[t]+"":"";break;case"limit":case"trueValue":case"falseValue":o=e[e.hasOwnProperty(t+"Src")?t+"Src":t],e.keyIn?(a=Zde(o,e.caseSensitive),o=a.values):o=o.filter(function(u){var A=typeof u;return A==="string"||A==="number"}),r=$de(o,a.suppressed);break;case"limitCount":case"limitCountNotZero":r=e[e.hasOwnProperty("limitSrc")?"limitSrc":"limit"].length,r=r||t!=="limitCountNotZero"?r+"":"";break;case"lastInput":r=dH;break;case"cwd":case"CWD":case"cwdHome":r=process.cwd(),t==="CWD"?r=l0.basename(r):t==="cwdHome"&&(r=yH(r));break;case"date":case"time":case"localeDate":case"localeTime":r=new Date()["to"+t.replace(/^./,function(u){return u.toUpperCase()})+"String"]();break;default:typeof(n=(t.match(/^history_m(\d+)$/)||[])[1])=="string"&&(r=Jd[Jd.length-n]||"")}return r}function tme(t){var e=/^(.)-(.)$/.exec(t),r="",o,a,n,u;if(!e)return null;for(o=e[1].charCodeAt(0),a=e[2].charCodeAt(0),u=o +And the length must be: $`,trueValue:null,falseValue:null,caseSensitive:!0},e,{history:!1,cd:!1,phContent:function(x){return x==="charlist"?r.text:x==="length"?o+"..."+a:null}}),u,A,p,h,C,I,v;for(e=e||{},u=IC(e.charlist?e.charlist+"":"$",tme),(isNaN(o=parseInt(e.min,10))||typeof o!="number")&&(o=12),(isNaN(a=parseInt(e.max,10))||typeof a!="number")&&(a=24),h=new RegExp("^["+mH(u)+"]{"+o+","+a+"}$"),r=Zde([u],n.caseSensitive,!0),r.text=$de(r.values,r.suppressed),A=e.confirmMessage!=null?e.confirmMessage:"Reinput a same one to confirm it: ",p=e.unmatchMessage!=null?e.unmatchMessage:"It differs from first one. Hit only the Enter key if you want to retry from first one.",t==null&&(t="Input new password: "),C=n.limitMessage;!v;)n.limit=h,n.limitMessage=C,I=Yr.question(t,n),n.limit=[I,""],n.limitMessage=p,v=Yr.question(A,n);return I};function ime(t,e,r){var o;function a(n){return o=r(n),!isNaN(o)&&typeof o=="number"}return Yr.question(t,Rs({limitMessage:"Input valid number, please."},e,{limit:a,cd:!1})),o}Yr.questionInt=function(t,e){return ime(t,e,function(r){return parseInt(r,10)})};Yr.questionFloat=function(t,e){return ime(t,e,parseFloat)};Yr.questionPath=function(t,e){var r,o="",a=Rs({hideEchoBack:!1,limitMessage:`$Input valid path, please.$<( Min:)min>$<( Max:)max>`,history:!0,cd:!0},e,{keepWhitespace:!1,limit:function(n){var u,A,p;n=yH(n,!0),o="";function h(C){C.split(/\/|\\/).reduce(function(I,v){var x=l0.resolve(I+=v+l0.sep);if(!Yn.existsSync(x))Yn.mkdirSync(x);else if(!Yn.statSync(x).isDirectory())throw new Error("Non directory already exists: "+x);return I},"")}try{if(u=Yn.existsSync(n),r=u?Yn.realpathSync(n):l0.resolve(n),!e.hasOwnProperty("exists")&&!u||typeof e.exists=="boolean"&&e.exists!==u)return o=(u?"Already exists":"No such file or directory")+": "+r,!1;if(!u&&e.create&&(e.isDirectory?h(r):(h(l0.dirname(r)),Yn.closeSync(Yn.openSync(r,"w"))),r=Yn.realpathSync(r)),u&&(e.min||e.max||e.isFile||e.isDirectory)){if(A=Yn.statSync(r),e.isFile&&!A.isFile())return o="Not file: "+r,!1;if(e.isDirectory&&!A.isDirectory())return o="Not directory: "+r,!1;if(e.min&&A.size<+e.min||e.max&&A.size>+e.max)return o="Size "+A.size+" is out of range: "+r,!1}if(typeof e.validate=="function"&&(p=e.validate(r))!==!0)return typeof p=="string"&&(o=p),!1}catch(C){return o=C+"",!1}return!0},phContent:function(n){return n==="error"?o:n!=="min"&&n!=="max"?null:e.hasOwnProperty(n)?e[n]+"":""}});return e=e||{},t==null&&(t='Input path (you can "cd" and "pwd"): '),Yr.question(t,a),r};function sme(t,e){var r={},o={};return typeof t=="object"?(Object.keys(t).forEach(function(a){typeof t[a]=="function"&&(o[e.caseSensitive?a:a.toLowerCase()]=t[a])}),r.preCheck=function(a){var n;return r.args=gH(a),n=r.args[0]||"",e.caseSensitive||(n=n.toLowerCase()),r.hRes=n!=="_"&&o.hasOwnProperty(n)?o[n].apply(a,r.args.slice(1)):o.hasOwnProperty("_")?o._.apply(a,r.args):null,{res:a,forceNext:!1}},o.hasOwnProperty("_")||(r.limit=function(){var a=r.args[0]||"";return e.caseSensitive||(a=a.toLowerCase()),o.hasOwnProperty(a)})):r.preCheck=function(a){return r.args=gH(a),r.hRes=typeof t=="function"?t.apply(a,r.args):!0,{res:a,forceNext:!1}},r}Yr.promptCL=function(t,e){var r=Rs({hideEchoBack:!1,limitMessage:"Requested command is not available.",caseSensitive:!1,history:!0},e),o=sme(t,r);return r.limit=o.limit,r.preCheck=o.preCheck,Yr.prompt(r),o.args};Yr.promptLoop=function(t,e){for(var r=Rs({hideEchoBack:!1,trueValue:null,falseValue:null,caseSensitive:!1,history:!0},e);!t(Yr.prompt(r)););};Yr.promptCLLoop=function(t,e){var r=Rs({hideEchoBack:!1,limitMessage:"Requested command is not available.",caseSensitive:!1,history:!0},e),o=sme(t,r);for(r.limit=o.limit,r.preCheck=o.preCheck;Yr.prompt(r),!o.hRes;);};Yr.promptSimShell=function(t){return Yr.prompt(Rs({hideEchoBack:!1,history:!0},t,{prompt:function(){return Xd?"$>":(process.env.USER||"")+(process.env.HOSTNAME?"@"+process.env.HOSTNAME.replace(/\..*$/,""):"")+":$$ "}()}))};function ome(t,e,r){var o;return t==null&&(t="Are you sure? "),(!e||e.guide!==!1)&&(t+="")&&(t=t.replace(/\s*:?\s*$/,"")+" [y/n]: "),o=Yr.keyIn(t,Rs(e,{hideEchoBack:!1,limit:r,trueValue:"y",falseValue:"n",caseSensitive:!1})),typeof o=="boolean"?o:""}Yr.keyInYN=function(t,e){return ome(t,e)};Yr.keyInYNStrict=function(t,e){return ome(t,e,"yn")};Yr.keyInPause=function(t,e){t==null&&(t="Continue..."),(!e||e.guide!==!1)&&(t+="")&&(t=t.replace(/\s+$/,"")+" (Hit any key)"),Yr.keyIn(t,Rs({limit:null},e,{hideEchoBack:!0,mask:""}))};Yr.keyInSelect=function(t,e,r){var o=Rs({hideEchoBack:!1},r,{trueValue:null,falseValue:null,caseSensitive:!1,phContent:function(p){return p==="itemsCount"?t.length+"":p==="firstItem"?(t[0]+"").trim():p==="lastItem"?(t[t.length-1]+"").trim():null}}),a="",n={},u=49,A=` +`;if(!Array.isArray(t)||!t.length||t.length>35)throw"`items` must be Array (max length: 35).";return t.forEach(function(p,h){var C=String.fromCharCode(u);a+=C,n[C]=h,A+="["+C+"] "+(p+"").trim()+` +`,u=u===57?97:u+1}),(!r||r.cancel!==!1)&&(a+="0",n[0]=-1,A+="[0] "+(r&&r.cancel!=null&&typeof r.cancel!="boolean"?(r.cancel+"").trim():"CANCEL")+` +`),o.limit=a,A+=` +`,e==null&&(e="Choose one from list: "),(e+="")&&((!r||r.guide!==!1)&&(e=e.replace(/\s*:?\s*$/,"")+" [$]: "),A+=e),n[Yr.keyIn(A,o).toLowerCase()]};Yr.getRawInput=function(){return Ck};function v2(t,e){var r;return e.length&&(r={},r[t]=e[0]),Yr.setDefaultOptions(r)[t]}Yr.setPrint=function(){return v2("print",arguments)};Yr.setPrompt=function(){return v2("prompt",arguments)};Yr.setEncoding=function(){return v2("encoding",arguments)};Yr.setMask=function(){return v2("mask",arguments)};Yr.setBufferSize=function(){return v2("bufferSize",arguments)}});var EH=_((Z9t,hl)=>{(function(){var t={major:0,minor:2,patch:66,status:"beta"};tau_file_system={files:{},open:function(w,S,y){var F=tau_file_system.files[w];if(!F){if(y==="read")return null;F={path:w,text:"",type:S,get:function(J,X){return X===this.text.length||X>this.text.length?"end_of_file":this.text.substring(X,X+J)},put:function(J,X){return X==="end_of_file"?(this.text+=J,!0):X==="past_end_of_file"?null:(this.text=this.text.substring(0,X)+J+this.text.substring(X+J.length),!0)},get_byte:function(J){if(J==="end_of_stream")return-1;var X=Math.floor(J/2);if(this.text.length<=X)return-1;var Z=n(this.text[Math.floor(J/2)],0);return J%2===0?Z&255:Z/256>>>0},put_byte:function(J,X){var Z=X==="end_of_stream"?this.text.length:Math.floor(X/2);if(this.text.length>>0,ie=(ie&255)<<8|J&255):(ie=ie&255,ie=(J&255)<<8|ie&255),this.text.length===Z?this.text+=u(ie):this.text=this.text.substring(0,Z)+u(ie)+this.text.substring(Z+1),!0},flush:function(){return!0},close:function(){var J=tau_file_system.files[this.path];return J?!0:null}},tau_file_system.files[w]=F}return y==="write"&&(F.text=""),F}},tau_user_input={buffer:"",get:function(w,S){for(var y;tau_user_input.buffer.length\?\@\^\~\\]+|'(?:[^']*?(?:\\(?:x?\d+)?\\)*(?:'')*(?:\\')*)*')/,number:/^(?:0o[0-7]+|0x[0-9a-fA-F]+|0b[01]+|0'(?:''|\\[abfnrtv\\'"`]|\\x?\d+\\|[^\\])|\d+(?:\.\d+(?:[eE][+-]?\d+)?)?)/,string:/^(?:"([^"]|""|\\")*"|`([^`]|``|\\`)*`)/,l_brace:/^(?:\[)/,r_brace:/^(?:\])/,l_bracket:/^(?:\{)/,r_bracket:/^(?:\})/,bar:/^(?:\|)/,l_paren:/^(?:\()/,r_paren:/^(?:\))/};function L(w,S){return w.get_flag("char_conversion").id==="on"?S.replace(/./g,function(y){return w.get_char_conversion(y)}):S}function U(w){this.thread=w,this.text="",this.tokens=[]}U.prototype.set_last_tokens=function(w){return this.tokens=w},U.prototype.new_text=function(w){this.text=w,this.tokens=[]},U.prototype.get_tokens=function(w){var S,y=0,F=0,J=0,X=[],Z=!1;if(w){var ie=this.tokens[w-1];y=ie.len,S=L(this.thread,this.text.substr(ie.len)),F=ie.line,J=ie.start}else S=this.text;if(/^\s*$/.test(S))return null;for(;S!=="";){var Pe=[],Ne=!1;if(/^\n/.exec(S)!==null){F++,J=0,y++,S=S.replace(/\n/,""),Z=!0;continue}for(var ot in R)if(R.hasOwnProperty(ot)){var dt=R[ot].exec(S);dt&&Pe.push({value:dt[0],name:ot,matches:dt})}if(!Pe.length)return this.set_last_tokens([{value:S,matches:[],name:"lexical",line:F,start:J}]);var ie=r(Pe,function(Qr,mr){return Qr.value.length>=mr.value.length?Qr:mr});switch(ie.start=J,ie.line=F,S=S.replace(ie.value,""),J+=ie.value.length,y+=ie.value.length,ie.name){case"atom":ie.raw=ie.value,ie.value.charAt(0)==="'"&&(ie.value=v(ie.value.substr(1,ie.value.length-2),"'"),ie.value===null&&(ie.name="lexical",ie.value="unknown escape sequence"));break;case"number":ie.float=ie.value.substring(0,2)!=="0x"&&ie.value.match(/[.eE]/)!==null&&ie.value!=="0'.",ie.value=E(ie.value),ie.blank=Ne;break;case"string":var jt=ie.value.charAt(0);ie.value=v(ie.value.substr(1,ie.value.length-2),jt),ie.value===null&&(ie.name="lexical",ie.value="unknown escape sequence");break;case"whitespace":var $t=X[X.length-1];$t&&($t.space=!0),Ne=!0;continue;case"r_bracket":X.length>0&&X[X.length-1].name==="l_bracket"&&(ie=X.pop(),ie.name="atom",ie.value="{}",ie.raw="{}",ie.space=!1);break;case"r_brace":X.length>0&&X[X.length-1].name==="l_brace"&&(ie=X.pop(),ie.name="atom",ie.value="[]",ie.raw="[]",ie.space=!1);break}ie.len=y,X.push(ie),Ne=!1}var bt=this.set_last_tokens(X);return bt.length===0?null:bt};function z(w,S,y,F,J){if(!S[y])return{type:A,value:b.error.syntax(S[y-1],"expression expected",!0)};var X;if(F==="0"){var Z=S[y];switch(Z.name){case"number":return{type:p,len:y+1,value:new b.type.Num(Z.value,Z.float)};case"variable":return{type:p,len:y+1,value:new b.type.Var(Z.value)};case"string":var ie;switch(w.get_flag("double_quotes").id){case"atom":ie=new H(Z.value,[]);break;case"codes":ie=new H("[]",[]);for(var Pe=Z.value.length-1;Pe>=0;Pe--)ie=new H(".",[new b.type.Num(n(Z.value,Pe),!1),ie]);break;case"chars":ie=new H("[]",[]);for(var Pe=Z.value.length-1;Pe>=0;Pe--)ie=new H(".",[new b.type.Term(Z.value.charAt(Pe),[]),ie]);break}return{type:p,len:y+1,value:ie};case"l_paren":var bt=z(w,S,y+1,w.__get_max_priority(),!0);return bt.type!==p?bt:S[bt.len]&&S[bt.len].name==="r_paren"?(bt.len++,bt):{type:A,derived:!0,value:b.error.syntax(S[bt.len]?S[bt.len]:S[bt.len-1],") or operator expected",!S[bt.len])};case"l_bracket":var bt=z(w,S,y+1,w.__get_max_priority(),!0);return bt.type!==p?bt:S[bt.len]&&S[bt.len].name==="r_bracket"?(bt.len++,bt.value=new H("{}",[bt.value]),bt):{type:A,derived:!0,value:b.error.syntax(S[bt.len]?S[bt.len]:S[bt.len-1],"} or operator expected",!S[bt.len])}}var Ne=te(w,S,y,J);return Ne.type===p||Ne.derived||(Ne=le(w,S,y),Ne.type===p||Ne.derived)?Ne:{type:A,derived:!1,value:b.error.syntax(S[y],"unexpected token")}}var ot=w.__get_max_priority(),dt=w.__get_next_priority(F),jt=y;if(S[y].name==="atom"&&S[y+1]&&(S[y].space||S[y+1].name!=="l_paren")){var Z=S[y++],$t=w.__lookup_operator_classes(F,Z.value);if($t&&$t.indexOf("fy")>-1){var bt=z(w,S,y,F,J);if(bt.type!==A)return Z.value==="-"&&!Z.space&&b.type.is_number(bt.value)?{value:new b.type.Num(-bt.value.value,bt.value.is_float),len:bt.len,type:p}:{value:new b.type.Term(Z.value,[bt.value]),len:bt.len,type:p};X=bt}else if($t&&$t.indexOf("fx")>-1){var bt=z(w,S,y,dt,J);if(bt.type!==A)return{value:new b.type.Term(Z.value,[bt.value]),len:bt.len,type:p};X=bt}}y=jt;var bt=z(w,S,y,dt,J);if(bt.type===p){y=bt.len;var Z=S[y];if(S[y]&&(S[y].name==="atom"&&w.__lookup_operator_classes(F,Z.value)||S[y].name==="bar"&&w.__lookup_operator_classes(F,"|"))){var an=dt,Qr=F,$t=w.__lookup_operator_classes(F,Z.value);if($t.indexOf("xf")>-1)return{value:new b.type.Term(Z.value,[bt.value]),len:++bt.len,type:p};if($t.indexOf("xfx")>-1){var mr=z(w,S,y+1,an,J);return mr.type===p?{value:new b.type.Term(Z.value,[bt.value,mr.value]),len:mr.len,type:p}:(mr.derived=!0,mr)}else if($t.indexOf("xfy")>-1){var mr=z(w,S,y+1,Qr,J);return mr.type===p?{value:new b.type.Term(Z.value,[bt.value,mr.value]),len:mr.len,type:p}:(mr.derived=!0,mr)}else if(bt.type!==A)for(;;){y=bt.len;var Z=S[y];if(Z&&Z.name==="atom"&&w.__lookup_operator_classes(F,Z.value)){var $t=w.__lookup_operator_classes(F,Z.value);if($t.indexOf("yf")>-1)bt={value:new b.type.Term(Z.value,[bt.value]),len:++y,type:p};else if($t.indexOf("yfx")>-1){var mr=z(w,S,++y,an,J);if(mr.type===A)return mr.derived=!0,mr;y=mr.len,bt={value:new b.type.Term(Z.value,[bt.value,mr.value]),len:y,type:p}}else break}else break}}else X={type:A,value:b.error.syntax(S[bt.len-1],"operator expected")};return bt}return bt}function te(w,S,y,F){if(!S[y]||S[y].name==="atom"&&S[y].raw==="."&&!F&&(S[y].space||!S[y+1]||S[y+1].name!=="l_paren"))return{type:A,derived:!1,value:b.error.syntax(S[y-1],"unfounded token")};var J=S[y],X=[];if(S[y].name==="atom"&&S[y].raw!==","){if(y++,S[y-1].space)return{type:p,len:y,value:new b.type.Term(J.value,X)};if(S[y]&&S[y].name==="l_paren"){if(S[y+1]&&S[y+1].name==="r_paren")return{type:A,derived:!0,value:b.error.syntax(S[y+1],"argument expected")};var Z=z(w,S,++y,"999",!0);if(Z.type===A)return Z.derived?Z:{type:A,derived:!0,value:b.error.syntax(S[y]?S[y]:S[y-1],"argument expected",!S[y])};for(X.push(Z.value),y=Z.len;S[y]&&S[y].name==="atom"&&S[y].value===",";){if(Z=z(w,S,y+1,"999",!0),Z.type===A)return Z.derived?Z:{type:A,derived:!0,value:b.error.syntax(S[y+1]?S[y+1]:S[y],"argument expected",!S[y+1])};X.push(Z.value),y=Z.len}if(S[y]&&S[y].name==="r_paren")y++;else return{type:A,derived:!0,value:b.error.syntax(S[y]?S[y]:S[y-1],", or ) expected",!S[y])}}return{type:p,len:y,value:new b.type.Term(J.value,X)}}return{type:A,derived:!1,value:b.error.syntax(S[y],"term expected")}}function le(w,S,y){if(!S[y])return{type:A,derived:!1,value:b.error.syntax(S[y-1],"[ expected")};if(S[y]&&S[y].name==="l_brace"){var F=z(w,S,++y,"999",!0),J=[F.value],X=void 0;if(F.type===A)return S[y]&&S[y].name==="r_brace"?{type:p,len:y+1,value:new b.type.Term("[]",[])}:{type:A,derived:!0,value:b.error.syntax(S[y],"] expected")};for(y=F.len;S[y]&&S[y].name==="atom"&&S[y].value===",";){if(F=z(w,S,y+1,"999",!0),F.type===A)return F.derived?F:{type:A,derived:!0,value:b.error.syntax(S[y+1]?S[y+1]:S[y],"argument expected",!S[y+1])};J.push(F.value),y=F.len}var Z=!1;if(S[y]&&S[y].name==="bar"){if(Z=!0,F=z(w,S,y+1,"999",!0),F.type===A)return F.derived?F:{type:A,derived:!0,value:b.error.syntax(S[y+1]?S[y+1]:S[y],"argument expected",!S[y+1])};X=F.value,y=F.len}return S[y]&&S[y].name==="r_brace"?{type:p,len:y+1,value:g(J,X)}:{type:A,derived:!0,value:b.error.syntax(S[y]?S[y]:S[y-1],Z?"] expected":", or | or ] expected",!S[y])}}return{type:A,derived:!1,value:b.error.syntax(S[y],"list expected")}}function he(w,S,y){var F=S[y].line,J=z(w,S,y,w.__get_max_priority(),!1),X=null,Z;if(J.type!==A)if(y=J.len,S[y]&&S[y].name==="atom"&&S[y].raw===".")if(y++,b.type.is_term(J.value)){if(J.value.indicator===":-/2"?(X=new b.type.Rule(J.value.args[0],Fe(J.value.args[1])),Z={value:X,len:y,type:p}):J.value.indicator==="-->/2"?(X=ae(new b.type.Rule(J.value.args[0],J.value.args[1]),w),X.body=Fe(X.body),Z={value:X,len:y,type:b.type.is_rule(X)?p:A}):(X=new b.type.Rule(J.value,null),Z={value:X,len:y,type:p}),X){var ie=X.singleton_variables();ie.length>0&&w.throw_warning(b.warning.singleton(ie,X.head.indicator,F))}return Z}else return{type:A,value:b.error.syntax(S[y],"callable expected")};else return{type:A,value:b.error.syntax(S[y]?S[y]:S[y-1],". or operator expected")};return J}function Ae(w,S,y){y=y||{},y.from=y.from?y.from:"$tau-js",y.reconsult=y.reconsult!==void 0?y.reconsult:!0;var F=new U(w),J={},X;F.new_text(S);var Z=0,ie=F.get_tokens(Z);do{if(ie===null||!ie[Z])break;var Pe=he(w,ie,Z);if(Pe.type===A)return new H("throw",[Pe.value]);if(Pe.value.body===null&&Pe.value.head.indicator==="?-/1"){var Ne=new ze(w.session);Ne.add_goal(Pe.value.head.args[0]),Ne.answer(function(dt){b.type.is_error(dt)?w.throw_warning(dt.args[0]):(dt===!1||dt===null)&&w.throw_warning(b.warning.failed_goal(Pe.value.head.args[0],Pe.len))}),Z=Pe.len;var ot=!0}else if(Pe.value.body===null&&Pe.value.head.indicator===":-/1"){var ot=w.run_directive(Pe.value.head.args[0]);Z=Pe.len,Pe.value.head.args[0].indicator==="char_conversion/2"&&(ie=F.get_tokens(Z),Z=0)}else{X=Pe.value.head.indicator,y.reconsult!==!1&&J[X]!==!0&&!w.is_multifile_predicate(X)&&(w.session.rules[X]=a(w.session.rules[X]||[],function(jt){return jt.dynamic}),J[X]=!0);var ot=w.add_rule(Pe.value,y);Z=Pe.len}if(!ot)return ot}while(!0);return!0}function ye(w,S){var y=new U(w);y.new_text(S);var F=0;do{var J=y.get_tokens(F);if(J===null)break;var X=z(w,J,0,w.__get_max_priority(),!1);if(X.type!==A){var Z=X.len,ie=Z;if(J[Z]&&J[Z].name==="atom"&&J[Z].raw===".")w.add_goal(Fe(X.value));else{var Pe=J[Z];return new H("throw",[b.error.syntax(Pe||J[Z-1],". or operator expected",!Pe)])}F=X.len+1}else return new H("throw",[X.value])}while(!0);return!0}function ae(w,S){w=w.rename(S);var y=S.next_free_variable(),F=Ie(w.body,y,S);return F.error?F.value:(w.body=F.value,w.head.args=w.head.args.concat([y,F.variable]),w.head=new H(w.head.id,w.head.args),w)}function Ie(w,S,y){var F;if(b.type.is_term(w)&&w.indicator==="!/0")return{value:w,variable:S,error:!1};if(b.type.is_term(w)&&w.indicator===",/2"){var J=Ie(w.args[0],S,y);if(J.error)return J;var X=Ie(w.args[1],J.variable,y);return X.error?X:{value:new H(",",[J.value,X.value]),variable:X.variable,error:!1}}else{if(b.type.is_term(w)&&w.indicator==="{}/1")return{value:w.args[0],variable:S,error:!1};if(b.type.is_empty_list(w))return{value:new H("true",[]),variable:S,error:!1};if(b.type.is_list(w)){F=y.next_free_variable();for(var Z=w,ie;Z.indicator==="./2";)ie=Z,Z=Z.args[1];return b.type.is_variable(Z)?{value:b.error.instantiation("DCG"),variable:S,error:!0}:b.type.is_empty_list(Z)?(ie.args[1]=F,{value:new H("=",[S,w]),variable:F,error:!1}):{value:b.error.type("list",w,"DCG"),variable:S,error:!0}}else return b.type.is_callable(w)?(F=y.next_free_variable(),w.args=w.args.concat([S,F]),w=new H(w.id,w.args),{value:w,variable:F,error:!1}):{value:b.error.type("callable",w,"DCG"),variable:S,error:!0}}}function Fe(w){return b.type.is_variable(w)?new H("call",[w]):b.type.is_term(w)&&[",/2",";/2","->/2"].indexOf(w.indicator)!==-1?new H(w.id,[Fe(w.args[0]),Fe(w.args[1])]):w}function g(w,S){for(var y=S||new b.type.Term("[]",[]),F=w.length-1;F>=0;F--)y=new b.type.Term(".",[w[F],y]);return y}function Ee(w,S){for(var y=w.length-1;y>=0;y--)w[y]===S&&w.splice(y,1)}function De(w){for(var S={},y=[],F=0;F=0;S--)if(w.charAt(S)==="/")return new H("/",[new H(w.substring(0,S)),new xe(parseInt(w.substring(S+1)),!1)])}function we(w){this.id=w}function xe(w,S){this.is_float=S!==void 0?S:parseInt(w)!==w,this.value=this.is_float?w:parseInt(w)}var ht=0;function H(w,S,y){this.ref=y||++ht,this.id=w,this.args=S||[],this.indicator=w+"/"+this.args.length}var lt=0;function Te(w,S,y,F,J,X){this.id=lt++,this.stream=w,this.mode=S,this.alias=y,this.type=F!==void 0?F:"text",this.reposition=J!==void 0?J:!0,this.eof_action=X!==void 0?X:"eof_code",this.position=this.mode==="append"?"end_of_stream":0,this.output=this.mode==="write"||this.mode==="append",this.input=this.mode==="read"}function ke(w){w=w||{},this.links=w}function be(w,S,y){S=S||new ke,y=y||null,this.goal=w,this.substitution=S,this.parent=y}function _e(w,S,y){this.head=w,this.body=S,this.dynamic=y||!1}function Re(w){w=w===void 0||w<=0?1e3:w,this.rules={},this.src_predicates={},this.rename=0,this.modules=[],this.thread=new ze(this),this.total_threads=1,this.renamed_variables={},this.public_predicates={},this.multifile_predicates={},this.limit=w,this.streams={user_input:new Te(typeof hl<"u"&&hl.exports?nodejs_user_input:tau_user_input,"read","user_input","text",!1,"reset"),user_output:new Te(typeof hl<"u"&&hl.exports?nodejs_user_output:tau_user_output,"write","user_output","text",!1,"eof_code")},this.file_system=typeof hl<"u"&&hl.exports?nodejs_file_system:tau_file_system,this.standard_input=this.streams.user_input,this.standard_output=this.streams.user_output,this.current_input=this.streams.user_input,this.current_output=this.streams.user_output,this.format_success=function(S){return S.substitution},this.format_error=function(S){return S.goal},this.flag={bounded:b.flag.bounded.value,max_integer:b.flag.max_integer.value,min_integer:b.flag.min_integer.value,integer_rounding_function:b.flag.integer_rounding_function.value,char_conversion:b.flag.char_conversion.value,debug:b.flag.debug.value,max_arity:b.flag.max_arity.value,unknown:b.flag.unknown.value,double_quotes:b.flag.double_quotes.value,occurs_check:b.flag.occurs_check.value,dialect:b.flag.dialect.value,version_data:b.flag.version_data.value,nodejs:b.flag.nodejs.value},this.__loaded_modules=[],this.__char_conversion={},this.__operators={1200:{":-":["fx","xfx"],"-->":["xfx"],"?-":["fx"]},1100:{";":["xfy"]},1050:{"->":["xfy"]},1e3:{",":["xfy"]},900:{"\\+":["fy"]},700:{"=":["xfx"],"\\=":["xfx"],"==":["xfx"],"\\==":["xfx"],"@<":["xfx"],"@=<":["xfx"],"@>":["xfx"],"@>=":["xfx"],"=..":["xfx"],is:["xfx"],"=:=":["xfx"],"=\\=":["xfx"],"<":["xfx"],"=<":["xfx"],">":["xfx"],">=":["xfx"]},600:{":":["xfy"]},500:{"+":["yfx"],"-":["yfx"],"/\\":["yfx"],"\\/":["yfx"]},400:{"*":["yfx"],"/":["yfx"],"//":["yfx"],rem:["yfx"],mod:["yfx"],"<<":["yfx"],">>":["yfx"]},200:{"**":["xfx"],"^":["xfy"],"-":["fy"],"+":["fy"],"\\":["fy"]}}}function ze(w){this.epoch=Date.now(),this.session=w,this.session.total_threads++,this.total_steps=0,this.cpu_time=0,this.cpu_time_last=0,this.points=[],this.debugger=!1,this.debugger_states=[],this.level="top_level/0",this.__calls=[],this.current_limit=this.session.limit,this.warnings=[]}function He(w,S,y){this.id=w,this.rules=S,this.exports=y,b.module[w]=this}He.prototype.exports_predicate=function(w){return this.exports.indexOf(w)!==-1},we.prototype.unify=function(w,S){if(S&&e(w.variables(),this.id)!==-1&&!b.type.is_variable(w))return null;var y={};return y[this.id]=w,new ke(y)},xe.prototype.unify=function(w,S){return b.type.is_number(w)&&this.value===w.value&&this.is_float===w.is_float?new ke:null},H.prototype.unify=function(w,S){if(b.type.is_term(w)&&this.indicator===w.indicator){for(var y=new ke,F=0;F=0){var F=this.args[0].value,J=Math.floor(F/26),X=F%26;return"ABCDEFGHIJKLMNOPQRSTUVWXYZ"[X]+(J!==0?J:"")}switch(this.indicator){case"[]/0":case"{}/0":case"!/0":return this.id;case"{}/1":return"{"+this.args[0].toString(w)+"}";case"./2":for(var Z="["+this.args[0].toString(w),ie=this.args[1];ie.indicator==="./2";)Z+=", "+ie.args[0].toString(w),ie=ie.args[1];return ie.indicator!=="[]/0"&&(Z+="|"+ie.toString(w)),Z+="]",Z;case",/2":return"("+this.args[0].toString(w)+", "+this.args[1].toString(w)+")";default:var Pe=this.id,Ne=w.session?w.session.lookup_operator(this.id,this.args.length):null;if(w.session===void 0||w.ignore_ops||Ne===null)return w.quoted&&!/^(!|,|;|[a-z][0-9a-zA-Z_]*)$/.test(Pe)&&Pe!=="{}"&&Pe!=="[]"&&(Pe="'"+x(Pe)+"'"),Pe+(this.args.length?"("+o(this.args,function($t){return $t.toString(w)}).join(", ")+")":"");var ot=Ne.priority>S.priority||Ne.priority===S.priority&&(Ne.class==="xfy"&&this.indicator!==S.indicator||Ne.class==="yfx"&&this.indicator!==S.indicator||this.indicator===S.indicator&&Ne.class==="yfx"&&y==="right"||this.indicator===S.indicator&&Ne.class==="xfy"&&y==="left");Ne.indicator=this.indicator;var dt=ot?"(":"",jt=ot?")":"";return this.args.length===0?"("+this.id+")":["fy","fx"].indexOf(Ne.class)!==-1?dt+Pe+" "+this.args[0].toString(w,Ne)+jt:["yf","xf"].indexOf(Ne.class)!==-1?dt+this.args[0].toString(w,Ne)+" "+Pe+jt:dt+this.args[0].toString(w,Ne,"left")+" "+this.id+" "+this.args[1].toString(w,Ne,"right")+jt}},Te.prototype.toString=function(w){return"("+this.id+")"},ke.prototype.toString=function(w){var S="{";for(var y in this.links)!this.links.hasOwnProperty(y)||(S!=="{"&&(S+=", "),S+=y+"/"+this.links[y].toString(w));return S+="}",S},be.prototype.toString=function(w){return this.goal===null?"<"+this.substitution.toString(w)+">":"<"+this.goal.toString(w)+", "+this.substitution.toString(w)+">"},_e.prototype.toString=function(w){return this.body?this.head.toString(w)+" :- "+this.body.toString(w)+".":this.head.toString(w)+"."},Re.prototype.toString=function(w){for(var S="",y=0;y=0;J--)F=new H(".",[S[J],F]);return F}return new H(this.id,o(this.args,function(X){return X.apply(w)}),this.ref)},Te.prototype.apply=function(w){return this},_e.prototype.apply=function(w){return new _e(this.head.apply(w),this.body!==null?this.body.apply(w):null)},ke.prototype.apply=function(w){var S,y={};for(S in this.links)!this.links.hasOwnProperty(S)||(y[S]=this.links[S].apply(w));return new ke(y)},H.prototype.select=function(){for(var w=this;w.indicator===",/2";)w=w.args[0];return w},H.prototype.replace=function(w){return this.indicator===",/2"?this.args[0].indicator===",/2"?new H(",",[this.args[0].replace(w),this.args[1]]):w===null?this.args[1]:new H(",",[w,this.args[1]]):w},H.prototype.search=function(w){if(b.type.is_term(w)&&w.ref!==void 0&&this.ref===w.ref)return!0;for(var S=0;SS&&F0&&(S=this.head_point().substitution.domain());e(S,b.format_variable(this.session.rename))!==-1;)this.session.rename++;if(w.id==="_")return new we(b.format_variable(this.session.rename));this.session.renamed_variables[w.id]=b.format_variable(this.session.rename)}return new we(this.session.renamed_variables[w.id])},Re.prototype.next_free_variable=function(){return this.thread.next_free_variable()},ze.prototype.next_free_variable=function(){this.session.rename++;var w=[];for(this.points.length>0&&(w=this.head_point().substitution.domain());e(w,b.format_variable(this.session.rename))!==-1;)this.session.rename++;return new we(b.format_variable(this.session.rename))},Re.prototype.is_public_predicate=function(w){return!this.public_predicates.hasOwnProperty(w)||this.public_predicates[w]===!0},ze.prototype.is_public_predicate=function(w){return this.session.is_public_predicate(w)},Re.prototype.is_multifile_predicate=function(w){return this.multifile_predicates.hasOwnProperty(w)&&this.multifile_predicates[w]===!0},ze.prototype.is_multifile_predicate=function(w){return this.session.is_multifile_predicate(w)},Re.prototype.prepend=function(w){return this.thread.prepend(w)},ze.prototype.prepend=function(w){for(var S=w.length-1;S>=0;S--)this.points.push(w[S])},Re.prototype.success=function(w,S){return this.thread.success(w,S)},ze.prototype.success=function(w,y){var y=typeof y>"u"?w:y;this.prepend([new be(w.goal.replace(null),w.substitution,y)])},Re.prototype.throw_error=function(w){return this.thread.throw_error(w)},ze.prototype.throw_error=function(w){this.prepend([new be(new H("throw",[w]),new ke,null,null)])},Re.prototype.step_rule=function(w,S){return this.thread.step_rule(w,S)},ze.prototype.step_rule=function(w,S){var y=S.indicator;if(w==="user"&&(w=null),w===null&&this.session.rules.hasOwnProperty(y))return this.session.rules[y];for(var F=w===null?this.session.modules:e(this.session.modules,w)===-1?[]:[w],J=0;J1)&&this.again()},Re.prototype.answers=function(w,S,y){return this.thread.answers(w,S,y)},ze.prototype.answers=function(w,S,y){var F=S||1e3,J=this;if(S<=0){y&&y();return}this.answer(function(X){w(X),X!==!1?setTimeout(function(){J.answers(w,S-1,y)},1):y&&y()})},Re.prototype.again=function(w){return this.thread.again(w)},ze.prototype.again=function(w){for(var S,y=Date.now();this.__calls.length>0;){for(this.warnings=[],w!==!1&&(this.current_limit=this.session.limit);this.current_limit>0&&this.points.length>0&&this.head_point().goal!==null&&!b.type.is_error(this.head_point().goal);)if(this.current_limit--,this.step()===!0)return;var F=Date.now();this.cpu_time_last=F-y,this.cpu_time+=this.cpu_time_last;var J=this.__calls.shift();this.current_limit<=0?J(null):this.points.length===0?J(!1):b.type.is_error(this.head_point().goal)?(S=this.session.format_error(this.points.pop()),this.points=[],J(S)):(this.debugger&&this.debugger_states.push(this.head_point()),S=this.session.format_success(this.points.pop()),J(S))}},Re.prototype.unfold=function(w){if(w.body===null)return!1;var S=w.head,y=w.body,F=y.select(),J=new ze(this),X=[];J.add_goal(F),J.step();for(var Z=J.points.length-1;Z>=0;Z--){var ie=J.points[Z],Pe=S.apply(ie.substitution),Ne=y.replace(ie.goal);Ne!==null&&(Ne=Ne.apply(ie.substitution)),X.push(new _e(Pe,Ne))}var ot=this.rules[S.indicator],dt=e(ot,w);return X.length>0&&dt!==-1?(ot.splice.apply(ot,[dt,1].concat(X)),!0):!1},ze.prototype.unfold=function(w){return this.session.unfold(w)},we.prototype.interpret=function(w){return b.error.instantiation(w.level)},xe.prototype.interpret=function(w){return this},H.prototype.interpret=function(w){return b.type.is_unitary_list(this)?this.args[0].interpret(w):b.operate(w,this)},we.prototype.compare=function(w){return this.idw.id?1:0},xe.prototype.compare=function(w){if(this.value===w.value&&this.is_float===w.is_float)return 0;if(this.valuew.value)return 1},H.prototype.compare=function(w){if(this.args.lengthw.args.length||this.args.length===w.args.length&&this.id>w.id)return 1;for(var S=0;SF)return 1;if(w.constructor===xe){if(w.is_float&&S.is_float)return 0;if(w.is_float)return-1;if(S.is_float)return 1}return 0},is_substitution:function(w){return w instanceof ke},is_state:function(w){return w instanceof be},is_rule:function(w){return w instanceof _e},is_variable:function(w){return w instanceof we},is_stream:function(w){return w instanceof Te},is_anonymous_var:function(w){return w instanceof we&&w.id==="_"},is_callable:function(w){return w instanceof H},is_number:function(w){return w instanceof xe},is_integer:function(w){return w instanceof xe&&!w.is_float},is_float:function(w){return w instanceof xe&&w.is_float},is_term:function(w){return w instanceof H},is_atom:function(w){return w instanceof H&&w.args.length===0},is_ground:function(w){if(w instanceof we)return!1;if(w instanceof H){for(var S=0;S0},is_list:function(w){return w instanceof H&&(w.indicator==="[]/0"||w.indicator==="./2")},is_empty_list:function(w){return w instanceof H&&w.indicator==="[]/0"},is_non_empty_list:function(w){return w instanceof H&&w.indicator==="./2"},is_fully_list:function(w){for(;w instanceof H&&w.indicator==="./2";)w=w.args[1];return w instanceof we||w instanceof H&&w.indicator==="[]/0"},is_instantiated_list:function(w){for(;w instanceof H&&w.indicator==="./2";)w=w.args[1];return w instanceof H&&w.indicator==="[]/0"},is_unitary_list:function(w){return w instanceof H&&w.indicator==="./2"&&w.args[1]instanceof H&&w.args[1].indicator==="[]/0"},is_character:function(w){return w instanceof H&&(w.id.length===1||w.id.length>0&&w.id.length<=2&&n(w.id,0)>=65536)},is_character_code:function(w){return w instanceof xe&&!w.is_float&&w.value>=0&&w.value<=1114111},is_byte:function(w){return w instanceof xe&&!w.is_float&&w.value>=0&&w.value<=255},is_operator:function(w){return w instanceof H&&b.arithmetic.evaluation[w.indicator]},is_directive:function(w){return w instanceof H&&b.directive[w.indicator]!==void 0},is_builtin:function(w){return w instanceof H&&b.predicate[w.indicator]!==void 0},is_error:function(w){return w instanceof H&&w.indicator==="throw/1"},is_predicate_indicator:function(w){return w instanceof H&&w.indicator==="//2"&&w.args[0]instanceof H&&w.args[0].args.length===0&&w.args[1]instanceof xe&&w.args[1].is_float===!1},is_flag:function(w){return w instanceof H&&w.args.length===0&&b.flag[w.id]!==void 0},is_value_flag:function(w,S){if(!b.type.is_flag(w))return!1;for(var y in b.flag[w.id].allowed)if(!!b.flag[w.id].allowed.hasOwnProperty(y)&&b.flag[w.id].allowed[y].equals(S))return!0;return!1},is_io_mode:function(w){return b.type.is_atom(w)&&["read","write","append"].indexOf(w.id)!==-1},is_stream_option:function(w){return b.type.is_term(w)&&(w.indicator==="alias/1"&&b.type.is_atom(w.args[0])||w.indicator==="reposition/1"&&b.type.is_atom(w.args[0])&&(w.args[0].id==="true"||w.args[0].id==="false")||w.indicator==="type/1"&&b.type.is_atom(w.args[0])&&(w.args[0].id==="text"||w.args[0].id==="binary")||w.indicator==="eof_action/1"&&b.type.is_atom(w.args[0])&&(w.args[0].id==="error"||w.args[0].id==="eof_code"||w.args[0].id==="reset"))},is_stream_position:function(w){return b.type.is_integer(w)&&w.value>=0||b.type.is_atom(w)&&(w.id==="end_of_stream"||w.id==="past_end_of_stream")},is_stream_property:function(w){return b.type.is_term(w)&&(w.indicator==="input/0"||w.indicator==="output/0"||w.indicator==="alias/1"&&(b.type.is_variable(w.args[0])||b.type.is_atom(w.args[0]))||w.indicator==="file_name/1"&&(b.type.is_variable(w.args[0])||b.type.is_atom(w.args[0]))||w.indicator==="position/1"&&(b.type.is_variable(w.args[0])||b.type.is_stream_position(w.args[0]))||w.indicator==="reposition/1"&&(b.type.is_variable(w.args[0])||b.type.is_atom(w.args[0])&&(w.args[0].id==="true"||w.args[0].id==="false"))||w.indicator==="type/1"&&(b.type.is_variable(w.args[0])||b.type.is_atom(w.args[0])&&(w.args[0].id==="text"||w.args[0].id==="binary"))||w.indicator==="mode/1"&&(b.type.is_variable(w.args[0])||b.type.is_atom(w.args[0])&&(w.args[0].id==="read"||w.args[0].id==="write"||w.args[0].id==="append"))||w.indicator==="eof_action/1"&&(b.type.is_variable(w.args[0])||b.type.is_atom(w.args[0])&&(w.args[0].id==="error"||w.args[0].id==="eof_code"||w.args[0].id==="reset"))||w.indicator==="end_of_stream/1"&&(b.type.is_variable(w.args[0])||b.type.is_atom(w.args[0])&&(w.args[0].id==="at"||w.args[0].id==="past"||w.args[0].id==="not")))},is_streamable:function(w){return w.__proto__.stream!==void 0},is_read_option:function(w){return b.type.is_term(w)&&["variables/1","variable_names/1","singletons/1"].indexOf(w.indicator)!==-1},is_write_option:function(w){return b.type.is_term(w)&&(w.indicator==="quoted/1"&&b.type.is_atom(w.args[0])&&(w.args[0].id==="true"||w.args[0].id==="false")||w.indicator==="ignore_ops/1"&&b.type.is_atom(w.args[0])&&(w.args[0].id==="true"||w.args[0].id==="false")||w.indicator==="numbervars/1"&&b.type.is_atom(w.args[0])&&(w.args[0].id==="true"||w.args[0].id==="false"))},is_close_option:function(w){return b.type.is_term(w)&&w.indicator==="force/1"&&b.type.is_atom(w.args[0])&&(w.args[0].id==="true"||w.args[0].id==="false")},is_modifiable_flag:function(w){return b.type.is_flag(w)&&b.flag[w.id].changeable},is_module:function(w){return w instanceof H&&w.indicator==="library/1"&&w.args[0]instanceof H&&w.args[0].args.length===0&&b.module[w.args[0].id]!==void 0}},arithmetic:{evaluation:{"e/0":{type_args:null,type_result:!0,fn:function(w){return Math.E}},"pi/0":{type_args:null,type_result:!0,fn:function(w){return Math.PI}},"tau/0":{type_args:null,type_result:!0,fn:function(w){return 2*Math.PI}},"epsilon/0":{type_args:null,type_result:!0,fn:function(w){return Number.EPSILON}},"+/1":{type_args:null,type_result:null,fn:function(w,S){return w}},"-/1":{type_args:null,type_result:null,fn:function(w,S){return-w}},"\\/1":{type_args:!1,type_result:!1,fn:function(w,S){return~w}},"abs/1":{type_args:null,type_result:null,fn:function(w,S){return Math.abs(w)}},"sign/1":{type_args:null,type_result:null,fn:function(w,S){return Math.sign(w)}},"float_integer_part/1":{type_args:!0,type_result:!1,fn:function(w,S){return parseInt(w)}},"float_fractional_part/1":{type_args:!0,type_result:!0,fn:function(w,S){return w-parseInt(w)}},"float/1":{type_args:null,type_result:!0,fn:function(w,S){return parseFloat(w)}},"floor/1":{type_args:!0,type_result:!1,fn:function(w,S){return Math.floor(w)}},"truncate/1":{type_args:!0,type_result:!1,fn:function(w,S){return parseInt(w)}},"round/1":{type_args:!0,type_result:!1,fn:function(w,S){return Math.round(w)}},"ceiling/1":{type_args:!0,type_result:!1,fn:function(w,S){return Math.ceil(w)}},"sin/1":{type_args:null,type_result:!0,fn:function(w,S){return Math.sin(w)}},"cos/1":{type_args:null,type_result:!0,fn:function(w,S){return Math.cos(w)}},"tan/1":{type_args:null,type_result:!0,fn:function(w,S){return Math.tan(w)}},"asin/1":{type_args:null,type_result:!0,fn:function(w,S){return Math.asin(w)}},"acos/1":{type_args:null,type_result:!0,fn:function(w,S){return Math.acos(w)}},"atan/1":{type_args:null,type_result:!0,fn:function(w,S){return Math.atan(w)}},"atan2/2":{type_args:null,type_result:!0,fn:function(w,S,y){return Math.atan2(w,S)}},"exp/1":{type_args:null,type_result:!0,fn:function(w,S){return Math.exp(w)}},"sqrt/1":{type_args:null,type_result:!0,fn:function(w,S){return Math.sqrt(w)}},"log/1":{type_args:null,type_result:!0,fn:function(w,S){return w>0?Math.log(w):b.error.evaluation("undefined",S.__call_indicator)}},"+/2":{type_args:null,type_result:null,fn:function(w,S,y){return w+S}},"-/2":{type_args:null,type_result:null,fn:function(w,S,y){return w-S}},"*/2":{type_args:null,type_result:null,fn:function(w,S,y){return w*S}},"//2":{type_args:null,type_result:!0,fn:function(w,S,y){return S?w/S:b.error.evaluation("zero_division",y.__call_indicator)}},"///2":{type_args:!1,type_result:!1,fn:function(w,S,y){return S?parseInt(w/S):b.error.evaluation("zero_division",y.__call_indicator)}},"**/2":{type_args:null,type_result:!0,fn:function(w,S,y){return Math.pow(w,S)}},"^/2":{type_args:null,type_result:null,fn:function(w,S,y){return Math.pow(w,S)}},"<>/2":{type_args:!1,type_result:!1,fn:function(w,S,y){return w>>S}},"/\\/2":{type_args:!1,type_result:!1,fn:function(w,S,y){return w&S}},"\\//2":{type_args:!1,type_result:!1,fn:function(w,S,y){return w|S}},"xor/2":{type_args:!1,type_result:!1,fn:function(w,S,y){return w^S}},"rem/2":{type_args:!1,type_result:!1,fn:function(w,S,y){return S?w%S:b.error.evaluation("zero_division",y.__call_indicator)}},"mod/2":{type_args:!1,type_result:!1,fn:function(w,S,y){return S?w-parseInt(w/S)*S:b.error.evaluation("zero_division",y.__call_indicator)}},"max/2":{type_args:null,type_result:null,fn:function(w,S,y){return Math.max(w,S)}},"min/2":{type_args:null,type_result:null,fn:function(w,S,y){return Math.min(w,S)}}}},directive:{"dynamic/1":function(w,S){var y=S.args[0];if(b.type.is_variable(y))w.throw_error(b.error.instantiation(S.indicator));else if(!b.type.is_compound(y)||y.indicator!=="//2")w.throw_error(b.error.type("predicate_indicator",y,S.indicator));else if(b.type.is_variable(y.args[0])||b.type.is_variable(y.args[1]))w.throw_error(b.error.instantiation(S.indicator));else if(!b.type.is_atom(y.args[0]))w.throw_error(b.error.type("atom",y.args[0],S.indicator));else if(!b.type.is_integer(y.args[1]))w.throw_error(b.error.type("integer",y.args[1],S.indicator));else{var F=S.args[0].args[0].id+"/"+S.args[0].args[1].value;w.session.public_predicates[F]=!0,w.session.rules[F]||(w.session.rules[F]=[])}},"multifile/1":function(w,S){var y=S.args[0];b.type.is_variable(y)?w.throw_error(b.error.instantiation(S.indicator)):!b.type.is_compound(y)||y.indicator!=="//2"?w.throw_error(b.error.type("predicate_indicator",y,S.indicator)):b.type.is_variable(y.args[0])||b.type.is_variable(y.args[1])?w.throw_error(b.error.instantiation(S.indicator)):b.type.is_atom(y.args[0])?b.type.is_integer(y.args[1])?w.session.multifile_predicates[S.args[0].args[0].id+"/"+S.args[0].args[1].value]=!0:w.throw_error(b.error.type("integer",y.args[1],S.indicator)):w.throw_error(b.error.type("atom",y.args[0],S.indicator))},"set_prolog_flag/2":function(w,S){var y=S.args[0],F=S.args[1];b.type.is_variable(y)||b.type.is_variable(F)?w.throw_error(b.error.instantiation(S.indicator)):b.type.is_atom(y)?b.type.is_flag(y)?b.type.is_value_flag(y,F)?b.type.is_modifiable_flag(y)?w.session.flag[y.id]=F:w.throw_error(b.error.permission("modify","flag",y)):w.throw_error(b.error.domain("flag_value",new H("+",[y,F]),S.indicator)):w.throw_error(b.error.domain("prolog_flag",y,S.indicator)):w.throw_error(b.error.type("atom",y,S.indicator))},"use_module/1":function(w,S){var y=S.args[0];if(b.type.is_variable(y))w.throw_error(b.error.instantiation(S.indicator));else if(!b.type.is_term(y))w.throw_error(b.error.type("term",y,S.indicator));else if(b.type.is_module(y)){var F=y.args[0].id;e(w.session.modules,F)===-1&&w.session.modules.push(F)}},"char_conversion/2":function(w,S){var y=S.args[0],F=S.args[1];b.type.is_variable(y)||b.type.is_variable(F)?w.throw_error(b.error.instantiation(S.indicator)):b.type.is_character(y)?b.type.is_character(F)?y.id===F.id?delete w.session.__char_conversion[y.id]:w.session.__char_conversion[y.id]=F.id:w.throw_error(b.error.type("character",F,S.indicator)):w.throw_error(b.error.type("character",y,S.indicator))},"op/3":function(w,S){var y=S.args[0],F=S.args[1],J=S.args[2];if(b.type.is_variable(y)||b.type.is_variable(F)||b.type.is_variable(J))w.throw_error(b.error.instantiation(S.indicator));else if(!b.type.is_integer(y))w.throw_error(b.error.type("integer",y,S.indicator));else if(!b.type.is_atom(F))w.throw_error(b.error.type("atom",F,S.indicator));else if(!b.type.is_atom(J))w.throw_error(b.error.type("atom",J,S.indicator));else if(y.value<0||y.value>1200)w.throw_error(b.error.domain("operator_priority",y,S.indicator));else if(J.id===",")w.throw_error(b.error.permission("modify","operator",J,S.indicator));else if(J.id==="|"&&(y.value<1001||F.id.length!==3))w.throw_error(b.error.permission("modify","operator",J,S.indicator));else if(["fy","fx","yf","xf","xfx","yfx","xfy"].indexOf(F.id)===-1)w.throw_error(b.error.domain("operator_specifier",F,S.indicator));else{var X={prefix:null,infix:null,postfix:null};for(var Z in w.session.__operators)if(!!w.session.__operators.hasOwnProperty(Z)){var ie=w.session.__operators[Z][J.id];ie&&(e(ie,"fx")!==-1&&(X.prefix={priority:Z,type:"fx"}),e(ie,"fy")!==-1&&(X.prefix={priority:Z,type:"fy"}),e(ie,"xf")!==-1&&(X.postfix={priority:Z,type:"xf"}),e(ie,"yf")!==-1&&(X.postfix={priority:Z,type:"yf"}),e(ie,"xfx")!==-1&&(X.infix={priority:Z,type:"xfx"}),e(ie,"xfy")!==-1&&(X.infix={priority:Z,type:"xfy"}),e(ie,"yfx")!==-1&&(X.infix={priority:Z,type:"yfx"}))}var Pe;switch(F.id){case"fy":case"fx":Pe="prefix";break;case"yf":case"xf":Pe="postfix";break;default:Pe="infix";break}if(((X.prefix&&Pe==="prefix"||X.postfix&&Pe==="postfix"||X.infix&&Pe==="infix")&&X[Pe].type!==F.id||X.infix&&Pe==="postfix"||X.postfix&&Pe==="infix")&&y.value!==0)w.throw_error(b.error.permission("create","operator",J,S.indicator));else return X[Pe]&&(Ee(w.session.__operators[X[Pe].priority][J.id],F.id),w.session.__operators[X[Pe].priority][J.id].length===0&&delete w.session.__operators[X[Pe].priority][J.id]),y.value>0&&(w.session.__operators[y.value]||(w.session.__operators[y.value.toString()]={}),w.session.__operators[y.value][J.id]||(w.session.__operators[y.value][J.id]=[]),w.session.__operators[y.value][J.id].push(F.id)),!0}}},predicate:{"op/3":function(w,S,y){b.directive["op/3"](w,y)&&w.success(S)},"current_op/3":function(w,S,y){var F=y.args[0],J=y.args[1],X=y.args[2],Z=[];for(var ie in w.session.__operators)for(var Pe in w.session.__operators[ie])for(var Ne=0;Ne/2"){var F=w.points,J=w.session.format_success,X=w.session.format_error;w.session.format_success=function(Ne){return Ne.substitution},w.session.format_error=function(Ne){return Ne.goal},w.points=[new be(y.args[0].args[0],S.substitution,S)];var Z=function(Ne){w.points=F,w.session.format_success=J,w.session.format_error=X,Ne===!1?w.prepend([new be(S.goal.replace(y.args[1]),S.substitution,S)]):b.type.is_error(Ne)?w.throw_error(Ne.args[0]):Ne===null?(w.prepend([S]),w.__calls.shift()(null)):w.prepend([new be(S.goal.replace(y.args[0].args[1]).apply(Ne),S.substitution.apply(Ne),S)])};w.__calls.unshift(Z)}else{var ie=new be(S.goal.replace(y.args[0]),S.substitution,S),Pe=new be(S.goal.replace(y.args[1]),S.substitution,S);w.prepend([ie,Pe])}},"!/0":function(w,S,y){var F,J,X=[];for(F=S,J=null;F.parent!==null&&F.parent.goal.search(y);)if(J=F,F=F.parent,F.goal!==null){var Z=F.goal.select();if(Z&&Z.id==="call"&&Z.search(y)){F=J;break}}for(var ie=w.points.length-1;ie>=0;ie--){for(var Pe=w.points[ie],Ne=Pe.parent;Ne!==null&&Ne!==F.parent;)Ne=Ne.parent;Ne===null&&Ne!==F.parent&&X.push(Pe)}w.points=X.reverse(),w.success(S)},"\\+/1":function(w,S,y){var F=y.args[0];b.type.is_variable(F)?w.throw_error(b.error.instantiation(w.level)):b.type.is_callable(F)?w.prepend([new be(S.goal.replace(new H(",",[new H(",",[new H("call",[F]),new H("!",[])]),new H("fail",[])])),S.substitution,S),new be(S.goal.replace(null),S.substitution,S)]):w.throw_error(b.error.type("callable",F,w.level))},"->/2":function(w,S,y){var F=S.goal.replace(new H(",",[y.args[0],new H(",",[new H("!"),y.args[1]])]));w.prepend([new be(F,S.substitution,S)])},"fail/0":function(w,S,y){},"false/0":function(w,S,y){},"true/0":function(w,S,y){w.success(S)},"call/1":ne(1),"call/2":ne(2),"call/3":ne(3),"call/4":ne(4),"call/5":ne(5),"call/6":ne(6),"call/7":ne(7),"call/8":ne(8),"once/1":function(w,S,y){var F=y.args[0];w.prepend([new be(S.goal.replace(new H(",",[new H("call",[F]),new H("!",[])])),S.substitution,S)])},"forall/2":function(w,S,y){var F=y.args[0],J=y.args[1];w.prepend([new be(S.goal.replace(new H("\\+",[new H(",",[new H("call",[F]),new H("\\+",[new H("call",[J])])])])),S.substitution,S)])},"repeat/0":function(w,S,y){w.prepend([new be(S.goal.replace(null),S.substitution,S),S])},"throw/1":function(w,S,y){b.type.is_variable(y.args[0])?w.throw_error(b.error.instantiation(w.level)):w.throw_error(y.args[0])},"catch/3":function(w,S,y){var F=w.points;w.points=[],w.prepend([new be(y.args[0],S.substitution,S)]);var J=w.session.format_success,X=w.session.format_error;w.session.format_success=function(ie){return ie.substitution},w.session.format_error=function(ie){return ie.goal};var Z=function(ie){var Pe=w.points;if(w.points=F,w.session.format_success=J,w.session.format_error=X,b.type.is_error(ie)){for(var Ne=[],ot=w.points.length-1;ot>=0;ot--){for(var $t=w.points[ot],dt=$t.parent;dt!==null&&dt!==S.parent;)dt=dt.parent;dt===null&&dt!==S.parent&&Ne.push($t)}w.points=Ne;var jt=w.get_flag("occurs_check").indicator==="true/0",$t=new be,bt=b.unify(ie.args[0],y.args[1],jt);bt!==null?($t.substitution=S.substitution.apply(bt),$t.goal=S.goal.replace(y.args[2]).apply(bt),$t.parent=S,w.prepend([$t])):w.throw_error(ie.args[0])}else if(ie!==!1){for(var an=ie===null?[]:[new be(S.goal.apply(ie).replace(null),S.substitution.apply(ie),S)],Qr=[],ot=Pe.length-1;ot>=0;ot--){Qr.push(Pe[ot]);var mr=Pe[ot].goal!==null?Pe[ot].goal.select():null;if(b.type.is_term(mr)&&mr.indicator==="!/0")break}var br=o(Qr,function(Wr){return Wr.goal===null&&(Wr.goal=new H("true",[])),Wr=new be(S.goal.replace(new H("catch",[Wr.goal,y.args[1],y.args[2]])),S.substitution.apply(Wr.substitution),Wr.parent),Wr.exclude=y.args[0].variables(),Wr}).reverse();w.prepend(br),w.prepend(an),ie===null&&(this.current_limit=0,w.__calls.shift()(null))}};w.__calls.unshift(Z)},"=/2":function(w,S,y){var F=w.get_flag("occurs_check").indicator==="true/0",J=new be,X=b.unify(y.args[0],y.args[1],F);X!==null&&(J.goal=S.goal.apply(X).replace(null),J.substitution=S.substitution.apply(X),J.parent=S,w.prepend([J]))},"unify_with_occurs_check/2":function(w,S,y){var F=new be,J=b.unify(y.args[0],y.args[1],!0);J!==null&&(F.goal=S.goal.apply(J).replace(null),F.substitution=S.substitution.apply(J),F.parent=S,w.prepend([F]))},"\\=/2":function(w,S,y){var F=w.get_flag("occurs_check").indicator==="true/0",J=b.unify(y.args[0],y.args[1],F);J===null&&w.success(S)},"subsumes_term/2":function(w,S,y){var F=w.get_flag("occurs_check").indicator==="true/0",J=b.unify(y.args[1],y.args[0],F);J!==null&&y.args[1].apply(J).equals(y.args[1])&&w.success(S)},"findall/3":function(w,S,y){var F=y.args[0],J=y.args[1],X=y.args[2];if(b.type.is_variable(J))w.throw_error(b.error.instantiation(y.indicator));else if(!b.type.is_callable(J))w.throw_error(b.error.type("callable",J,y.indicator));else if(!b.type.is_variable(X)&&!b.type.is_list(X))w.throw_error(b.error.type("list",X,y.indicator));else{var Z=w.next_free_variable(),ie=new H(",",[J,new H("=",[Z,F])]),Pe=w.points,Ne=w.session.limit,ot=w.session.format_success;w.session.format_success=function($t){return $t.substitution},w.add_goal(ie,!0,S);var dt=[],jt=function($t){if($t!==!1&&$t!==null&&!b.type.is_error($t))w.__calls.unshift(jt),dt.push($t.links[Z.id]),w.session.limit=w.current_limit;else if(w.points=Pe,w.session.limit=Ne,w.session.format_success=ot,b.type.is_error($t))w.throw_error($t.args[0]);else if(w.current_limit>0){for(var bt=new H("[]"),an=dt.length-1;an>=0;an--)bt=new H(".",[dt[an],bt]);w.prepend([new be(S.goal.replace(new H("=",[X,bt])),S.substitution,S)])}};w.__calls.unshift(jt)}},"bagof/3":function(w,S,y){var F,J=y.args[0],X=y.args[1],Z=y.args[2];if(b.type.is_variable(X))w.throw_error(b.error.instantiation(y.indicator));else if(!b.type.is_callable(X))w.throw_error(b.error.type("callable",X,y.indicator));else if(!b.type.is_variable(Z)&&!b.type.is_list(Z))w.throw_error(b.error.type("list",Z,y.indicator));else{var ie=w.next_free_variable(),Pe;X.indicator==="^/2"?(Pe=X.args[0].variables(),X=X.args[1]):Pe=[],Pe=Pe.concat(J.variables());for(var Ne=X.variables().filter(function(br){return e(Pe,br)===-1}),ot=new H("[]"),dt=Ne.length-1;dt>=0;dt--)ot=new H(".",[new we(Ne[dt]),ot]);var jt=new H(",",[X,new H("=",[ie,new H(",",[ot,J])])]),$t=w.points,bt=w.session.limit,an=w.session.format_success;w.session.format_success=function(br){return br.substitution},w.add_goal(jt,!0,S);var Qr=[],mr=function(br){if(br!==!1&&br!==null&&!b.type.is_error(br)){w.__calls.unshift(mr);var Wr=!1,Kn=br.links[ie.id].args[0],Ns=br.links[ie.id].args[1];for(var Ti in Qr)if(!!Qr.hasOwnProperty(Ti)){var ps=Qr[Ti];if(ps.variables.equals(Kn)){ps.answers.push(Ns),Wr=!0;break}}Wr||Qr.push({variables:Kn,answers:[Ns]}),w.session.limit=w.current_limit}else if(w.points=$t,w.session.limit=bt,w.session.format_success=an,b.type.is_error(br))w.throw_error(br.args[0]);else if(w.current_limit>0){for(var io=[],Si=0;Si=0;so--)Ls=new H(".",[br[so],Ls]);io.push(new be(S.goal.replace(new H(",",[new H("=",[ot,Qr[Si].variables]),new H("=",[Z,Ls])])),S.substitution,S))}w.prepend(io)}};w.__calls.unshift(mr)}},"setof/3":function(w,S,y){var F,J=y.args[0],X=y.args[1],Z=y.args[2];if(b.type.is_variable(X))w.throw_error(b.error.instantiation(y.indicator));else if(!b.type.is_callable(X))w.throw_error(b.error.type("callable",X,y.indicator));else if(!b.type.is_variable(Z)&&!b.type.is_list(Z))w.throw_error(b.error.type("list",Z,y.indicator));else{var ie=w.next_free_variable(),Pe;X.indicator==="^/2"?(Pe=X.args[0].variables(),X=X.args[1]):Pe=[],Pe=Pe.concat(J.variables());for(var Ne=X.variables().filter(function(br){return e(Pe,br)===-1}),ot=new H("[]"),dt=Ne.length-1;dt>=0;dt--)ot=new H(".",[new we(Ne[dt]),ot]);var jt=new H(",",[X,new H("=",[ie,new H(",",[ot,J])])]),$t=w.points,bt=w.session.limit,an=w.session.format_success;w.session.format_success=function(br){return br.substitution},w.add_goal(jt,!0,S);var Qr=[],mr=function(br){if(br!==!1&&br!==null&&!b.type.is_error(br)){w.__calls.unshift(mr);var Wr=!1,Kn=br.links[ie.id].args[0],Ns=br.links[ie.id].args[1];for(var Ti in Qr)if(!!Qr.hasOwnProperty(Ti)){var ps=Qr[Ti];if(ps.variables.equals(Kn)){ps.answers.push(Ns),Wr=!0;break}}Wr||Qr.push({variables:Kn,answers:[Ns]}),w.session.limit=w.current_limit}else if(w.points=$t,w.session.limit=bt,w.session.format_success=an,b.type.is_error(br))w.throw_error(br.args[0]);else if(w.current_limit>0){for(var io=[],Si=0;Si=0;so--)Ls=new H(".",[br[so],Ls]);io.push(new be(S.goal.replace(new H(",",[new H("=",[ot,Qr[Si].variables]),new H("=",[Z,Ls])])),S.substitution,S))}w.prepend(io)}};w.__calls.unshift(mr)}},"functor/3":function(w,S,y){var F,J=y.args[0],X=y.args[1],Z=y.args[2];if(b.type.is_variable(J)&&(b.type.is_variable(X)||b.type.is_variable(Z)))w.throw_error(b.error.instantiation("functor/3"));else if(!b.type.is_variable(Z)&&!b.type.is_integer(Z))w.throw_error(b.error.type("integer",y.args[2],"functor/3"));else if(!b.type.is_variable(X)&&!b.type.is_atomic(X))w.throw_error(b.error.type("atomic",y.args[1],"functor/3"));else if(b.type.is_integer(X)&&b.type.is_integer(Z)&&Z.value!==0)w.throw_error(b.error.type("atom",y.args[1],"functor/3"));else if(b.type.is_variable(J)){if(y.args[2].value>=0){for(var ie=[],Pe=0;Pe0&&F<=y.args[1].args.length){var J=new H("=",[y.args[1].args[F-1],y.args[2]]);w.prepend([new be(S.goal.replace(J),S.substitution,S)])}}},"=../2":function(w,S,y){var F;if(b.type.is_variable(y.args[0])&&(b.type.is_variable(y.args[1])||b.type.is_non_empty_list(y.args[1])&&b.type.is_variable(y.args[1].args[0])))w.throw_error(b.error.instantiation(y.indicator));else if(!b.type.is_fully_list(y.args[1]))w.throw_error(b.error.type("list",y.args[1],y.indicator));else if(b.type.is_variable(y.args[0])){if(!b.type.is_variable(y.args[1])){var X=[];for(F=y.args[1].args[1];F.indicator==="./2";)X.push(F.args[0]),F=F.args[1];b.type.is_variable(y.args[0])&&b.type.is_variable(F)?w.throw_error(b.error.instantiation(y.indicator)):X.length===0&&b.type.is_compound(y.args[1].args[0])?w.throw_error(b.error.type("atomic",y.args[1].args[0],y.indicator)):X.length>0&&(b.type.is_compound(y.args[1].args[0])||b.type.is_number(y.args[1].args[0]))?w.throw_error(b.error.type("atom",y.args[1].args[0],y.indicator)):X.length===0?w.prepend([new be(S.goal.replace(new H("=",[y.args[1].args[0],y.args[0]],S)),S.substitution,S)]):w.prepend([new be(S.goal.replace(new H("=",[new H(y.args[1].args[0].id,X),y.args[0]])),S.substitution,S)])}}else{if(b.type.is_atomic(y.args[0]))F=new H(".",[y.args[0],new H("[]")]);else{F=new H("[]");for(var J=y.args[0].args.length-1;J>=0;J--)F=new H(".",[y.args[0].args[J],F]);F=new H(".",[new H(y.args[0].id),F])}w.prepend([new be(S.goal.replace(new H("=",[F,y.args[1]])),S.substitution,S)])}},"copy_term/2":function(w,S,y){var F=y.args[0].rename(w);w.prepend([new be(S.goal.replace(new H("=",[F,y.args[1]])),S.substitution,S.parent)])},"term_variables/2":function(w,S,y){var F=y.args[0],J=y.args[1];if(!b.type.is_fully_list(J))w.throw_error(b.error.type("list",J,y.indicator));else{var X=g(o(De(F.variables()),function(Z){return new we(Z)}));w.prepend([new be(S.goal.replace(new H("=",[J,X])),S.substitution,S)])}},"clause/2":function(w,S,y){if(b.type.is_variable(y.args[0]))w.throw_error(b.error.instantiation(y.indicator));else if(!b.type.is_callable(y.args[0]))w.throw_error(b.error.type("callable",y.args[0],y.indicator));else if(!b.type.is_variable(y.args[1])&&!b.type.is_callable(y.args[1]))w.throw_error(b.error.type("callable",y.args[1],y.indicator));else if(w.session.rules[y.args[0].indicator]!==void 0)if(w.is_public_predicate(y.args[0].indicator)){var F=[];for(var J in w.session.rules[y.args[0].indicator])if(!!w.session.rules[y.args[0].indicator].hasOwnProperty(J)){var X=w.session.rules[y.args[0].indicator][J];w.session.renamed_variables={},X=X.rename(w),X.body===null&&(X.body=new H("true"));var Z=new H(",",[new H("=",[X.head,y.args[0]]),new H("=",[X.body,y.args[1]])]);F.push(new be(S.goal.replace(Z),S.substitution,S))}w.prepend(F)}else w.throw_error(b.error.permission("access","private_procedure",y.args[0].indicator,y.indicator))},"current_predicate/1":function(w,S,y){var F=y.args[0];if(!b.type.is_variable(F)&&(!b.type.is_compound(F)||F.indicator!=="//2"))w.throw_error(b.error.type("predicate_indicator",F,y.indicator));else if(!b.type.is_variable(F)&&!b.type.is_variable(F.args[0])&&!b.type.is_atom(F.args[0]))w.throw_error(b.error.type("atom",F.args[0],y.indicator));else if(!b.type.is_variable(F)&&!b.type.is_variable(F.args[1])&&!b.type.is_integer(F.args[1]))w.throw_error(b.error.type("integer",F.args[1],y.indicator));else{var J=[];for(var X in w.session.rules)if(!!w.session.rules.hasOwnProperty(X)){var Z=X.lastIndexOf("/"),ie=X.substr(0,Z),Pe=parseInt(X.substr(Z+1,X.length-(Z+1))),Ne=new H("/",[new H(ie),new xe(Pe,!1)]),ot=new H("=",[Ne,F]);J.push(new be(S.goal.replace(ot),S.substitution,S))}w.prepend(J)}},"asserta/1":function(w,S,y){if(b.type.is_variable(y.args[0]))w.throw_error(b.error.instantiation(y.indicator));else if(!b.type.is_callable(y.args[0]))w.throw_error(b.error.type("callable",y.args[0],y.indicator));else{var F,J;y.args[0].indicator===":-/2"?(F=y.args[0].args[0],J=Fe(y.args[0].args[1])):(F=y.args[0],J=null),b.type.is_callable(F)?J!==null&&!b.type.is_callable(J)?w.throw_error(b.error.type("callable",J,y.indicator)):w.is_public_predicate(F.indicator)?(w.session.rules[F.indicator]===void 0&&(w.session.rules[F.indicator]=[]),w.session.public_predicates[F.indicator]=!0,w.session.rules[F.indicator]=[new _e(F,J,!0)].concat(w.session.rules[F.indicator]),w.success(S)):w.throw_error(b.error.permission("modify","static_procedure",F.indicator,y.indicator)):w.throw_error(b.error.type("callable",F,y.indicator))}},"assertz/1":function(w,S,y){if(b.type.is_variable(y.args[0]))w.throw_error(b.error.instantiation(y.indicator));else if(!b.type.is_callable(y.args[0]))w.throw_error(b.error.type("callable",y.args[0],y.indicator));else{var F,J;y.args[0].indicator===":-/2"?(F=y.args[0].args[0],J=Fe(y.args[0].args[1])):(F=y.args[0],J=null),b.type.is_callable(F)?J!==null&&!b.type.is_callable(J)?w.throw_error(b.error.type("callable",J,y.indicator)):w.is_public_predicate(F.indicator)?(w.session.rules[F.indicator]===void 0&&(w.session.rules[F.indicator]=[]),w.session.public_predicates[F.indicator]=!0,w.session.rules[F.indicator].push(new _e(F,J,!0)),w.success(S)):w.throw_error(b.error.permission("modify","static_procedure",F.indicator,y.indicator)):w.throw_error(b.error.type("callable",F,y.indicator))}},"retract/1":function(w,S,y){if(b.type.is_variable(y.args[0]))w.throw_error(b.error.instantiation(y.indicator));else if(!b.type.is_callable(y.args[0]))w.throw_error(b.error.type("callable",y.args[0],y.indicator));else{var F,J;if(y.args[0].indicator===":-/2"?(F=y.args[0].args[0],J=y.args[0].args[1]):(F=y.args[0],J=new H("true")),typeof S.retract>"u")if(w.is_public_predicate(F.indicator)){if(w.session.rules[F.indicator]!==void 0){for(var X=[],Z=0;Zw.get_flag("max_arity").value)w.throw_error(b.error.representation("max_arity",y.indicator));else{var F=y.args[0].args[0].id+"/"+y.args[0].args[1].value;w.is_public_predicate(F)?(delete w.session.rules[F],w.success(S)):w.throw_error(b.error.permission("modify","static_procedure",F,y.indicator))}},"atom_length/2":function(w,S,y){if(b.type.is_variable(y.args[0]))w.throw_error(b.error.instantiation(y.indicator));else if(!b.type.is_atom(y.args[0]))w.throw_error(b.error.type("atom",y.args[0],y.indicator));else if(!b.type.is_variable(y.args[1])&&!b.type.is_integer(y.args[1]))w.throw_error(b.error.type("integer",y.args[1],y.indicator));else if(b.type.is_integer(y.args[1])&&y.args[1].value<0)w.throw_error(b.error.domain("not_less_than_zero",y.args[1],y.indicator));else{var F=new xe(y.args[0].id.length,!1);w.prepend([new be(S.goal.replace(new H("=",[F,y.args[1]])),S.substitution,S)])}},"atom_concat/3":function(w,S,y){var F,J,X=y.args[0],Z=y.args[1],ie=y.args[2];if(b.type.is_variable(ie)&&(b.type.is_variable(X)||b.type.is_variable(Z)))w.throw_error(b.error.instantiation(y.indicator));else if(!b.type.is_variable(X)&&!b.type.is_atom(X))w.throw_error(b.error.type("atom",X,y.indicator));else if(!b.type.is_variable(Z)&&!b.type.is_atom(Z))w.throw_error(b.error.type("atom",Z,y.indicator));else if(!b.type.is_variable(ie)&&!b.type.is_atom(ie))w.throw_error(b.error.type("atom",ie,y.indicator));else{var Pe=b.type.is_variable(X),Ne=b.type.is_variable(Z);if(!Pe&&!Ne)J=new H("=",[ie,new H(X.id+Z.id)]),w.prepend([new be(S.goal.replace(J),S.substitution,S)]);else if(Pe&&!Ne)F=ie.id.substr(0,ie.id.length-Z.id.length),F+Z.id===ie.id&&(J=new H("=",[X,new H(F)]),w.prepend([new be(S.goal.replace(J),S.substitution,S)]));else if(Ne&&!Pe)F=ie.id.substr(X.id.length),X.id+F===ie.id&&(J=new H("=",[Z,new H(F)]),w.prepend([new be(S.goal.replace(J),S.substitution,S)]));else{for(var ot=[],dt=0;dt<=ie.id.length;dt++){var jt=new H(ie.id.substr(0,dt)),$t=new H(ie.id.substr(dt));J=new H(",",[new H("=",[jt,X]),new H("=",[$t,Z])]),ot.push(new be(S.goal.replace(J),S.substitution,S))}w.prepend(ot)}}},"sub_atom/5":function(w,S,y){var F,J=y.args[0],X=y.args[1],Z=y.args[2],ie=y.args[3],Pe=y.args[4];if(b.type.is_variable(J))w.throw_error(b.error.instantiation(y.indicator));else if(!b.type.is_variable(X)&&!b.type.is_integer(X))w.throw_error(b.error.type("integer",X,y.indicator));else if(!b.type.is_variable(Z)&&!b.type.is_integer(Z))w.throw_error(b.error.type("integer",Z,y.indicator));else if(!b.type.is_variable(ie)&&!b.type.is_integer(ie))w.throw_error(b.error.type("integer",ie,y.indicator));else if(b.type.is_integer(X)&&X.value<0)w.throw_error(b.error.domain("not_less_than_zero",X,y.indicator));else if(b.type.is_integer(Z)&&Z.value<0)w.throw_error(b.error.domain("not_less_than_zero",Z,y.indicator));else if(b.type.is_integer(ie)&&ie.value<0)w.throw_error(b.error.domain("not_less_than_zero",ie,y.indicator));else{var Ne=[],ot=[],dt=[];if(b.type.is_variable(X))for(F=0;F<=J.id.length;F++)Ne.push(F);else Ne.push(X.value);if(b.type.is_variable(Z))for(F=0;F<=J.id.length;F++)ot.push(F);else ot.push(Z.value);if(b.type.is_variable(ie))for(F=0;F<=J.id.length;F++)dt.push(F);else dt.push(ie.value);var jt=[];for(var $t in Ne)if(!!Ne.hasOwnProperty($t)){F=Ne[$t];for(var bt in ot)if(!!ot.hasOwnProperty(bt)){var an=ot[bt],Qr=J.id.length-F-an;if(e(dt,Qr)!==-1&&F+an+Qr===J.id.length){var mr=J.id.substr(F,an);if(J.id===J.id.substr(0,F)+mr+J.id.substr(F+an,Qr)){var br=new H("=",[new H(mr),Pe]),Wr=new H("=",[X,new xe(F)]),Kn=new H("=",[Z,new xe(an)]),Ns=new H("=",[ie,new xe(Qr)]),Ti=new H(",",[new H(",",[new H(",",[Wr,Kn]),Ns]),br]);jt.push(new be(S.goal.replace(Ti),S.substitution,S))}}}}w.prepend(jt)}},"atom_chars/2":function(w,S,y){var F=y.args[0],J=y.args[1];if(b.type.is_variable(F)&&b.type.is_variable(J))w.throw_error(b.error.instantiation(y.indicator));else if(!b.type.is_variable(F)&&!b.type.is_atom(F))w.throw_error(b.error.type("atom",F,y.indicator));else if(b.type.is_variable(F)){for(var ie=J,Pe=b.type.is_variable(F),Ne="";ie.indicator==="./2";){if(b.type.is_character(ie.args[0]))Ne+=ie.args[0].id;else if(b.type.is_variable(ie.args[0])&&Pe){w.throw_error(b.error.instantiation(y.indicator));return}else if(!b.type.is_variable(ie.args[0])){w.throw_error(b.error.type("character",ie.args[0],y.indicator));return}ie=ie.args[1]}b.type.is_variable(ie)&&Pe?w.throw_error(b.error.instantiation(y.indicator)):!b.type.is_empty_list(ie)&&!b.type.is_variable(ie)?w.throw_error(b.error.type("list",J,y.indicator)):w.prepend([new be(S.goal.replace(new H("=",[new H(Ne),F])),S.substitution,S)])}else{for(var X=new H("[]"),Z=F.id.length-1;Z>=0;Z--)X=new H(".",[new H(F.id.charAt(Z)),X]);w.prepend([new be(S.goal.replace(new H("=",[J,X])),S.substitution,S)])}},"atom_codes/2":function(w,S,y){var F=y.args[0],J=y.args[1];if(b.type.is_variable(F)&&b.type.is_variable(J))w.throw_error(b.error.instantiation(y.indicator));else if(!b.type.is_variable(F)&&!b.type.is_atom(F))w.throw_error(b.error.type("atom",F,y.indicator));else if(b.type.is_variable(F)){for(var ie=J,Pe=b.type.is_variable(F),Ne="";ie.indicator==="./2";){if(b.type.is_character_code(ie.args[0]))Ne+=u(ie.args[0].value);else if(b.type.is_variable(ie.args[0])&&Pe){w.throw_error(b.error.instantiation(y.indicator));return}else if(!b.type.is_variable(ie.args[0])){w.throw_error(b.error.representation("character_code",y.indicator));return}ie=ie.args[1]}b.type.is_variable(ie)&&Pe?w.throw_error(b.error.instantiation(y.indicator)):!b.type.is_empty_list(ie)&&!b.type.is_variable(ie)?w.throw_error(b.error.type("list",J,y.indicator)):w.prepend([new be(S.goal.replace(new H("=",[new H(Ne),F])),S.substitution,S)])}else{for(var X=new H("[]"),Z=F.id.length-1;Z>=0;Z--)X=new H(".",[new xe(n(F.id,Z),!1),X]);w.prepend([new be(S.goal.replace(new H("=",[J,X])),S.substitution,S)])}},"char_code/2":function(w,S,y){var F=y.args[0],J=y.args[1];if(b.type.is_variable(F)&&b.type.is_variable(J))w.throw_error(b.error.instantiation(y.indicator));else if(!b.type.is_variable(F)&&!b.type.is_character(F))w.throw_error(b.error.type("character",F,y.indicator));else if(!b.type.is_variable(J)&&!b.type.is_integer(J))w.throw_error(b.error.type("integer",J,y.indicator));else if(!b.type.is_variable(J)&&!b.type.is_character_code(J))w.throw_error(b.error.representation("character_code",y.indicator));else if(b.type.is_variable(J)){var X=new xe(n(F.id,0),!1);w.prepend([new be(S.goal.replace(new H("=",[X,J])),S.substitution,S)])}else{var Z=new H(u(J.value));w.prepend([new be(S.goal.replace(new H("=",[Z,F])),S.substitution,S)])}},"number_chars/2":function(w,S,y){var F,J=y.args[0],X=y.args[1];if(b.type.is_variable(J)&&b.type.is_variable(X))w.throw_error(b.error.instantiation(y.indicator));else if(!b.type.is_variable(J)&&!b.type.is_number(J))w.throw_error(b.error.type("number",J,y.indicator));else if(!b.type.is_variable(X)&&!b.type.is_list(X))w.throw_error(b.error.type("list",X,y.indicator));else{var Z=b.type.is_variable(J);if(!b.type.is_variable(X)){var ie=X,Pe=!0;for(F="";ie.indicator==="./2";){if(b.type.is_character(ie.args[0]))F+=ie.args[0].id;else if(b.type.is_variable(ie.args[0]))Pe=!1;else if(!b.type.is_variable(ie.args[0])){w.throw_error(b.error.type("character",ie.args[0],y.indicator));return}ie=ie.args[1]}if(Pe=Pe&&b.type.is_empty_list(ie),!b.type.is_empty_list(ie)&&!b.type.is_variable(ie)){w.throw_error(b.error.type("list",X,y.indicator));return}if(!Pe&&Z){w.throw_error(b.error.instantiation(y.indicator));return}else if(Pe)if(b.type.is_variable(ie)&&Z){w.throw_error(b.error.instantiation(y.indicator));return}else{var Ne=w.parse(F),ot=Ne.value;!b.type.is_number(ot)||Ne.tokens[Ne.tokens.length-1].space?w.throw_error(b.error.syntax_by_predicate("parseable_number",y.indicator)):w.prepend([new be(S.goal.replace(new H("=",[J,ot])),S.substitution,S)]);return}}if(!Z){F=J.toString();for(var dt=new H("[]"),jt=F.length-1;jt>=0;jt--)dt=new H(".",[new H(F.charAt(jt)),dt]);w.prepend([new be(S.goal.replace(new H("=",[X,dt])),S.substitution,S)])}}},"number_codes/2":function(w,S,y){var F,J=y.args[0],X=y.args[1];if(b.type.is_variable(J)&&b.type.is_variable(X))w.throw_error(b.error.instantiation(y.indicator));else if(!b.type.is_variable(J)&&!b.type.is_number(J))w.throw_error(b.error.type("number",J,y.indicator));else if(!b.type.is_variable(X)&&!b.type.is_list(X))w.throw_error(b.error.type("list",X,y.indicator));else{var Z=b.type.is_variable(J);if(!b.type.is_variable(X)){var ie=X,Pe=!0;for(F="";ie.indicator==="./2";){if(b.type.is_character_code(ie.args[0]))F+=u(ie.args[0].value);else if(b.type.is_variable(ie.args[0]))Pe=!1;else if(!b.type.is_variable(ie.args[0])){w.throw_error(b.error.type("character_code",ie.args[0],y.indicator));return}ie=ie.args[1]}if(Pe=Pe&&b.type.is_empty_list(ie),!b.type.is_empty_list(ie)&&!b.type.is_variable(ie)){w.throw_error(b.error.type("list",X,y.indicator));return}if(!Pe&&Z){w.throw_error(b.error.instantiation(y.indicator));return}else if(Pe)if(b.type.is_variable(ie)&&Z){w.throw_error(b.error.instantiation(y.indicator));return}else{var Ne=w.parse(F),ot=Ne.value;!b.type.is_number(ot)||Ne.tokens[Ne.tokens.length-1].space?w.throw_error(b.error.syntax_by_predicate("parseable_number",y.indicator)):w.prepend([new be(S.goal.replace(new H("=",[J,ot])),S.substitution,S)]);return}}if(!Z){F=J.toString();for(var dt=new H("[]"),jt=F.length-1;jt>=0;jt--)dt=new H(".",[new xe(n(F,jt),!1),dt]);w.prepend([new be(S.goal.replace(new H("=",[X,dt])),S.substitution,S)])}}},"upcase_atom/2":function(w,S,y){var F=y.args[0],J=y.args[1];b.type.is_variable(F)?w.throw_error(b.error.instantiation(y.indicator)):b.type.is_atom(F)?!b.type.is_variable(J)&&!b.type.is_atom(J)?w.throw_error(b.error.type("atom",J,y.indicator)):w.prepend([new be(S.goal.replace(new H("=",[J,new H(F.id.toUpperCase(),[])])),S.substitution,S)]):w.throw_error(b.error.type("atom",F,y.indicator))},"downcase_atom/2":function(w,S,y){var F=y.args[0],J=y.args[1];b.type.is_variable(F)?w.throw_error(b.error.instantiation(y.indicator)):b.type.is_atom(F)?!b.type.is_variable(J)&&!b.type.is_atom(J)?w.throw_error(b.error.type("atom",J,y.indicator)):w.prepend([new be(S.goal.replace(new H("=",[J,new H(F.id.toLowerCase(),[])])),S.substitution,S)]):w.throw_error(b.error.type("atom",F,y.indicator))},"atomic_list_concat/2":function(w,S,y){var F=y.args[0],J=y.args[1];w.prepend([new be(S.goal.replace(new H("atomic_list_concat",[F,new H("",[]),J])),S.substitution,S)])},"atomic_list_concat/3":function(w,S,y){var F=y.args[0],J=y.args[1],X=y.args[2];if(b.type.is_variable(J)||b.type.is_variable(F)&&b.type.is_variable(X))w.throw_error(b.error.instantiation(y.indicator));else if(!b.type.is_variable(F)&&!b.type.is_list(F))w.throw_error(b.error.type("list",F,y.indicator));else if(!b.type.is_variable(X)&&!b.type.is_atom(X))w.throw_error(b.error.type("atom",X,y.indicator));else if(b.type.is_variable(X)){for(var ie="",Pe=F;b.type.is_term(Pe)&&Pe.indicator==="./2";){if(!b.type.is_atom(Pe.args[0])&&!b.type.is_number(Pe.args[0])){w.throw_error(b.error.type("atomic",Pe.args[0],y.indicator));return}ie!==""&&(ie+=J.id),b.type.is_atom(Pe.args[0])?ie+=Pe.args[0].id:ie+=""+Pe.args[0].value,Pe=Pe.args[1]}ie=new H(ie,[]),b.type.is_variable(Pe)?w.throw_error(b.error.instantiation(y.indicator)):!b.type.is_term(Pe)||Pe.indicator!=="[]/0"?w.throw_error(b.error.type("list",F,y.indicator)):w.prepend([new be(S.goal.replace(new H("=",[ie,X])),S.substitution,S)])}else{var Z=g(o(X.id.split(J.id),function(Ne){return new H(Ne,[])}));w.prepend([new be(S.goal.replace(new H("=",[Z,F])),S.substitution,S)])}},"@=/2":function(w,S,y){b.compare(y.args[0],y.args[1])>0&&w.success(S)},"@>=/2":function(w,S,y){b.compare(y.args[0],y.args[1])>=0&&w.success(S)},"compare/3":function(w,S,y){var F=y.args[0],J=y.args[1],X=y.args[2];if(!b.type.is_variable(F)&&!b.type.is_atom(F))w.throw_error(b.error.type("atom",F,y.indicator));else if(b.type.is_atom(F)&&["<",">","="].indexOf(F.id)===-1)w.throw_error(b.type.domain("order",F,y.indicator));else{var Z=b.compare(J,X);Z=Z===0?"=":Z===-1?"<":">",w.prepend([new be(S.goal.replace(new H("=",[F,new H(Z,[])])),S.substitution,S)])}},"is/2":function(w,S,y){var F=y.args[1].interpret(w);b.type.is_number(F)?w.prepend([new be(S.goal.replace(new H("=",[y.args[0],F],w.level)),S.substitution,S)]):w.throw_error(F)},"between/3":function(w,S,y){var F=y.args[0],J=y.args[1],X=y.args[2];if(b.type.is_variable(F)||b.type.is_variable(J))w.throw_error(b.error.instantiation(y.indicator));else if(!b.type.is_integer(F))w.throw_error(b.error.type("integer",F,y.indicator));else if(!b.type.is_integer(J))w.throw_error(b.error.type("integer",J,y.indicator));else if(!b.type.is_variable(X)&&!b.type.is_integer(X))w.throw_error(b.error.type("integer",X,y.indicator));else if(b.type.is_variable(X)){var Z=[new be(S.goal.replace(new H("=",[X,F])),S.substitution,S)];F.value=X.value&&w.success(S)},"succ/2":function(w,S,y){var F=y.args[0],J=y.args[1];b.type.is_variable(F)&&b.type.is_variable(J)?w.throw_error(b.error.instantiation(y.indicator)):!b.type.is_variable(F)&&!b.type.is_integer(F)?w.throw_error(b.error.type("integer",F,y.indicator)):!b.type.is_variable(J)&&!b.type.is_integer(J)?w.throw_error(b.error.type("integer",J,y.indicator)):!b.type.is_variable(F)&&F.value<0?w.throw_error(b.error.domain("not_less_than_zero",F,y.indicator)):!b.type.is_variable(J)&&J.value<0?w.throw_error(b.error.domain("not_less_than_zero",J,y.indicator)):(b.type.is_variable(J)||J.value>0)&&(b.type.is_variable(F)?w.prepend([new be(S.goal.replace(new H("=",[F,new xe(J.value-1,!1)])),S.substitution,S)]):w.prepend([new be(S.goal.replace(new H("=",[J,new xe(F.value+1,!1)])),S.substitution,S)]))},"=:=/2":function(w,S,y){var F=b.arithmetic_compare(w,y.args[0],y.args[1]);b.type.is_term(F)?w.throw_error(F):F===0&&w.success(S)},"=\\=/2":function(w,S,y){var F=b.arithmetic_compare(w,y.args[0],y.args[1]);b.type.is_term(F)?w.throw_error(F):F!==0&&w.success(S)},"/2":function(w,S,y){var F=b.arithmetic_compare(w,y.args[0],y.args[1]);b.type.is_term(F)?w.throw_error(F):F>0&&w.success(S)},">=/2":function(w,S,y){var F=b.arithmetic_compare(w,y.args[0],y.args[1]);b.type.is_term(F)?w.throw_error(F):F>=0&&w.success(S)},"var/1":function(w,S,y){b.type.is_variable(y.args[0])&&w.success(S)},"atom/1":function(w,S,y){b.type.is_atom(y.args[0])&&w.success(S)},"atomic/1":function(w,S,y){b.type.is_atomic(y.args[0])&&w.success(S)},"compound/1":function(w,S,y){b.type.is_compound(y.args[0])&&w.success(S)},"integer/1":function(w,S,y){b.type.is_integer(y.args[0])&&w.success(S)},"float/1":function(w,S,y){b.type.is_float(y.args[0])&&w.success(S)},"number/1":function(w,S,y){b.type.is_number(y.args[0])&&w.success(S)},"nonvar/1":function(w,S,y){b.type.is_variable(y.args[0])||w.success(S)},"ground/1":function(w,S,y){y.variables().length===0&&w.success(S)},"acyclic_term/1":function(w,S,y){for(var F=S.substitution.apply(S.substitution),J=y.args[0].variables(),X=0;X0?bt[bt.length-1]:null,bt!==null&&(jt=z(w,bt,0,w.__get_max_priority(),!1))}if(jt.type===p&&jt.len===bt.length-1&&an.value==="."){jt=jt.value.rename(w);var Qr=new H("=",[J,jt]);if(ie.variables){var mr=g(o(De(jt.variables()),function(br){return new we(br)}));Qr=new H(",",[Qr,new H("=",[ie.variables,mr])])}if(ie.variable_names){var mr=g(o(De(jt.variables()),function(Wr){var Kn;for(Kn in w.session.renamed_variables)if(w.session.renamed_variables.hasOwnProperty(Kn)&&w.session.renamed_variables[Kn]===Wr)break;return new H("=",[new H(Kn,[]),new we(Wr)])}));Qr=new H(",",[Qr,new H("=",[ie.variable_names,mr])])}if(ie.singletons){var mr=g(o(new _e(jt,null).singleton_variables(),function(Wr){var Kn;for(Kn in w.session.renamed_variables)if(w.session.renamed_variables.hasOwnProperty(Kn)&&w.session.renamed_variables[Kn]===Wr)break;return new H("=",[new H(Kn,[]),new we(Wr)])}));Qr=new H(",",[Qr,new H("=",[ie.singletons,mr])])}w.prepend([new be(S.goal.replace(Qr),S.substitution,S)])}else jt.type===p?w.throw_error(b.error.syntax(bt[jt.len],"unexpected token",!1)):w.throw_error(jt.value)}}},"write/1":function(w,S,y){var F=y.args[0];w.prepend([new be(S.goal.replace(new H(",",[new H("current_output",[new we("S")]),new H("write",[new we("S"),F])])),S.substitution,S)])},"write/2":function(w,S,y){var F=y.args[0],J=y.args[1];w.prepend([new be(S.goal.replace(new H("write_term",[F,J,new H(".",[new H("quoted",[new H("false",[])]),new H(".",[new H("ignore_ops",[new H("false")]),new H(".",[new H("numbervars",[new H("true")]),new H("[]",[])])])])])),S.substitution,S)])},"writeq/1":function(w,S,y){var F=y.args[0];w.prepend([new be(S.goal.replace(new H(",",[new H("current_output",[new we("S")]),new H("writeq",[new we("S"),F])])),S.substitution,S)])},"writeq/2":function(w,S,y){var F=y.args[0],J=y.args[1];w.prepend([new be(S.goal.replace(new H("write_term",[F,J,new H(".",[new H("quoted",[new H("true",[])]),new H(".",[new H("ignore_ops",[new H("false")]),new H(".",[new H("numbervars",[new H("true")]),new H("[]",[])])])])])),S.substitution,S)])},"write_canonical/1":function(w,S,y){var F=y.args[0];w.prepend([new be(S.goal.replace(new H(",",[new H("current_output",[new we("S")]),new H("write_canonical",[new we("S"),F])])),S.substitution,S)])},"write_canonical/2":function(w,S,y){var F=y.args[0],J=y.args[1];w.prepend([new be(S.goal.replace(new H("write_term",[F,J,new H(".",[new H("quoted",[new H("true",[])]),new H(".",[new H("ignore_ops",[new H("true")]),new H(".",[new H("numbervars",[new H("false")]),new H("[]",[])])])])])),S.substitution,S)])},"write_term/2":function(w,S,y){var F=y.args[0],J=y.args[1];w.prepend([new be(S.goal.replace(new H(",",[new H("current_output",[new we("S")]),new H("write_term",[new we("S"),F,J])])),S.substitution,S)])},"write_term/3":function(w,S,y){var F=y.args[0],J=y.args[1],X=y.args[2],Z=b.type.is_stream(F)?F:w.get_stream_by_alias(F.id);if(b.type.is_variable(F)||b.type.is_variable(X))w.throw_error(b.error.instantiation(y.indicator));else if(!b.type.is_list(X))w.throw_error(b.error.type("list",X,y.indicator));else if(!b.type.is_stream(F)&&!b.type.is_atom(F))w.throw_error(b.error.domain("stream_or_alias",F,y.indicator));else if(!b.type.is_stream(Z)||Z.stream===null)w.throw_error(b.error.existence("stream",F,y.indicator));else if(Z.input)w.throw_error(b.error.permission("output","stream",F,y.indicator));else if(Z.type==="binary")w.throw_error(b.error.permission("output","binary_stream",F,y.indicator));else if(Z.position==="past_end_of_stream"&&Z.eof_action==="error")w.throw_error(b.error.permission("output","past_end_of_stream",F,y.indicator));else{for(var ie={},Pe=X,Ne;b.type.is_term(Pe)&&Pe.indicator==="./2";){if(Ne=Pe.args[0],b.type.is_variable(Ne)){w.throw_error(b.error.instantiation(y.indicator));return}else if(!b.type.is_write_option(Ne)){w.throw_error(b.error.domain("write_option",Ne,y.indicator));return}ie[Ne.id]=Ne.args[0].id==="true",Pe=Pe.args[1]}if(Pe.indicator!=="[]/0"){b.type.is_variable(Pe)?w.throw_error(b.error.instantiation(y.indicator)):w.throw_error(b.error.type("list",X,y.indicator));return}else{ie.session=w.session;var ot=J.toString(ie);Z.stream.put(ot,Z.position),typeof Z.position=="number"&&(Z.position+=ot.length),w.success(S)}}},"halt/0":function(w,S,y){w.points=[]},"halt/1":function(w,S,y){var F=y.args[0];b.type.is_variable(F)?w.throw_error(b.error.instantiation(y.indicator)):b.type.is_integer(F)?w.points=[]:w.throw_error(b.error.type("integer",F,y.indicator))},"current_prolog_flag/2":function(w,S,y){var F=y.args[0],J=y.args[1];if(!b.type.is_variable(F)&&!b.type.is_atom(F))w.throw_error(b.error.type("atom",F,y.indicator));else if(!b.type.is_variable(F)&&!b.type.is_flag(F))w.throw_error(b.error.domain("prolog_flag",F,y.indicator));else{var X=[];for(var Z in b.flag)if(!!b.flag.hasOwnProperty(Z)){var ie=new H(",",[new H("=",[new H(Z),F]),new H("=",[w.get_flag(Z),J])]);X.push(new be(S.goal.replace(ie),S.substitution,S))}w.prepend(X)}},"set_prolog_flag/2":function(w,S,y){var F=y.args[0],J=y.args[1];b.type.is_variable(F)||b.type.is_variable(J)?w.throw_error(b.error.instantiation(y.indicator)):b.type.is_atom(F)?b.type.is_flag(F)?b.type.is_value_flag(F,J)?b.type.is_modifiable_flag(F)?(w.session.flag[F.id]=J,w.success(S)):w.throw_error(b.error.permission("modify","flag",F)):w.throw_error(b.error.domain("flag_value",new H("+",[F,J]),y.indicator)):w.throw_error(b.error.domain("prolog_flag",F,y.indicator)):w.throw_error(b.error.type("atom",F,y.indicator))}},flag:{bounded:{allowed:[new H("true"),new H("false")],value:new H("true"),changeable:!1},max_integer:{allowed:[new xe(Number.MAX_SAFE_INTEGER)],value:new xe(Number.MAX_SAFE_INTEGER),changeable:!1},min_integer:{allowed:[new xe(Number.MIN_SAFE_INTEGER)],value:new xe(Number.MIN_SAFE_INTEGER),changeable:!1},integer_rounding_function:{allowed:[new H("down"),new H("toward_zero")],value:new H("toward_zero"),changeable:!1},char_conversion:{allowed:[new H("on"),new H("off")],value:new H("on"),changeable:!0},debug:{allowed:[new H("on"),new H("off")],value:new H("off"),changeable:!0},max_arity:{allowed:[new H("unbounded")],value:new H("unbounded"),changeable:!1},unknown:{allowed:[new H("error"),new H("fail"),new H("warning")],value:new H("error"),changeable:!0},double_quotes:{allowed:[new H("chars"),new H("codes"),new H("atom")],value:new H("codes"),changeable:!0},occurs_check:{allowed:[new H("false"),new H("true")],value:new H("false"),changeable:!0},dialect:{allowed:[new H("tau")],value:new H("tau"),changeable:!1},version_data:{allowed:[new H("tau",[new xe(t.major,!1),new xe(t.minor,!1),new xe(t.patch,!1),new H(t.status)])],value:new H("tau",[new xe(t.major,!1),new xe(t.minor,!1),new xe(t.patch,!1),new H(t.status)]),changeable:!1},nodejs:{allowed:[new H("yes"),new H("no")],value:new H(typeof hl<"u"&&hl.exports?"yes":"no"),changeable:!1}},unify:function(w,S,y){y=y===void 0?!1:y;for(var F=[{left:w,right:S}],J={};F.length!==0;){var X=F.pop();if(w=X.left,S=X.right,b.type.is_term(w)&&b.type.is_term(S)){if(w.indicator!==S.indicator)return null;for(var Z=0;ZJ.value?1:0:J}else return F},operate:function(w,S){if(b.type.is_operator(S)){for(var y=b.type.is_operator(S),F=[],J,X=!1,Z=0;Zw.get_flag("max_integer").value||J0?w.start+w.matches[0].length:w.start,J=y?new H("token_not_found"):new H("found",[new H(w.value.toString())]),X=new H(".",[new H("line",[new xe(w.line+1)]),new H(".",[new H("column",[new xe(F+1)]),new H(".",[J,new H("[]",[])])])]);return new H("error",[new H("syntax_error",[new H(S)]),X])},syntax_by_predicate:function(w,S){return new H("error",[new H("syntax_error",[new H(w)]),ee(S)])}},warning:{singleton:function(w,S,y){for(var F=new H("[]"),J=w.length-1;J>=0;J--)F=new H(".",[new we(w[J]),F]);return new H("warning",[new H("singleton_variables",[F,ee(S)]),new H(".",[new H("line",[new xe(y,!1)]),new H("[]")])])},failed_goal:function(w,S){return new H("warning",[new H("failed_goal",[w]),new H(".",[new H("line",[new xe(S,!1)]),new H("[]")])])}},format_variable:function(w){return"_"+w},format_answer:function(w,S,F){S instanceof Re&&(S=S.thread);var F=F||{};if(F.session=S?S.session:void 0,b.type.is_error(w))return"uncaught exception: "+w.args[0].toString();if(w===!1)return"false.";if(w===null)return"limit exceeded ;";var J=0,X="";if(b.type.is_substitution(w)){var Z=w.domain(!0);w=w.filter(function(Ne,ot){return!b.type.is_variable(ot)||Z.indexOf(ot.id)!==-1&&Ne!==ot.id})}for(var ie in w.links)!w.links.hasOwnProperty(ie)||(J++,X!==""&&(X+=", "),X+=ie.toString(F)+" = "+w.links[ie].toString(F));var Pe=typeof S>"u"||S.points.length>0?" ;":".";return J===0?"true"+Pe:X+Pe},flatten_error:function(w){if(!b.type.is_error(w))return null;w=w.args[0];var S={};return S.type=w.args[0].id,S.thrown=S.type==="syntax_error"?null:w.args[1].id,S.expected=null,S.found=null,S.representation=null,S.existence=null,S.existence_type=null,S.line=null,S.column=null,S.permission_operation=null,S.permission_type=null,S.evaluation_type=null,S.type==="type_error"||S.type==="domain_error"?(S.expected=w.args[0].args[0].id,S.found=w.args[0].args[1].toString()):S.type==="syntax_error"?w.args[1].indicator==="./2"?(S.expected=w.args[0].args[0].id,S.found=w.args[1].args[1].args[1].args[0],S.found=S.found.id==="token_not_found"?S.found.id:S.found.args[0].id,S.line=w.args[1].args[0].args[0].value,S.column=w.args[1].args[1].args[0].args[0].value):S.thrown=w.args[1].id:S.type==="permission_error"?(S.found=w.args[0].args[2].toString(),S.permission_operation=w.args[0].args[0].id,S.permission_type=w.args[0].args[1].id):S.type==="evaluation_error"?S.evaluation_type=w.args[0].args[0].id:S.type==="representation_error"?S.representation=w.args[0].args[0].id:S.type==="existence_error"&&(S.existence=w.args[0].args[1].toString(),S.existence_type=w.args[0].args[0].id),S},create:function(w){return new b.type.Session(w)}};typeof hl<"u"?hl.exports=b:window.pl=b})()});function lme(t,e,r){t.prepend(r.map(o=>new Ta.default.type.State(e.goal.replace(o),e.substitution,e)))}function CH(t){let e=ume.get(t.session);if(e==null)throw new Error("Assertion failed: A project should have been registered for the active session");return e}function Ame(t,e){ume.set(t,e),t.consult(`:- use_module(library(${$gt.id})).`)}var wH,Ta,cme,c0,Xgt,Zgt,ume,$gt,fme=Et(()=>{Ye();wH=$e(h2()),Ta=$e(EH()),cme=$e(Be("vm")),{is_atom:c0,is_variable:Xgt,is_instantiated_list:Zgt}=Ta.default.type;ume=new WeakMap;$gt=new Ta.default.type.Module("constraints",{["project_workspaces_by_descriptor/3"]:(t,e,r)=>{let[o,a,n]=r.args;if(!c0(o)||!c0(a)){t.throw_error(Ta.default.error.instantiation(r.indicator));return}let u=W.parseIdent(o.id),A=W.makeDescriptor(u,a.id),h=CH(t).tryWorkspaceByDescriptor(A);Xgt(n)&&h!==null&&lme(t,e,[new Ta.default.type.Term("=",[n,new Ta.default.type.Term(String(h.relativeCwd))])]),c0(n)&&h!==null&&h.relativeCwd===n.id&&t.success(e)},["workspace_field/3"]:(t,e,r)=>{let[o,a,n]=r.args;if(!c0(o)||!c0(a)){t.throw_error(Ta.default.error.instantiation(r.indicator));return}let A=CH(t).tryWorkspaceByCwd(o.id);if(A==null)return;let p=(0,wH.default)(A.manifest.raw,a.id);typeof p>"u"||lme(t,e,[new Ta.default.type.Term("=",[n,new Ta.default.type.Term(typeof p=="object"?JSON.stringify(p):p)])])},["workspace_field_test/3"]:(t,e,r)=>{let[o,a,n]=r.args;t.prepend([new Ta.default.type.State(e.goal.replace(new Ta.default.type.Term("workspace_field_test",[o,a,n,new Ta.default.type.Term("[]",[])])),e.substitution,e)])},["workspace_field_test/4"]:(t,e,r)=>{let[o,a,n,u]=r.args;if(!c0(o)||!c0(a)||!c0(n)||!Zgt(u)){t.throw_error(Ta.default.error.instantiation(r.indicator));return}let p=CH(t).tryWorkspaceByCwd(o.id);if(p==null)return;let h=(0,wH.default)(p.manifest.raw,a.id);if(typeof h>"u")return;let C={$$:h};for(let[v,x]of u.toJavaScript().entries())C[`$${v}`]=x;cme.default.runInNewContext(n.id,C)&&t.success(e)}},["project_workspaces_by_descriptor/3","workspace_field/3","workspace_field_test/3","workspace_field_test/4"])});var P2={};Vt(P2,{Constraints:()=>D2,DependencyType:()=>dme});function to(t){if(t instanceof BC.default.type.Num)return t.value;if(t instanceof BC.default.type.Term)switch(t.indicator){case"throw/1":return to(t.args[0]);case"error/1":return to(t.args[0]);case"error/2":if(t.args[0]instanceof BC.default.type.Term&&t.args[0].indicator==="syntax_error/1")return Object.assign(to(t.args[0]),...to(t.args[1]));{let e=to(t.args[0]);return e.message+=` (in ${to(t.args[1])})`,e}case"syntax_error/1":return new Jt(43,`Syntax error: ${to(t.args[0])}`);case"existence_error/2":return new Jt(44,`Existence error: ${to(t.args[0])} ${to(t.args[1])} not found`);case"instantiation_error/0":return new Jt(75,"Instantiation error: an argument is variable when an instantiated argument was expected");case"line/1":return{line:to(t.args[0])};case"column/1":return{column:to(t.args[0])};case"found/1":return{found:to(t.args[0])};case"./2":return[to(t.args[0])].concat(to(t.args[1]));case"//2":return`${to(t.args[0])}/${to(t.args[1])}`;default:return t.id}throw`couldn't pretty print because of unsupported node ${t}`}function hme(t){let e;try{e=to(t)}catch(r){throw typeof r=="string"?new Jt(42,`Unknown error: ${t} (note: ${r})`):r}return typeof e.line<"u"&&typeof e.column<"u"&&(e.message+=` at line ${e.line}, column ${e.column}`),e}function Zd(t){return t.id==="null"?null:`${t.toJavaScript()}`}function edt(t){if(t.id==="null")return null;{let e=t.toJavaScript();if(typeof e!="string")return JSON.stringify(e);try{return JSON.stringify(JSON.parse(e))}catch{return JSON.stringify(e)}}}function u0(t){return typeof t=="string"?`'${t}'`:"[]"}var gme,BC,dme,pme,IH,D2,S2=Et(()=>{Ye();Ye();Pt();gme=$e(Wde()),BC=$e(EH());I2();fme();(0,gme.default)(BC.default);dme=(o=>(o.Dependencies="dependencies",o.DevDependencies="devDependencies",o.PeerDependencies="peerDependencies",o))(dme||{}),pme=["dependencies","devDependencies","peerDependencies"];IH=class{constructor(e,r){let o=1e3*e.workspaces.length;this.session=BC.default.create(o),Ame(this.session,e),this.session.consult(":- use_module(library(lists))."),this.session.consult(r)}fetchNextAnswer(){return new Promise(e=>{this.session.answer(r=>{e(r)})})}async*makeQuery(e){let r=this.session.query(e);if(r!==!0)throw hme(r);for(;;){let o=await this.fetchNextAnswer();if(o===null)throw new Jt(79,"Resolution limit exceeded");if(!o)break;if(o.id==="throw")throw hme(o);yield o}}};D2=class{constructor(e){this.source="";this.project=e;let r=e.configuration.get("constraintsPath");oe.existsSync(r)&&(this.source=oe.readFileSync(r,"utf8"))}static async find(e){return new D2(e)}getProjectDatabase(){let e="";for(let r of pme)e+=`dependency_type(${r}). +`;for(let r of this.project.workspacesByCwd.values()){let o=r.relativeCwd;e+=`workspace(${u0(o)}). +`,e+=`workspace_ident(${u0(o)}, ${u0(W.stringifyIdent(r.anchoredLocator))}). +`,e+=`workspace_version(${u0(o)}, ${u0(r.manifest.version)}). +`;for(let a of pme)for(let n of r.manifest[a].values())e+=`workspace_has_dependency(${u0(o)}, ${u0(W.stringifyIdent(n))}, ${u0(n.range)}, ${a}). +`}return e+=`workspace(_) :- false. +`,e+=`workspace_ident(_, _) :- false. +`,e+=`workspace_version(_, _) :- false. +`,e+=`workspace_has_dependency(_, _, _, _) :- false. +`,e}getDeclarations(){let e="";return e+=`gen_enforced_dependency(_, _, _, _) :- false. +`,e+=`gen_enforced_field(_, _, _) :- false. +`,e}get fullSource(){return`${this.getProjectDatabase()} +${this.source} +${this.getDeclarations()}`}createSession(){return new IH(this.project,this.fullSource)}async processClassic(){let e=this.createSession();return{enforcedDependencies:await this.genEnforcedDependencies(e),enforcedFields:await this.genEnforcedFields(e)}}async process(){let{enforcedDependencies:e,enforcedFields:r}=await this.processClassic(),o=new Map;for(let{workspace:a,dependencyIdent:n,dependencyRange:u,dependencyType:A}of e){let p=w2([A,W.stringifyIdent(n)]),h=je.getMapWithDefault(o,a.cwd);je.getMapWithDefault(h,p).set(u??void 0,new Set)}for(let{workspace:a,fieldPath:n,fieldValue:u}of r){let A=w2(n),p=je.getMapWithDefault(o,a.cwd);je.getMapWithDefault(p,A).set(JSON.parse(u)??void 0,new Set)}return{manifestUpdates:o,reportedErrors:new Map}}async genEnforcedDependencies(e){let r=[];for await(let o of e.makeQuery("workspace(WorkspaceCwd), dependency_type(DependencyType), gen_enforced_dependency(WorkspaceCwd, DependencyIdent, DependencyRange, DependencyType).")){let a=V.resolve(this.project.cwd,Zd(o.links.WorkspaceCwd)),n=Zd(o.links.DependencyIdent),u=Zd(o.links.DependencyRange),A=Zd(o.links.DependencyType);if(a===null||n===null)throw new Error("Invalid rule");let p=this.project.getWorkspaceByCwd(a),h=W.parseIdent(n);r.push({workspace:p,dependencyIdent:h,dependencyRange:u,dependencyType:A})}return je.sortMap(r,[({dependencyRange:o})=>o!==null?"0":"1",({workspace:o})=>W.stringifyIdent(o.anchoredLocator),({dependencyIdent:o})=>W.stringifyIdent(o)])}async genEnforcedFields(e){let r=[];for await(let o of e.makeQuery("workspace(WorkspaceCwd), gen_enforced_field(WorkspaceCwd, FieldPath, FieldValue).")){let a=V.resolve(this.project.cwd,Zd(o.links.WorkspaceCwd)),n=Zd(o.links.FieldPath),u=edt(o.links.FieldValue);if(a===null||n===null)throw new Error("Invalid rule");let A=this.project.getWorkspaceByCwd(a);r.push({workspace:A,fieldPath:n,fieldValue:u})}return je.sortMap(r,[({workspace:o})=>W.stringifyIdent(o.anchoredLocator),({fieldPath:o})=>o])}async*query(e){let r=this.createSession();for await(let o of r.makeQuery(e)){let a={};for(let[n,u]of Object.entries(o.links))n!=="_"&&(a[n]=Zd(u));yield a}}}});var vme=_(vk=>{"use strict";Object.defineProperty(vk,"__esModule",{value:!0});function q2(t){let e=[...t.caches],r=e.shift();return r===void 0?Bme():{get(o,a,n={miss:()=>Promise.resolve()}){return r.get(o,a,n).catch(()=>q2({caches:e}).get(o,a,n))},set(o,a){return r.set(o,a).catch(()=>q2({caches:e}).set(o,a))},delete(o){return r.delete(o).catch(()=>q2({caches:e}).delete(o))},clear(){return r.clear().catch(()=>q2({caches:e}).clear())}}}function Bme(){return{get(t,e,r={miss:()=>Promise.resolve()}){return e().then(a=>Promise.all([a,r.miss(a)])).then(([a])=>a)},set(t,e){return Promise.resolve(e)},delete(t){return Promise.resolve()},clear(){return Promise.resolve()}}}vk.createFallbackableCache=q2;vk.createNullCache=Bme});var Pme=_((QWt,Dme)=>{Dme.exports=vme()});var Sme=_(LH=>{"use strict";Object.defineProperty(LH,"__esModule",{value:!0});function Edt(t={serializable:!0}){let e={};return{get(r,o,a={miss:()=>Promise.resolve()}){let n=JSON.stringify(r);if(n in e)return Promise.resolve(t.serializable?JSON.parse(e[n]):e[n]);let u=o(),A=a&&a.miss||(()=>Promise.resolve());return u.then(p=>A(p)).then(()=>u)},set(r,o){return e[JSON.stringify(r)]=t.serializable?JSON.stringify(o):o,Promise.resolve(o)},delete(r){return delete e[JSON.stringify(r)],Promise.resolve()},clear(){return e={},Promise.resolve()}}}LH.createInMemoryCache=Edt});var xme=_((RWt,bme)=>{bme.exports=Sme()});var Qme=_(Zc=>{"use strict";Object.defineProperty(Zc,"__esModule",{value:!0});function Cdt(t,e,r){let o={"x-algolia-api-key":r,"x-algolia-application-id":e};return{headers(){return t===OH.WithinHeaders?o:{}},queryParameters(){return t===OH.WithinQueryParameters?o:{}}}}function wdt(t){let e=0,r=()=>(e++,new Promise(o=>{setTimeout(()=>{o(t(r))},Math.min(100*e,1e3))}));return t(r)}function kme(t,e=(r,o)=>Promise.resolve()){return Object.assign(t,{wait(r){return kme(t.then(o=>Promise.all([e(o,r),o])).then(o=>o[1]))}})}function Idt(t){let e=t.length-1;for(e;e>0;e--){let r=Math.floor(Math.random()*(e+1)),o=t[e];t[e]=t[r],t[r]=o}return t}function Bdt(t,e){return e&&Object.keys(e).forEach(r=>{t[r]=e[r](t)}),t}function vdt(t,...e){let r=0;return t.replace(/%s/g,()=>encodeURIComponent(e[r++]))}var Ddt="4.14.2",Pdt=t=>()=>t.transporter.requester.destroy(),OH={WithinQueryParameters:0,WithinHeaders:1};Zc.AuthMode=OH;Zc.addMethods=Bdt;Zc.createAuth=Cdt;Zc.createRetryablePromise=wdt;Zc.createWaitablePromise=kme;Zc.destroy=Pdt;Zc.encode=vdt;Zc.shuffle=Idt;Zc.version=Ddt});var G2=_((NWt,Fme)=>{Fme.exports=Qme()});var Rme=_(MH=>{"use strict";Object.defineProperty(MH,"__esModule",{value:!0});var Sdt={Delete:"DELETE",Get:"GET",Post:"POST",Put:"PUT"};MH.MethodEnum=Sdt});var Y2=_((OWt,Tme)=>{Tme.exports=Rme()});var zme=_(Fi=>{"use strict";Object.defineProperty(Fi,"__esModule",{value:!0});var Lme=Y2();function UH(t,e){let r=t||{},o=r.data||{};return Object.keys(r).forEach(a=>{["timeout","headers","queryParameters","data","cacheable"].indexOf(a)===-1&&(o[a]=r[a])}),{data:Object.entries(o).length>0?o:void 0,timeout:r.timeout||e,headers:r.headers||{},queryParameters:r.queryParameters||{},cacheable:r.cacheable}}var W2={Read:1,Write:2,Any:3},SC={Up:1,Down:2,Timeouted:3},Ome=2*60*1e3;function HH(t,e=SC.Up){return{...t,status:e,lastUpdate:Date.now()}}function Mme(t){return t.status===SC.Up||Date.now()-t.lastUpdate>Ome}function Ume(t){return t.status===SC.Timeouted&&Date.now()-t.lastUpdate<=Ome}function jH(t){return typeof t=="string"?{protocol:"https",url:t,accept:W2.Any}:{protocol:t.protocol||"https",url:t.url,accept:t.accept||W2.Any}}function bdt(t,e){return Promise.all(e.map(r=>t.get(r,()=>Promise.resolve(HH(r))))).then(r=>{let o=r.filter(A=>Mme(A)),a=r.filter(A=>Ume(A)),n=[...o,...a],u=n.length>0?n.map(A=>jH(A)):e;return{getTimeout(A,p){return(a.length===0&&A===0?1:a.length+3+A)*p},statelessHosts:u}})}var xdt=({isTimedOut:t,status:e})=>!t&&~~e===0,kdt=t=>{let e=t.status;return t.isTimedOut||xdt(t)||~~(e/100)!==2&&~~(e/100)!==4},Qdt=({status:t})=>~~(t/100)===2,Fdt=(t,e)=>kdt(t)?e.onRetry(t):Qdt(t)?e.onSuccess(t):e.onFail(t);function Nme(t,e,r,o){let a=[],n=Gme(r,o),u=Yme(t,o),A=r.method,p=r.method!==Lme.MethodEnum.Get?{}:{...r.data,...o.data},h={"x-algolia-agent":t.userAgent.value,...t.queryParameters,...p,...o.queryParameters},C=0,I=(v,x)=>{let E=v.pop();if(E===void 0)throw Vme(_H(a));let R={data:n,headers:u,method:A,url:jme(E,r.path,h),connectTimeout:x(C,t.timeouts.connect),responseTimeout:x(C,o.timeout)},L=z=>{let te={request:R,response:z,host:E,triesLeft:v.length};return a.push(te),te},U={onSuccess:z=>_me(z),onRetry(z){let te=L(z);return z.isTimedOut&&C++,Promise.all([t.logger.info("Retryable failure",qH(te)),t.hostsCache.set(E,HH(E,z.isTimedOut?SC.Timeouted:SC.Down))]).then(()=>I(v,x))},onFail(z){throw L(z),Hme(z,_H(a))}};return t.requester.send(R).then(z=>Fdt(z,U))};return bdt(t.hostsCache,e).then(v=>I([...v.statelessHosts].reverse(),v.getTimeout))}function Rdt(t){let{hostsCache:e,logger:r,requester:o,requestsCache:a,responsesCache:n,timeouts:u,userAgent:A,hosts:p,queryParameters:h,headers:C}=t,I={hostsCache:e,logger:r,requester:o,requestsCache:a,responsesCache:n,timeouts:u,userAgent:A,headers:C,queryParameters:h,hosts:p.map(v=>jH(v)),read(v,x){let E=UH(x,I.timeouts.read),R=()=>Nme(I,I.hosts.filter(z=>(z.accept&W2.Read)!==0),v,E);if((E.cacheable!==void 0?E.cacheable:v.cacheable)!==!0)return R();let U={request:v,mappedRequestOptions:E,transporter:{queryParameters:I.queryParameters,headers:I.headers}};return I.responsesCache.get(U,()=>I.requestsCache.get(U,()=>I.requestsCache.set(U,R()).then(z=>Promise.all([I.requestsCache.delete(U),z]),z=>Promise.all([I.requestsCache.delete(U),Promise.reject(z)])).then(([z,te])=>te)),{miss:z=>I.responsesCache.set(U,z)})},write(v,x){return Nme(I,I.hosts.filter(E=>(E.accept&W2.Write)!==0),v,UH(x,I.timeouts.write))}};return I}function Tdt(t){let e={value:`Algolia for JavaScript (${t})`,add(r){let o=`; ${r.segment}${r.version!==void 0?` (${r.version})`:""}`;return e.value.indexOf(o)===-1&&(e.value=`${e.value}${o}`),e}};return e}function _me(t){try{return JSON.parse(t.content)}catch(e){throw Kme(e.message,t)}}function Hme({content:t,status:e},r){let o=t;try{o=JSON.parse(t).message}catch{}return Wme(o,e,r)}function Ndt(t,...e){let r=0;return t.replace(/%s/g,()=>encodeURIComponent(e[r++]))}function jme(t,e,r){let o=qme(r),a=`${t.protocol}://${t.url}/${e.charAt(0)==="/"?e.substr(1):e}`;return o.length&&(a+=`?${o}`),a}function qme(t){let e=r=>Object.prototype.toString.call(r)==="[object Object]"||Object.prototype.toString.call(r)==="[object Array]";return Object.keys(t).map(r=>Ndt("%s=%s",r,e(t[r])?JSON.stringify(t[r]):t[r])).join("&")}function Gme(t,e){if(t.method===Lme.MethodEnum.Get||t.data===void 0&&e.data===void 0)return;let r=Array.isArray(t.data)?t.data:{...t.data,...e.data};return JSON.stringify(r)}function Yme(t,e){let r={...t.headers,...e.headers},o={};return Object.keys(r).forEach(a=>{let n=r[a];o[a.toLowerCase()]=n}),o}function _H(t){return t.map(e=>qH(e))}function qH(t){let e=t.request.headers["x-algolia-api-key"]?{"x-algolia-api-key":"*****"}:{};return{...t,request:{...t.request,headers:{...t.request.headers,...e}}}}function Wme(t,e,r){return{name:"ApiError",message:t,status:e,transporterStackTrace:r}}function Kme(t,e){return{name:"DeserializationError",message:t,response:e}}function Vme(t){return{name:"RetryError",message:"Unreachable hosts - your application id may be incorrect. If the error persists, contact support@algolia.com.",transporterStackTrace:t}}Fi.CallEnum=W2;Fi.HostStatusEnum=SC;Fi.createApiError=Wme;Fi.createDeserializationError=Kme;Fi.createMappedRequestOptions=UH;Fi.createRetryError=Vme;Fi.createStatefulHost=HH;Fi.createStatelessHost=jH;Fi.createTransporter=Rdt;Fi.createUserAgent=Tdt;Fi.deserializeFailure=Hme;Fi.deserializeSuccess=_me;Fi.isStatefulHostTimeouted=Ume;Fi.isStatefulHostUp=Mme;Fi.serializeData=Gme;Fi.serializeHeaders=Yme;Fi.serializeQueryParameters=qme;Fi.serializeUrl=jme;Fi.stackFrameWithoutCredentials=qH;Fi.stackTraceWithoutCredentials=_H});var K2=_((UWt,Jme)=>{Jme.exports=zme()});var Xme=_(d0=>{"use strict";Object.defineProperty(d0,"__esModule",{value:!0});var bC=G2(),Ldt=K2(),V2=Y2(),Odt=t=>{let e=t.region||"us",r=bC.createAuth(bC.AuthMode.WithinHeaders,t.appId,t.apiKey),o=Ldt.createTransporter({hosts:[{url:`analytics.${e}.algolia.com`}],...t,headers:{...r.headers(),"content-type":"application/json",...t.headers},queryParameters:{...r.queryParameters(),...t.queryParameters}}),a=t.appId;return bC.addMethods({appId:a,transporter:o},t.methods)},Mdt=t=>(e,r)=>t.transporter.write({method:V2.MethodEnum.Post,path:"2/abtests",data:e},r),Udt=t=>(e,r)=>t.transporter.write({method:V2.MethodEnum.Delete,path:bC.encode("2/abtests/%s",e)},r),_dt=t=>(e,r)=>t.transporter.read({method:V2.MethodEnum.Get,path:bC.encode("2/abtests/%s",e)},r),Hdt=t=>e=>t.transporter.read({method:V2.MethodEnum.Get,path:"2/abtests"},e),jdt=t=>(e,r)=>t.transporter.write({method:V2.MethodEnum.Post,path:bC.encode("2/abtests/%s/stop",e)},r);d0.addABTest=Mdt;d0.createAnalyticsClient=Odt;d0.deleteABTest=Udt;d0.getABTest=_dt;d0.getABTests=Hdt;d0.stopABTest=jdt});var $me=_((HWt,Zme)=>{Zme.exports=Xme()});var tye=_(z2=>{"use strict";Object.defineProperty(z2,"__esModule",{value:!0});var GH=G2(),qdt=K2(),eye=Y2(),Gdt=t=>{let e=t.region||"us",r=GH.createAuth(GH.AuthMode.WithinHeaders,t.appId,t.apiKey),o=qdt.createTransporter({hosts:[{url:`personalization.${e}.algolia.com`}],...t,headers:{...r.headers(),"content-type":"application/json",...t.headers},queryParameters:{...r.queryParameters(),...t.queryParameters}});return GH.addMethods({appId:t.appId,transporter:o},t.methods)},Ydt=t=>e=>t.transporter.read({method:eye.MethodEnum.Get,path:"1/strategies/personalization"},e),Wdt=t=>(e,r)=>t.transporter.write({method:eye.MethodEnum.Post,path:"1/strategies/personalization",data:e},r);z2.createPersonalizationClient=Gdt;z2.getPersonalizationStrategy=Ydt;z2.setPersonalizationStrategy=Wdt});var nye=_((qWt,rye)=>{rye.exports=tye()});var mye=_(Ft=>{"use strict";Object.defineProperty(Ft,"__esModule",{value:!0});var Gt=G2(),Na=K2(),Ir=Y2(),Kdt=Be("crypto");function Dk(t){let e=r=>t.request(r).then(o=>{if(t.batch!==void 0&&t.batch(o.hits),!t.shouldStop(o))return o.cursor?e({cursor:o.cursor}):e({page:(r.page||0)+1})});return e({})}var Vdt=t=>{let e=t.appId,r=Gt.createAuth(t.authMode!==void 0?t.authMode:Gt.AuthMode.WithinHeaders,e,t.apiKey),o=Na.createTransporter({hosts:[{url:`${e}-dsn.algolia.net`,accept:Na.CallEnum.Read},{url:`${e}.algolia.net`,accept:Na.CallEnum.Write}].concat(Gt.shuffle([{url:`${e}-1.algolianet.com`},{url:`${e}-2.algolianet.com`},{url:`${e}-3.algolianet.com`}])),...t,headers:{...r.headers(),"content-type":"application/x-www-form-urlencoded",...t.headers},queryParameters:{...r.queryParameters(),...t.queryParameters}}),a={transporter:o,appId:e,addAlgoliaAgent(n,u){o.userAgent.add({segment:n,version:u})},clearCache(){return Promise.all([o.requestsCache.clear(),o.responsesCache.clear()]).then(()=>{})}};return Gt.addMethods(a,t.methods)};function iye(){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 sye(){return{name:"ObjectNotFoundError",message:"Object not found."}}function oye(){return{name:"ValidUntilNotFoundError",message:"ValidUntil not found in given secured api key."}}var zdt=t=>(e,r)=>{let{queryParameters:o,...a}=r||{},n={acl:e,...o!==void 0?{queryParameters:o}:{}},u=(A,p)=>Gt.createRetryablePromise(h=>J2(t)(A.key,p).catch(C=>{if(C.status!==404)throw C;return h()}));return Gt.createWaitablePromise(t.transporter.write({method:Ir.MethodEnum.Post,path:"1/keys",data:n},a),u)},Jdt=t=>(e,r,o)=>{let a=Na.createMappedRequestOptions(o);return a.queryParameters["X-Algolia-User-ID"]=e,t.transporter.write({method:Ir.MethodEnum.Post,path:"1/clusters/mapping",data:{cluster:r}},a)},Xdt=t=>(e,r,o)=>t.transporter.write({method:Ir.MethodEnum.Post,path:"1/clusters/mapping/batch",data:{users:e,cluster:r}},o),Zdt=t=>(e,r)=>Gt.createWaitablePromise(t.transporter.write({method:Ir.MethodEnum.Post,path:Gt.encode("/1/dictionaries/%s/batch",e),data:{clearExistingDictionaryEntries:!0,requests:{action:"addEntry",body:[]}}},r),(o,a)=>xC(t)(o.taskID,a)),Pk=t=>(e,r,o)=>{let a=(n,u)=>X2(t)(e,{methods:{waitTask:Zi}}).waitTask(n.taskID,u);return Gt.createWaitablePromise(t.transporter.write({method:Ir.MethodEnum.Post,path:Gt.encode("1/indexes/%s/operation",e),data:{operation:"copy",destination:r}},o),a)},$dt=t=>(e,r,o)=>Pk(t)(e,r,{...o,scope:[bk.Rules]}),emt=t=>(e,r,o)=>Pk(t)(e,r,{...o,scope:[bk.Settings]}),tmt=t=>(e,r,o)=>Pk(t)(e,r,{...o,scope:[bk.Synonyms]}),rmt=t=>(e,r)=>e.method===Ir.MethodEnum.Get?t.transporter.read(e,r):t.transporter.write(e,r),nmt=t=>(e,r)=>{let o=(a,n)=>Gt.createRetryablePromise(u=>J2(t)(e,n).then(u).catch(A=>{if(A.status!==404)throw A}));return Gt.createWaitablePromise(t.transporter.write({method:Ir.MethodEnum.Delete,path:Gt.encode("1/keys/%s",e)},r),o)},imt=t=>(e,r,o)=>{let a=r.map(n=>({action:"deleteEntry",body:{objectID:n}}));return Gt.createWaitablePromise(t.transporter.write({method:Ir.MethodEnum.Post,path:Gt.encode("/1/dictionaries/%s/batch",e),data:{clearExistingDictionaryEntries:!1,requests:a}},o),(n,u)=>xC(t)(n.taskID,u))},smt=()=>(t,e)=>{let r=Na.serializeQueryParameters(e),o=Kdt.createHmac("sha256",t).update(r).digest("hex");return Buffer.from(o+r).toString("base64")},J2=t=>(e,r)=>t.transporter.read({method:Ir.MethodEnum.Get,path:Gt.encode("1/keys/%s",e)},r),aye=t=>(e,r)=>t.transporter.read({method:Ir.MethodEnum.Get,path:Gt.encode("1/task/%s",e.toString())},r),omt=t=>e=>t.transporter.read({method:Ir.MethodEnum.Get,path:"/1/dictionaries/*/settings"},e),amt=t=>e=>t.transporter.read({method:Ir.MethodEnum.Get,path:"1/logs"},e),lmt=()=>t=>{let e=Buffer.from(t,"base64").toString("ascii"),r=/validUntil=(\d+)/,o=e.match(r);if(o===null)throw oye();return parseInt(o[1],10)-Math.round(new Date().getTime()/1e3)},cmt=t=>e=>t.transporter.read({method:Ir.MethodEnum.Get,path:"1/clusters/mapping/top"},e),umt=t=>(e,r)=>t.transporter.read({method:Ir.MethodEnum.Get,path:Gt.encode("1/clusters/mapping/%s",e)},r),Amt=t=>e=>{let{retrieveMappings:r,...o}=e||{};return r===!0&&(o.getClusters=!0),t.transporter.read({method:Ir.MethodEnum.Get,path:"1/clusters/mapping/pending"},o)},X2=t=>(e,r={})=>{let o={transporter:t.transporter,appId:t.appId,indexName:e};return Gt.addMethods(o,r.methods)},fmt=t=>e=>t.transporter.read({method:Ir.MethodEnum.Get,path:"1/keys"},e),pmt=t=>e=>t.transporter.read({method:Ir.MethodEnum.Get,path:"1/clusters"},e),hmt=t=>e=>t.transporter.read({method:Ir.MethodEnum.Get,path:"1/indexes"},e),gmt=t=>e=>t.transporter.read({method:Ir.MethodEnum.Get,path:"1/clusters/mapping"},e),dmt=t=>(e,r,o)=>{let a=(n,u)=>X2(t)(e,{methods:{waitTask:Zi}}).waitTask(n.taskID,u);return Gt.createWaitablePromise(t.transporter.write({method:Ir.MethodEnum.Post,path:Gt.encode("1/indexes/%s/operation",e),data:{operation:"move",destination:r}},o),a)},mmt=t=>(e,r)=>{let o=(a,n)=>Promise.all(Object.keys(a.taskID).map(u=>X2(t)(u,{methods:{waitTask:Zi}}).waitTask(a.taskID[u],n)));return Gt.createWaitablePromise(t.transporter.write({method:Ir.MethodEnum.Post,path:"1/indexes/*/batch",data:{requests:e}},r),o)},ymt=t=>(e,r)=>t.transporter.read({method:Ir.MethodEnum.Post,path:"1/indexes/*/objects",data:{requests:e}},r),Emt=t=>(e,r)=>{let o=e.map(a=>({...a,params:Na.serializeQueryParameters(a.params||{})}));return t.transporter.read({method:Ir.MethodEnum.Post,path:"1/indexes/*/queries",data:{requests:o},cacheable:!0},r)},Cmt=t=>(e,r)=>Promise.all(e.map(o=>{let{facetName:a,facetQuery:n,...u}=o.params;return X2(t)(o.indexName,{methods:{searchForFacetValues:hye}}).searchForFacetValues(a,n,{...r,...u})})),wmt=t=>(e,r)=>{let o=Na.createMappedRequestOptions(r);return o.queryParameters["X-Algolia-User-ID"]=e,t.transporter.write({method:Ir.MethodEnum.Delete,path:"1/clusters/mapping"},o)},Imt=t=>(e,r,o)=>{let a=r.map(n=>({action:"addEntry",body:n}));return Gt.createWaitablePromise(t.transporter.write({method:Ir.MethodEnum.Post,path:Gt.encode("/1/dictionaries/%s/batch",e),data:{clearExistingDictionaryEntries:!0,requests:a}},o),(n,u)=>xC(t)(n.taskID,u))},Bmt=t=>(e,r)=>{let o=(a,n)=>Gt.createRetryablePromise(u=>J2(t)(e,n).catch(A=>{if(A.status!==404)throw A;return u()}));return Gt.createWaitablePromise(t.transporter.write({method:Ir.MethodEnum.Post,path:Gt.encode("1/keys/%s/restore",e)},r),o)},vmt=t=>(e,r,o)=>{let a=r.map(n=>({action:"addEntry",body:n}));return Gt.createWaitablePromise(t.transporter.write({method:Ir.MethodEnum.Post,path:Gt.encode("/1/dictionaries/%s/batch",e),data:{clearExistingDictionaryEntries:!1,requests:a}},o),(n,u)=>xC(t)(n.taskID,u))},Dmt=t=>(e,r,o)=>t.transporter.read({method:Ir.MethodEnum.Post,path:Gt.encode("/1/dictionaries/%s/search",e),data:{query:r},cacheable:!0},o),Pmt=t=>(e,r)=>t.transporter.read({method:Ir.MethodEnum.Post,path:"1/clusters/mapping/search",data:{query:e}},r),Smt=t=>(e,r)=>Gt.createWaitablePromise(t.transporter.write({method:Ir.MethodEnum.Put,path:"/1/dictionaries/*/settings",data:e},r),(o,a)=>xC(t)(o.taskID,a)),bmt=t=>(e,r)=>{let o=Object.assign({},r),{queryParameters:a,...n}=r||{},u=a?{queryParameters:a}:{},A=["acl","indexes","referers","restrictSources","queryParameters","description","maxQueriesPerIPPerHour","maxHitsPerQuery"],p=C=>Object.keys(o).filter(I=>A.indexOf(I)!==-1).every(I=>C[I]===o[I]),h=(C,I)=>Gt.createRetryablePromise(v=>J2(t)(e,I).then(x=>p(x)?Promise.resolve():v()));return Gt.createWaitablePromise(t.transporter.write({method:Ir.MethodEnum.Put,path:Gt.encode("1/keys/%s",e),data:u},n),h)},xC=t=>(e,r)=>Gt.createRetryablePromise(o=>aye(t)(e,r).then(a=>a.status!=="published"?o():void 0)),lye=t=>(e,r)=>{let o=(a,n)=>Zi(t)(a.taskID,n);return Gt.createWaitablePromise(t.transporter.write({method:Ir.MethodEnum.Post,path:Gt.encode("1/indexes/%s/batch",t.indexName),data:{requests:e}},r),o)},xmt=t=>e=>Dk({shouldStop:r=>r.cursor===void 0,...e,request:r=>t.transporter.read({method:Ir.MethodEnum.Post,path:Gt.encode("1/indexes/%s/browse",t.indexName),data:r},e)}),kmt=t=>e=>{let r={hitsPerPage:1e3,...e};return Dk({shouldStop:o=>o.hits.length({...a,hits:a.hits.map(n=>(delete n._highlightResult,n))}))}})},Qmt=t=>e=>{let r={hitsPerPage:1e3,...e};return Dk({shouldStop:o=>o.hits.length({...a,hits:a.hits.map(n=>(delete n._highlightResult,n))}))}})},Sk=t=>(e,r,o)=>{let{batchSize:a,...n}=o||{},u={taskIDs:[],objectIDs:[]},A=(p=0)=>{let h=[],C;for(C=p;C({action:r,body:I})),n).then(I=>(u.objectIDs=u.objectIDs.concat(I.objectIDs),u.taskIDs.push(I.taskID),C++,A(C)))};return Gt.createWaitablePromise(A(),(p,h)=>Promise.all(p.taskIDs.map(C=>Zi(t)(C,h))))},Fmt=t=>e=>Gt.createWaitablePromise(t.transporter.write({method:Ir.MethodEnum.Post,path:Gt.encode("1/indexes/%s/clear",t.indexName)},e),(r,o)=>Zi(t)(r.taskID,o)),Rmt=t=>e=>{let{forwardToReplicas:r,...o}=e||{},a=Na.createMappedRequestOptions(o);return r&&(a.queryParameters.forwardToReplicas=1),Gt.createWaitablePromise(t.transporter.write({method:Ir.MethodEnum.Post,path:Gt.encode("1/indexes/%s/rules/clear",t.indexName)},a),(n,u)=>Zi(t)(n.taskID,u))},Tmt=t=>e=>{let{forwardToReplicas:r,...o}=e||{},a=Na.createMappedRequestOptions(o);return r&&(a.queryParameters.forwardToReplicas=1),Gt.createWaitablePromise(t.transporter.write({method:Ir.MethodEnum.Post,path:Gt.encode("1/indexes/%s/synonyms/clear",t.indexName)},a),(n,u)=>Zi(t)(n.taskID,u))},Nmt=t=>(e,r)=>Gt.createWaitablePromise(t.transporter.write({method:Ir.MethodEnum.Post,path:Gt.encode("1/indexes/%s/deleteByQuery",t.indexName),data:e},r),(o,a)=>Zi(t)(o.taskID,a)),Lmt=t=>e=>Gt.createWaitablePromise(t.transporter.write({method:Ir.MethodEnum.Delete,path:Gt.encode("1/indexes/%s",t.indexName)},e),(r,o)=>Zi(t)(r.taskID,o)),Omt=t=>(e,r)=>Gt.createWaitablePromise(cye(t)([e],r).then(o=>({taskID:o.taskIDs[0]})),(o,a)=>Zi(t)(o.taskID,a)),cye=t=>(e,r)=>{let o=e.map(a=>({objectID:a}));return Sk(t)(o,tm.DeleteObject,r)},Mmt=t=>(e,r)=>{let{forwardToReplicas:o,...a}=r||{},n=Na.createMappedRequestOptions(a);return o&&(n.queryParameters.forwardToReplicas=1),Gt.createWaitablePromise(t.transporter.write({method:Ir.MethodEnum.Delete,path:Gt.encode("1/indexes/%s/rules/%s",t.indexName,e)},n),(u,A)=>Zi(t)(u.taskID,A))},Umt=t=>(e,r)=>{let{forwardToReplicas:o,...a}=r||{},n=Na.createMappedRequestOptions(a);return o&&(n.queryParameters.forwardToReplicas=1),Gt.createWaitablePromise(t.transporter.write({method:Ir.MethodEnum.Delete,path:Gt.encode("1/indexes/%s/synonyms/%s",t.indexName,e)},n),(u,A)=>Zi(t)(u.taskID,A))},_mt=t=>e=>uye(t)(e).then(()=>!0).catch(r=>{if(r.status!==404)throw r;return!1}),Hmt=t=>(e,r,o)=>t.transporter.read({method:Ir.MethodEnum.Post,path:Gt.encode("1/answers/%s/prediction",t.indexName),data:{query:e,queryLanguages:r},cacheable:!0},o),jmt=t=>(e,r)=>{let{query:o,paginate:a,...n}=r||{},u=0,A=()=>pye(t)(o||"",{...n,page:u}).then(p=>{for(let[h,C]of Object.entries(p.hits))if(e(C))return{object:C,position:parseInt(h,10),page:u};if(u++,a===!1||u>=p.nbPages)throw sye();return A()});return A()},qmt=t=>(e,r)=>t.transporter.read({method:Ir.MethodEnum.Get,path:Gt.encode("1/indexes/%s/%s",t.indexName,e)},r),Gmt=()=>(t,e)=>{for(let[r,o]of Object.entries(t.hits))if(o.objectID===e)return parseInt(r,10);return-1},Ymt=t=>(e,r)=>{let{attributesToRetrieve:o,...a}=r||{},n=e.map(u=>({indexName:t.indexName,objectID:u,...o?{attributesToRetrieve:o}:{}}));return t.transporter.read({method:Ir.MethodEnum.Post,path:"1/indexes/*/objects",data:{requests:n}},a)},Wmt=t=>(e,r)=>t.transporter.read({method:Ir.MethodEnum.Get,path:Gt.encode("1/indexes/%s/rules/%s",t.indexName,e)},r),uye=t=>e=>t.transporter.read({method:Ir.MethodEnum.Get,path:Gt.encode("1/indexes/%s/settings",t.indexName),data:{getVersion:2}},e),Kmt=t=>(e,r)=>t.transporter.read({method:Ir.MethodEnum.Get,path:Gt.encode("1/indexes/%s/synonyms/%s",t.indexName,e)},r),Aye=t=>(e,r)=>t.transporter.read({method:Ir.MethodEnum.Get,path:Gt.encode("1/indexes/%s/task/%s",t.indexName,e.toString())},r),Vmt=t=>(e,r)=>Gt.createWaitablePromise(fye(t)([e],r).then(o=>({objectID:o.objectIDs[0],taskID:o.taskIDs[0]})),(o,a)=>Zi(t)(o.taskID,a)),fye=t=>(e,r)=>{let{createIfNotExists:o,...a}=r||{},n=o?tm.PartialUpdateObject:tm.PartialUpdateObjectNoCreate;return Sk(t)(e,n,a)},zmt=t=>(e,r)=>{let{safe:o,autoGenerateObjectIDIfNotExist:a,batchSize:n,...u}=r||{},A=(E,R,L,U)=>Gt.createWaitablePromise(t.transporter.write({method:Ir.MethodEnum.Post,path:Gt.encode("1/indexes/%s/operation",E),data:{operation:L,destination:R}},U),(z,te)=>Zi(t)(z.taskID,te)),p=Math.random().toString(36).substring(7),h=`${t.indexName}_tmp_${p}`,C=YH({appId:t.appId,transporter:t.transporter,indexName:h}),I=[],v=A(t.indexName,h,"copy",{...u,scope:["settings","synonyms","rules"]});I.push(v);let x=(o?v.wait(u):v).then(()=>{let E=C(e,{...u,autoGenerateObjectIDIfNotExist:a,batchSize:n});return I.push(E),o?E.wait(u):E}).then(()=>{let E=A(h,t.indexName,"move",u);return I.push(E),o?E.wait(u):E}).then(()=>Promise.all(I)).then(([E,R,L])=>({objectIDs:R.objectIDs,taskIDs:[E.taskID,...R.taskIDs,L.taskID]}));return Gt.createWaitablePromise(x,(E,R)=>Promise.all(I.map(L=>L.wait(R))))},Jmt=t=>(e,r)=>WH(t)(e,{...r,clearExistingRules:!0}),Xmt=t=>(e,r)=>KH(t)(e,{...r,clearExistingSynonyms:!0}),Zmt=t=>(e,r)=>Gt.createWaitablePromise(YH(t)([e],r).then(o=>({objectID:o.objectIDs[0],taskID:o.taskIDs[0]})),(o,a)=>Zi(t)(o.taskID,a)),YH=t=>(e,r)=>{let{autoGenerateObjectIDIfNotExist:o,...a}=r||{},n=o?tm.AddObject:tm.UpdateObject;if(n===tm.UpdateObject){for(let u of e)if(u.objectID===void 0)return Gt.createWaitablePromise(Promise.reject(iye()))}return Sk(t)(e,n,a)},$mt=t=>(e,r)=>WH(t)([e],r),WH=t=>(e,r)=>{let{forwardToReplicas:o,clearExistingRules:a,...n}=r||{},u=Na.createMappedRequestOptions(n);return o&&(u.queryParameters.forwardToReplicas=1),a&&(u.queryParameters.clearExistingRules=1),Gt.createWaitablePromise(t.transporter.write({method:Ir.MethodEnum.Post,path:Gt.encode("1/indexes/%s/rules/batch",t.indexName),data:e},u),(A,p)=>Zi(t)(A.taskID,p))},eyt=t=>(e,r)=>KH(t)([e],r),KH=t=>(e,r)=>{let{forwardToReplicas:o,clearExistingSynonyms:a,replaceExistingSynonyms:n,...u}=r||{},A=Na.createMappedRequestOptions(u);return o&&(A.queryParameters.forwardToReplicas=1),(n||a)&&(A.queryParameters.replaceExistingSynonyms=1),Gt.createWaitablePromise(t.transporter.write({method:Ir.MethodEnum.Post,path:Gt.encode("1/indexes/%s/synonyms/batch",t.indexName),data:e},A),(p,h)=>Zi(t)(p.taskID,h))},pye=t=>(e,r)=>t.transporter.read({method:Ir.MethodEnum.Post,path:Gt.encode("1/indexes/%s/query",t.indexName),data:{query:e},cacheable:!0},r),hye=t=>(e,r,o)=>t.transporter.read({method:Ir.MethodEnum.Post,path:Gt.encode("1/indexes/%s/facets/%s/query",t.indexName,e),data:{facetQuery:r},cacheable:!0},o),gye=t=>(e,r)=>t.transporter.read({method:Ir.MethodEnum.Post,path:Gt.encode("1/indexes/%s/rules/search",t.indexName),data:{query:e}},r),dye=t=>(e,r)=>t.transporter.read({method:Ir.MethodEnum.Post,path:Gt.encode("1/indexes/%s/synonyms/search",t.indexName),data:{query:e}},r),tyt=t=>(e,r)=>{let{forwardToReplicas:o,...a}=r||{},n=Na.createMappedRequestOptions(a);return o&&(n.queryParameters.forwardToReplicas=1),Gt.createWaitablePromise(t.transporter.write({method:Ir.MethodEnum.Put,path:Gt.encode("1/indexes/%s/settings",t.indexName),data:e},n),(u,A)=>Zi(t)(u.taskID,A))},Zi=t=>(e,r)=>Gt.createRetryablePromise(o=>Aye(t)(e,r).then(a=>a.status!=="published"?o():void 0)),ryt={AddObject:"addObject",Analytics:"analytics",Browser:"browse",DeleteIndex:"deleteIndex",DeleteObject:"deleteObject",EditSettings:"editSettings",ListIndexes:"listIndexes",Logs:"logs",Personalization:"personalization",Recommendation:"recommendation",Search:"search",SeeUnretrievableAttributes:"seeUnretrievableAttributes",Settings:"settings",Usage:"usage"},tm={AddObject:"addObject",UpdateObject:"updateObject",PartialUpdateObject:"partialUpdateObject",PartialUpdateObjectNoCreate:"partialUpdateObjectNoCreate",DeleteObject:"deleteObject",DeleteIndex:"delete",ClearIndex:"clear"},bk={Settings:"settings",Synonyms:"synonyms",Rules:"rules"},nyt={None:"none",StopIfEnoughMatches:"stopIfEnoughMatches"},iyt={Synonym:"synonym",OneWaySynonym:"oneWaySynonym",AltCorrection1:"altCorrection1",AltCorrection2:"altCorrection2",Placeholder:"placeholder"};Ft.ApiKeyACLEnum=ryt;Ft.BatchActionEnum=tm;Ft.ScopeEnum=bk;Ft.StrategyEnum=nyt;Ft.SynonymEnum=iyt;Ft.addApiKey=zdt;Ft.assignUserID=Jdt;Ft.assignUserIDs=Xdt;Ft.batch=lye;Ft.browseObjects=xmt;Ft.browseRules=kmt;Ft.browseSynonyms=Qmt;Ft.chunkedBatch=Sk;Ft.clearDictionaryEntries=Zdt;Ft.clearObjects=Fmt;Ft.clearRules=Rmt;Ft.clearSynonyms=Tmt;Ft.copyIndex=Pk;Ft.copyRules=$dt;Ft.copySettings=emt;Ft.copySynonyms=tmt;Ft.createBrowsablePromise=Dk;Ft.createMissingObjectIDError=iye;Ft.createObjectNotFoundError=sye;Ft.createSearchClient=Vdt;Ft.createValidUntilNotFoundError=oye;Ft.customRequest=rmt;Ft.deleteApiKey=nmt;Ft.deleteBy=Nmt;Ft.deleteDictionaryEntries=imt;Ft.deleteIndex=Lmt;Ft.deleteObject=Omt;Ft.deleteObjects=cye;Ft.deleteRule=Mmt;Ft.deleteSynonym=Umt;Ft.exists=_mt;Ft.findAnswers=Hmt;Ft.findObject=jmt;Ft.generateSecuredApiKey=smt;Ft.getApiKey=J2;Ft.getAppTask=aye;Ft.getDictionarySettings=omt;Ft.getLogs=amt;Ft.getObject=qmt;Ft.getObjectPosition=Gmt;Ft.getObjects=Ymt;Ft.getRule=Wmt;Ft.getSecuredApiKeyRemainingValidity=lmt;Ft.getSettings=uye;Ft.getSynonym=Kmt;Ft.getTask=Aye;Ft.getTopUserIDs=cmt;Ft.getUserID=umt;Ft.hasPendingMappings=Amt;Ft.initIndex=X2;Ft.listApiKeys=fmt;Ft.listClusters=pmt;Ft.listIndices=hmt;Ft.listUserIDs=gmt;Ft.moveIndex=dmt;Ft.multipleBatch=mmt;Ft.multipleGetObjects=ymt;Ft.multipleQueries=Emt;Ft.multipleSearchForFacetValues=Cmt;Ft.partialUpdateObject=Vmt;Ft.partialUpdateObjects=fye;Ft.removeUserID=wmt;Ft.replaceAllObjects=zmt;Ft.replaceAllRules=Jmt;Ft.replaceAllSynonyms=Xmt;Ft.replaceDictionaryEntries=Imt;Ft.restoreApiKey=Bmt;Ft.saveDictionaryEntries=vmt;Ft.saveObject=Zmt;Ft.saveObjects=YH;Ft.saveRule=$mt;Ft.saveRules=WH;Ft.saveSynonym=eyt;Ft.saveSynonyms=KH;Ft.search=pye;Ft.searchDictionaryEntries=Dmt;Ft.searchForFacetValues=hye;Ft.searchRules=gye;Ft.searchSynonyms=dye;Ft.searchUserIDs=Pmt;Ft.setDictionarySettings=Smt;Ft.setSettings=tyt;Ft.updateApiKey=bmt;Ft.waitAppTask=xC;Ft.waitTask=Zi});var Eye=_((YWt,yye)=>{yye.exports=mye()});var Cye=_(xk=>{"use strict";Object.defineProperty(xk,"__esModule",{value:!0});function syt(){return{debug(t,e){return Promise.resolve()},info(t,e){return Promise.resolve()},error(t,e){return Promise.resolve()}}}var oyt={Debug:1,Info:2,Error:3};xk.LogLevelEnum=oyt;xk.createNullLogger=syt});var Iye=_((KWt,wye)=>{wye.exports=Cye()});var Pye=_(VH=>{"use strict";Object.defineProperty(VH,"__esModule",{value:!0});var Bye=Be("http"),vye=Be("https"),ayt=Be("url"),Dye={keepAlive:!0},lyt=new Bye.Agent(Dye),cyt=new vye.Agent(Dye);function uyt({agent:t,httpAgent:e,httpsAgent:r,requesterOptions:o={}}={}){let a=e||t||lyt,n=r||t||cyt;return{send(u){return new Promise(A=>{let p=ayt.parse(u.url),h=p.query===null?p.pathname:`${p.pathname}?${p.query}`,C={...o,agent:p.protocol==="https:"?n:a,hostname:p.hostname,path:h,method:u.method,headers:{...o&&o.headers?o.headers:{},...u.headers},...p.port!==void 0?{port:p.port||""}:{}},I=(p.protocol==="https:"?vye:Bye).request(C,R=>{let L=[];R.on("data",U=>{L=L.concat(U)}),R.on("end",()=>{clearTimeout(x),clearTimeout(E),A({status:R.statusCode||0,content:Buffer.concat(L).toString(),isTimedOut:!1})})}),v=(R,L)=>setTimeout(()=>{I.abort(),A({status:0,content:L,isTimedOut:!0})},R*1e3),x=v(u.connectTimeout,"Connection timeout"),E;I.on("error",R=>{clearTimeout(x),clearTimeout(E),A({status:0,content:R.message,isTimedOut:!1})}),I.once("response",()=>{clearTimeout(x),E=v(u.responseTimeout,"Socket timeout")}),u.data!==void 0&&I.write(u.data),I.end()})},destroy(){return a.destroy(),n.destroy(),Promise.resolve()}}}VH.createNodeHttpRequester=uyt});var bye=_((zWt,Sye)=>{Sye.exports=Pye()});var Fye=_((JWt,Qye)=>{"use strict";var xye=Pme(),Ayt=xme(),kC=$me(),JH=G2(),zH=nye(),Ut=Eye(),fyt=Iye(),pyt=bye(),hyt=K2();function kye(t,e,r){let o={appId:t,apiKey:e,timeouts:{connect:2,read:5,write:30},requester:pyt.createNodeHttpRequester(),logger:fyt.createNullLogger(),responsesCache:xye.createNullCache(),requestsCache:xye.createNullCache(),hostsCache:Ayt.createInMemoryCache(),userAgent:hyt.createUserAgent(JH.version).add({segment:"Node.js",version:process.versions.node})},a={...o,...r},n=()=>u=>zH.createPersonalizationClient({...o,...u,methods:{getPersonalizationStrategy:zH.getPersonalizationStrategy,setPersonalizationStrategy:zH.setPersonalizationStrategy}});return Ut.createSearchClient({...a,methods:{search:Ut.multipleQueries,searchForFacetValues:Ut.multipleSearchForFacetValues,multipleBatch:Ut.multipleBatch,multipleGetObjects:Ut.multipleGetObjects,multipleQueries:Ut.multipleQueries,copyIndex:Ut.copyIndex,copySettings:Ut.copySettings,copyRules:Ut.copyRules,copySynonyms:Ut.copySynonyms,moveIndex:Ut.moveIndex,listIndices:Ut.listIndices,getLogs:Ut.getLogs,listClusters:Ut.listClusters,multipleSearchForFacetValues:Ut.multipleSearchForFacetValues,getApiKey:Ut.getApiKey,addApiKey:Ut.addApiKey,listApiKeys:Ut.listApiKeys,updateApiKey:Ut.updateApiKey,deleteApiKey:Ut.deleteApiKey,restoreApiKey:Ut.restoreApiKey,assignUserID:Ut.assignUserID,assignUserIDs:Ut.assignUserIDs,getUserID:Ut.getUserID,searchUserIDs:Ut.searchUserIDs,listUserIDs:Ut.listUserIDs,getTopUserIDs:Ut.getTopUserIDs,removeUserID:Ut.removeUserID,hasPendingMappings:Ut.hasPendingMappings,generateSecuredApiKey:Ut.generateSecuredApiKey,getSecuredApiKeyRemainingValidity:Ut.getSecuredApiKeyRemainingValidity,destroy:JH.destroy,clearDictionaryEntries:Ut.clearDictionaryEntries,deleteDictionaryEntries:Ut.deleteDictionaryEntries,getDictionarySettings:Ut.getDictionarySettings,getAppTask:Ut.getAppTask,replaceDictionaryEntries:Ut.replaceDictionaryEntries,saveDictionaryEntries:Ut.saveDictionaryEntries,searchDictionaryEntries:Ut.searchDictionaryEntries,setDictionarySettings:Ut.setDictionarySettings,waitAppTask:Ut.waitAppTask,customRequest:Ut.customRequest,initIndex:u=>A=>Ut.initIndex(u)(A,{methods:{batch:Ut.batch,delete:Ut.deleteIndex,findAnswers:Ut.findAnswers,getObject:Ut.getObject,getObjects:Ut.getObjects,saveObject:Ut.saveObject,saveObjects:Ut.saveObjects,search:Ut.search,searchForFacetValues:Ut.searchForFacetValues,waitTask:Ut.waitTask,setSettings:Ut.setSettings,getSettings:Ut.getSettings,partialUpdateObject:Ut.partialUpdateObject,partialUpdateObjects:Ut.partialUpdateObjects,deleteObject:Ut.deleteObject,deleteObjects:Ut.deleteObjects,deleteBy:Ut.deleteBy,clearObjects:Ut.clearObjects,browseObjects:Ut.browseObjects,getObjectPosition:Ut.getObjectPosition,findObject:Ut.findObject,exists:Ut.exists,saveSynonym:Ut.saveSynonym,saveSynonyms:Ut.saveSynonyms,getSynonym:Ut.getSynonym,searchSynonyms:Ut.searchSynonyms,browseSynonyms:Ut.browseSynonyms,deleteSynonym:Ut.deleteSynonym,clearSynonyms:Ut.clearSynonyms,replaceAllObjects:Ut.replaceAllObjects,replaceAllSynonyms:Ut.replaceAllSynonyms,searchRules:Ut.searchRules,getRule:Ut.getRule,deleteRule:Ut.deleteRule,saveRule:Ut.saveRule,saveRules:Ut.saveRules,replaceAllRules:Ut.replaceAllRules,browseRules:Ut.browseRules,clearRules:Ut.clearRules}}),initAnalytics:()=>u=>kC.createAnalyticsClient({...o,...u,methods:{addABTest:kC.addABTest,getABTest:kC.getABTest,getABTests:kC.getABTests,stopABTest:kC.stopABTest,deleteABTest:kC.deleteABTest}}),initPersonalization:n,initRecommendation:()=>u=>(a.logger.info("The `initRecommendation` method is deprecated. Use `initPersonalization` instead."),n()(u))}})}kye.version=JH.version;Qye.exports=kye});var ZH=_((XWt,XH)=>{var Rye=Fye();XH.exports=Rye;XH.exports.default=Rye});var t6=_(($Wt,Lye)=>{"use strict";var Nye=Object.getOwnPropertySymbols,dyt=Object.prototype.hasOwnProperty,myt=Object.prototype.propertyIsEnumerable;function yyt(t){if(t==null)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(t)}function Eyt(){try{if(!Object.assign)return!1;var t=new String("abc");if(t[5]="de",Object.getOwnPropertyNames(t)[0]==="5")return!1;for(var e={},r=0;r<10;r++)e["_"+String.fromCharCode(r)]=r;var o=Object.getOwnPropertyNames(e).map(function(n){return e[n]});if(o.join("")!=="0123456789")return!1;var a={};return"abcdefghijklmnopqrst".split("").forEach(function(n){a[n]=n}),Object.keys(Object.assign({},a)).join("")==="abcdefghijklmnopqrst"}catch{return!1}}Lye.exports=Eyt()?Object.assign:function(t,e){for(var r,o=yyt(t),a,n=1;n{"use strict";var o6=t6(),$c=typeof Symbol=="function"&&Symbol.for,Z2=$c?Symbol.for("react.element"):60103,Cyt=$c?Symbol.for("react.portal"):60106,wyt=$c?Symbol.for("react.fragment"):60107,Iyt=$c?Symbol.for("react.strict_mode"):60108,Byt=$c?Symbol.for("react.profiler"):60114,vyt=$c?Symbol.for("react.provider"):60109,Dyt=$c?Symbol.for("react.context"):60110,Pyt=$c?Symbol.for("react.forward_ref"):60112,Syt=$c?Symbol.for("react.suspense"):60113,byt=$c?Symbol.for("react.memo"):60115,xyt=$c?Symbol.for("react.lazy"):60116,Oye=typeof Symbol=="function"&&Symbol.iterator;function $2(t){for(var e="https://reactjs.org/docs/error-decoder.html?invariant="+t,r=1;rkk.length&&kk.push(t)}function n6(t,e,r,o){var a=typeof t;(a==="undefined"||a==="boolean")&&(t=null);var n=!1;if(t===null)n=!0;else switch(a){case"string":case"number":n=!0;break;case"object":switch(t.$$typeof){case Z2:case Cyt:n=!0}}if(n)return r(o,t,e===""?"."+r6(t,0):e),1;if(n=0,e=e===""?".":e+":",Array.isArray(t))for(var u=0;u{"use strict";zye.exports=Vye()});var f6=_((rKt,A6)=>{"use strict";var An=A6.exports;A6.exports.default=An;var Ln="\x1B[",eB="\x1B]",FC="\x07",Qk=";",Jye=process.env.TERM_PROGRAM==="Apple_Terminal";An.cursorTo=(t,e)=>{if(typeof t!="number")throw new TypeError("The `x` argument is required");return typeof e!="number"?Ln+(t+1)+"G":Ln+(e+1)+";"+(t+1)+"H"};An.cursorMove=(t,e)=>{if(typeof t!="number")throw new TypeError("The `x` argument is required");let r="";return t<0?r+=Ln+-t+"D":t>0&&(r+=Ln+t+"C"),e<0?r+=Ln+-e+"A":e>0&&(r+=Ln+e+"B"),r};An.cursorUp=(t=1)=>Ln+t+"A";An.cursorDown=(t=1)=>Ln+t+"B";An.cursorForward=(t=1)=>Ln+t+"C";An.cursorBackward=(t=1)=>Ln+t+"D";An.cursorLeft=Ln+"G";An.cursorSavePosition=Jye?"\x1B7":Ln+"s";An.cursorRestorePosition=Jye?"\x1B8":Ln+"u";An.cursorGetPosition=Ln+"6n";An.cursorNextLine=Ln+"E";An.cursorPrevLine=Ln+"F";An.cursorHide=Ln+"?25l";An.cursorShow=Ln+"?25h";An.eraseLines=t=>{let e="";for(let r=0;r[eB,"8",Qk,Qk,e,FC,t,eB,"8",Qk,Qk,FC].join("");An.image=(t,e={})=>{let r=`${eB}1337;File=inline=1`;return e.width&&(r+=`;width=${e.width}`),e.height&&(r+=`;height=${e.height}`),e.preserveAspectRatio===!1&&(r+=";preserveAspectRatio=0"),r+":"+t.toString("base64")+FC};An.iTerm={setCwd:(t=process.cwd())=>`${eB}50;CurrentDir=${t}${FC}`,annotation:(t,e={})=>{let r=`${eB}1337;`,o=typeof e.x<"u",a=typeof e.y<"u";if((o||a)&&!(o&&a&&typeof e.length<"u"))throw new Error("`x`, `y` and `length` must be defined when `x` or `y` is defined");return t=t.replace(/\|/g,""),r+=e.isHidden?"AddHiddenAnnotation=":"AddAnnotation=",e.length>0?r+=(o?[t,e.length,e.x,e.y]:[e.length,t]).join("|"):r+=t,r+FC}}});var Zye=_((nKt,p6)=>{"use strict";var Xye=(t,e)=>{for(let r of Reflect.ownKeys(e))Object.defineProperty(t,r,Object.getOwnPropertyDescriptor(e,r));return t};p6.exports=Xye;p6.exports.default=Xye});var eEe=_((iKt,Rk)=>{"use strict";var Nyt=Zye(),Fk=new WeakMap,$ye=(t,e={})=>{if(typeof t!="function")throw new TypeError("Expected a function");let r,o=0,a=t.displayName||t.name||"",n=function(...u){if(Fk.set(n,++o),o===1)r=t.apply(this,u),t=null;else if(e.throw===!0)throw new Error(`Function \`${a}\` can only be called once`);return r};return Nyt(n,t),Fk.set(n,o),n};Rk.exports=$ye;Rk.exports.default=$ye;Rk.exports.callCount=t=>{if(!Fk.has(t))throw new Error(`The given function \`${t.name}\` is not wrapped by the \`onetime\` package`);return Fk.get(t)}});var tEe=_((sKt,Tk)=>{Tk.exports=["SIGABRT","SIGALRM","SIGHUP","SIGINT","SIGTERM"];process.platform!=="win32"&&Tk.exports.push("SIGVTALRM","SIGXCPU","SIGXFSZ","SIGUSR2","SIGTRAP","SIGSYS","SIGQUIT","SIGIOT");process.platform==="linux"&&Tk.exports.push("SIGIO","SIGPOLL","SIGPWR","SIGSTKFLT","SIGUNUSED")});var d6=_((oKt,NC)=>{var Ei=global.process,rm=function(t){return t&&typeof t=="object"&&typeof t.removeListener=="function"&&typeof t.emit=="function"&&typeof t.reallyExit=="function"&&typeof t.listeners=="function"&&typeof t.kill=="function"&&typeof t.pid=="number"&&typeof t.on=="function"};rm(Ei)?(rEe=Be("assert"),RC=tEe(),nEe=/^win/i.test(Ei.platform),tB=Be("events"),typeof tB!="function"&&(tB=tB.EventEmitter),Ei.__signal_exit_emitter__?Ts=Ei.__signal_exit_emitter__:(Ts=Ei.__signal_exit_emitter__=new tB,Ts.count=0,Ts.emitted={}),Ts.infinite||(Ts.setMaxListeners(1/0),Ts.infinite=!0),NC.exports=function(t,e){if(!rm(global.process))return function(){};rEe.equal(typeof t,"function","a callback must be provided for exit handler"),TC===!1&&h6();var r="exit";e&&e.alwaysLast&&(r="afterexit");var o=function(){Ts.removeListener(r,t),Ts.listeners("exit").length===0&&Ts.listeners("afterexit").length===0&&Nk()};return Ts.on(r,t),o},Nk=function(){!TC||!rm(global.process)||(TC=!1,RC.forEach(function(e){try{Ei.removeListener(e,Lk[e])}catch{}}),Ei.emit=Ok,Ei.reallyExit=g6,Ts.count-=1)},NC.exports.unload=Nk,nm=function(e,r,o){Ts.emitted[e]||(Ts.emitted[e]=!0,Ts.emit(e,r,o))},Lk={},RC.forEach(function(t){Lk[t]=function(){if(!!rm(global.process)){var r=Ei.listeners(t);r.length===Ts.count&&(Nk(),nm("exit",null,t),nm("afterexit",null,t),nEe&&t==="SIGHUP"&&(t="SIGINT"),Ei.kill(Ei.pid,t))}}}),NC.exports.signals=function(){return RC},TC=!1,h6=function(){TC||!rm(global.process)||(TC=!0,Ts.count+=1,RC=RC.filter(function(e){try{return Ei.on(e,Lk[e]),!0}catch{return!1}}),Ei.emit=sEe,Ei.reallyExit=iEe)},NC.exports.load=h6,g6=Ei.reallyExit,iEe=function(e){!rm(global.process)||(Ei.exitCode=e||0,nm("exit",Ei.exitCode,null),nm("afterexit",Ei.exitCode,null),g6.call(Ei,Ei.exitCode))},Ok=Ei.emit,sEe=function(e,r){if(e==="exit"&&rm(global.process)){r!==void 0&&(Ei.exitCode=r);var o=Ok.apply(this,arguments);return nm("exit",Ei.exitCode,null),nm("afterexit",Ei.exitCode,null),o}else return Ok.apply(this,arguments)}):NC.exports=function(){return function(){}};var rEe,RC,nEe,tB,Ts,Nk,nm,Lk,TC,h6,g6,iEe,Ok,sEe});var aEe=_((aKt,oEe)=>{"use strict";var Lyt=eEe(),Oyt=d6();oEe.exports=Lyt(()=>{Oyt(()=>{process.stderr.write("\x1B[?25h")},{alwaysLast:!0})})});var m6=_(LC=>{"use strict";var Myt=aEe(),Mk=!1;LC.show=(t=process.stderr)=>{!t.isTTY||(Mk=!1,t.write("\x1B[?25h"))};LC.hide=(t=process.stderr)=>{!t.isTTY||(Myt(),Mk=!0,t.write("\x1B[?25l"))};LC.toggle=(t,e)=>{t!==void 0&&(Mk=t),Mk?LC.show(e):LC.hide(e)}});var AEe=_(rB=>{"use strict";var uEe=rB&&rB.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(rB,"__esModule",{value:!0});var lEe=uEe(f6()),cEe=uEe(m6()),Uyt=(t,{showCursor:e=!1}={})=>{let r=0,o="",a=!1,n=u=>{!e&&!a&&(cEe.default.hide(),a=!0);let A=u+` +`;A!==o&&(o=A,t.write(lEe.default.eraseLines(r)+A),r=A.split(` +`).length)};return n.clear=()=>{t.write(lEe.default.eraseLines(r)),o="",r=0},n.done=()=>{o="",r=0,e||(cEe.default.show(),a=!1)},n};rB.default={create:Uyt}});var fEe=_((uKt,_yt)=>{_yt.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 gEe=_(gl=>{"use strict";var hEe=fEe(),pA=process.env;Object.defineProperty(gl,"_vendors",{value:hEe.map(function(t){return t.constant})});gl.name=null;gl.isPR=null;hEe.forEach(function(t){var e=Array.isArray(t.env)?t.env:[t.env],r=e.every(function(o){return pEe(o)});if(gl[t.constant]=r,r)switch(gl.name=t.name,typeof t.pr){case"string":gl.isPR=!!pA[t.pr];break;case"object":"env"in t.pr?gl.isPR=t.pr.env in pA&&pA[t.pr.env]!==t.pr.ne:"any"in t.pr?gl.isPR=t.pr.any.some(function(o){return!!pA[o]}):gl.isPR=pEe(t.pr);break;default:gl.isPR=null}});gl.isCI=!!(pA.CI||pA.CONTINUOUS_INTEGRATION||pA.BUILD_NUMBER||pA.RUN_ID||gl.name);function pEe(t){return typeof t=="string"?!!pA[t]:Object.keys(t).every(function(e){return pA[e]===t[e]})}});var mEe=_((fKt,dEe)=>{"use strict";dEe.exports=gEe().isCI});var EEe=_((pKt,yEe)=>{"use strict";var Hyt=t=>{let e=new Set;do for(let r of Reflect.ownKeys(t))e.add([t,r]);while((t=Reflect.getPrototypeOf(t))&&t!==Object.prototype);return e};yEe.exports=(t,{include:e,exclude:r}={})=>{let o=a=>{let n=u=>typeof u=="string"?a===u:u.test(a);return e?e.some(n):r?!r.some(n):!0};for(let[a,n]of Hyt(t.constructor.prototype)){if(n==="constructor"||!o(n))continue;let u=Reflect.getOwnPropertyDescriptor(a,n);u&&typeof u.value=="function"&&(t[n]=t[n].bind(t))}return t}});var PEe=_(kn=>{"use strict";Object.defineProperty(kn,"__esModule",{value:!0});var MC,sB,qk,Gk,v6;typeof window>"u"||typeof MessageChannel!="function"?(OC=null,y6=null,E6=function(){if(OC!==null)try{var t=kn.unstable_now();OC(!0,t),OC=null}catch(e){throw setTimeout(E6,0),e}},CEe=Date.now(),kn.unstable_now=function(){return Date.now()-CEe},MC=function(t){OC!==null?setTimeout(MC,0,t):(OC=t,setTimeout(E6,0))},sB=function(t,e){y6=setTimeout(t,e)},qk=function(){clearTimeout(y6)},Gk=function(){return!1},v6=kn.unstable_forceFrameRate=function(){}):(Uk=window.performance,C6=window.Date,wEe=window.setTimeout,IEe=window.clearTimeout,typeof console<"u"&&(BEe=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 BEe!="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 Uk=="object"&&typeof Uk.now=="function"?kn.unstable_now=function(){return Uk.now()}:(vEe=C6.now(),kn.unstable_now=function(){return C6.now()-vEe}),nB=!1,iB=null,_k=-1,w6=5,I6=0,Gk=function(){return kn.unstable_now()>=I6},v6=function(){},kn.unstable_forceFrameRate=function(t){0>t||125jk(u,r))p!==void 0&&0>jk(p,u)?(t[o]=p,t[A]=r,o=A):(t[o]=u,t[n]=r,o=n);else if(p!==void 0&&0>jk(p,r))t[o]=p,t[A]=r,o=A;else break e}}return e}return null}function jk(t,e){var r=t.sortIndex-e.sortIndex;return r!==0?r:t.id-e.id}var eu=[],m0=[],jyt=1,na=null,Lo=3,Wk=!1,im=!1,oB=!1;function Kk(t){for(var e=nc(m0);e!==null;){if(e.callback===null)Yk(m0);else if(e.startTime<=t)Yk(m0),e.sortIndex=e.expirationTime,D6(eu,e);else break;e=nc(m0)}}function P6(t){if(oB=!1,Kk(t),!im)if(nc(eu)!==null)im=!0,MC(S6);else{var e=nc(m0);e!==null&&sB(P6,e.startTime-t)}}function S6(t,e){im=!1,oB&&(oB=!1,qk()),Wk=!0;var r=Lo;try{for(Kk(e),na=nc(eu);na!==null&&(!(na.expirationTime>e)||t&&!Gk());){var o=na.callback;if(o!==null){na.callback=null,Lo=na.priorityLevel;var a=o(na.expirationTime<=e);e=kn.unstable_now(),typeof a=="function"?na.callback=a:na===nc(eu)&&Yk(eu),Kk(e)}else Yk(eu);na=nc(eu)}if(na!==null)var n=!0;else{var u=nc(m0);u!==null&&sB(P6,u.startTime-e),n=!1}return n}finally{na=null,Lo=r,Wk=!1}}function DEe(t){switch(t){case 1:return-1;case 2:return 250;case 5:return 1073741823;case 4:return 1e4;default:return 5e3}}var qyt=v6;kn.unstable_ImmediatePriority=1;kn.unstable_UserBlockingPriority=2;kn.unstable_NormalPriority=3;kn.unstable_IdlePriority=5;kn.unstable_LowPriority=4;kn.unstable_runWithPriority=function(t,e){switch(t){case 1:case 2:case 3:case 4:case 5:break;default:t=3}var r=Lo;Lo=t;try{return e()}finally{Lo=r}};kn.unstable_next=function(t){switch(Lo){case 1:case 2:case 3:var e=3;break;default:e=Lo}var r=Lo;Lo=e;try{return t()}finally{Lo=r}};kn.unstable_scheduleCallback=function(t,e,r){var o=kn.unstable_now();if(typeof r=="object"&&r!==null){var a=r.delay;a=typeof a=="number"&&0o?(t.sortIndex=a,D6(m0,t),nc(eu)===null&&t===nc(m0)&&(oB?qk():oB=!0,sB(P6,a-o))):(t.sortIndex=r,D6(eu,t),im||Wk||(im=!0,MC(S6))),t};kn.unstable_cancelCallback=function(t){t.callback=null};kn.unstable_wrapCallback=function(t){var e=Lo;return function(){var r=Lo;Lo=e;try{return t.apply(this,arguments)}finally{Lo=r}}};kn.unstable_getCurrentPriorityLevel=function(){return Lo};kn.unstable_shouldYield=function(){var t=kn.unstable_now();Kk(t);var e=nc(eu);return e!==na&&na!==null&&e!==null&&e.callback!==null&&e.startTime<=t&&e.expirationTime{"use strict";SEe.exports=PEe()});var bEe=_((dKt,aB)=>{aB.exports=function t(e){"use strict";var r=t6(),o=sn(),a=b6();function n(P){for(var D="https://reactjs.org/docs/error-decoder.html?invariant="+P,T=1;Tao||(P.current=yl[ao],yl[ao]=null,ao--)}function On(P,D){ao++,yl[ao]=P.current,P.current=D}var Ni={},Mn={current:Ni},_i={current:!1},tr=Ni;function Oe(P,D){var T=P.type.contextTypes;if(!T)return Ni;var j=P.stateNode;if(j&&j.__reactInternalMemoizedUnmaskedChildContext===D)return j.__reactInternalMemoizedMaskedChildContext;var Y={},fe;for(fe in T)Y[fe]=D[fe];return j&&(P=P.stateNode,P.__reactInternalMemoizedUnmaskedChildContext=D,P.__reactInternalMemoizedMaskedChildContext=Y),Y}function ii(P){return P=P.childContextTypes,P!=null}function Ma(P){Vn(_i,P),Vn(Mn,P)}function hr(P){Vn(_i,P),Vn(Mn,P)}function uc(P,D,T){if(Mn.current!==Ni)throw Error(n(168));On(Mn,D,P),On(_i,T,P)}function uu(P,D,T){var j=P.stateNode;if(P=D.childContextTypes,typeof j.getChildContext!="function")return T;j=j.getChildContext();for(var Y in j)if(!(Y in P))throw Error(n(108,ae(D)||"Unknown",Y));return r({},T,{},j)}function Ac(P){var D=P.stateNode;return D=D&&D.__reactInternalMemoizedMergedChildContext||Ni,tr=Mn.current,On(Mn,D,P),On(_i,_i.current,P),!0}function El(P,D,T){var j=P.stateNode;if(!j)throw Error(n(169));T?(D=uu(P,D,tr),j.__reactInternalMemoizedMergedChildContext=D,Vn(_i,P),Vn(Mn,P),On(Mn,D,P)):Vn(_i,P),On(_i,T,P)}var vA=a.unstable_runWithPriority,Au=a.unstable_scheduleCallback,Ce=a.unstable_cancelCallback,Rt=a.unstable_shouldYield,fc=a.unstable_requestPaint,Hi=a.unstable_now,fu=a.unstable_getCurrentPriorityLevel,Yt=a.unstable_ImmediatePriority,Cl=a.unstable_UserBlockingPriority,DA=a.unstable_NormalPriority,lp=a.unstable_LowPriority,pc=a.unstable_IdlePriority,PA={},Qn=fc!==void 0?fc:function(){},hi=null,hc=null,SA=!1,sa=Hi(),Li=1e4>sa?Hi:function(){return Hi()-sa};function _o(){switch(fu()){case Yt:return 99;case Cl:return 98;case DA:return 97;case lp:return 96;case pc:return 95;default:throw Error(n(332))}}function Ze(P){switch(P){case 99:return Yt;case 98:return Cl;case 97:return DA;case 96:return lp;case 95:return pc;default:throw Error(n(332))}}function lo(P,D){return P=Ze(P),vA(P,D)}function gc(P,D,T){return P=Ze(P),Au(P,D,T)}function pu(P){return hi===null?(hi=[P],hc=Au(Yt,hu)):hi.push(P),PA}function ji(){if(hc!==null){var P=hc;hc=null,Ce(P)}hu()}function hu(){if(!SA&&hi!==null){SA=!0;var P=0;try{var D=hi;lo(99,function(){for(;P=D&&(qo=!0),P.firstContext=null)}function ms(P,D){if(aa!==P&&D!==!1&&D!==0)if((typeof D!="number"||D===1073741823)&&(aa=P,D=1073741823),D={context:P,observedBits:D,next:null},Us===null){if(co===null)throw Error(n(308));Us=D,co.dependencies={expirationTime:0,firstContext:D,responders:null}}else Us=Us.next=D;return b?P._currentValue:P._currentValue2}var _s=!1;function Un(P){return{baseState:P,firstUpdate:null,lastUpdate:null,firstCapturedUpdate:null,lastCapturedUpdate:null,firstEffect:null,lastEffect:null,firstCapturedEffect:null,lastCapturedEffect:null}}function Pn(P){return{baseState:P.baseState,firstUpdate:P.firstUpdate,lastUpdate:P.lastUpdate,firstCapturedUpdate:null,lastCapturedUpdate:null,firstEffect:null,lastEffect:null,firstCapturedEffect:null,lastCapturedEffect:null}}function ys(P,D){return{expirationTime:P,suspenseConfig:D,tag:0,payload:null,callback:null,next:null,nextEffect:null}}function We(P,D){P.lastUpdate===null?P.firstUpdate=P.lastUpdate=D:(P.lastUpdate.next=D,P.lastUpdate=D)}function tt(P,D){var T=P.alternate;if(T===null){var j=P.updateQueue,Y=null;j===null&&(j=P.updateQueue=Un(P.memoizedState))}else j=P.updateQueue,Y=T.updateQueue,j===null?Y===null?(j=P.updateQueue=Un(P.memoizedState),Y=T.updateQueue=Un(T.memoizedState)):j=P.updateQueue=Pn(Y):Y===null&&(Y=T.updateQueue=Pn(j));Y===null||j===Y?We(j,D):j.lastUpdate===null||Y.lastUpdate===null?(We(j,D),We(Y,D)):(We(j,D),Y.lastUpdate=D)}function It(P,D){var T=P.updateQueue;T=T===null?P.updateQueue=Un(P.memoizedState):nr(P,T),T.lastCapturedUpdate===null?T.firstCapturedUpdate=T.lastCapturedUpdate=D:(T.lastCapturedUpdate.next=D,T.lastCapturedUpdate=D)}function nr(P,D){var T=P.alternate;return T!==null&&D===T.updateQueue&&(D=P.updateQueue=Pn(D)),D}function $(P,D,T,j,Y,fe){switch(T.tag){case 1:return P=T.payload,typeof P=="function"?P.call(fe,j,Y):P;case 3:P.effectTag=P.effectTag&-4097|64;case 0:if(P=T.payload,Y=typeof P=="function"?P.call(fe,j,Y):P,Y==null)break;return r({},j,Y);case 2:_s=!0}return j}function me(P,D,T,j,Y){_s=!1,D=nr(P,D);for(var fe=D.baseState,ve=null,vt=0,wt=D.firstUpdate,xt=fe;wt!==null;){var _r=wt.expirationTime;_rbn?(ai=Fr,Fr=null):ai=Fr.sibling;var en=di(rt,Fr,At[bn],Wt);if(en===null){Fr===null&&(Fr=ai);break}P&&Fr&&en.alternate===null&&D(rt,Fr),Ve=fe(en,Ve,bn),Sn===null?vr=en:Sn.sibling=en,Sn=en,Fr=ai}if(bn===At.length)return T(rt,Fr),vr;if(Fr===null){for(;bnbn?(ai=Fr,Fr=null):ai=Fr.sibling;var ho=di(rt,Fr,en.value,Wt);if(ho===null){Fr===null&&(Fr=ai);break}P&&Fr&&ho.alternate===null&&D(rt,Fr),Ve=fe(ho,Ve,bn),Sn===null?vr=ho:Sn.sibling=ho,Sn=ho,Fr=ai}if(en.done)return T(rt,Fr),vr;if(Fr===null){for(;!en.done;bn++,en=At.next())en=is(rt,en.value,Wt),en!==null&&(Ve=fe(en,Ve,bn),Sn===null?vr=en:Sn.sibling=en,Sn=en);return vr}for(Fr=j(rt,Fr);!en.done;bn++,en=At.next())en=po(Fr,rt,bn,en.value,Wt),en!==null&&(P&&en.alternate!==null&&Fr.delete(en.key===null?bn:en.key),Ve=fe(en,Ve,bn),Sn===null?vr=en:Sn.sibling=en,Sn=en);return P&&Fr.forEach(function(PF){return D(rt,PF)}),vr}return function(rt,Ve,At,Wt){var vr=typeof At=="object"&&At!==null&&At.type===C&&At.key===null;vr&&(At=At.props.children);var Sn=typeof At=="object"&&At!==null;if(Sn)switch(At.$$typeof){case p:e:{for(Sn=At.key,vr=Ve;vr!==null;){if(vr.key===Sn)if(vr.tag===7?At.type===C:vr.elementType===At.type){T(rt,vr.sibling),Ve=Y(vr,At.type===C?At.props.children:At.props,Wt),Ve.ref=kA(rt,vr,At),Ve.return=rt,rt=Ve;break e}else{T(rt,vr);break}else D(rt,vr);vr=vr.sibling}At.type===C?(Ve=bu(At.props.children,rt.mode,Wt,At.key),Ve.return=rt,rt=Ve):(Wt=_m(At.type,At.key,At.props,null,rt.mode,Wt),Wt.ref=kA(rt,Ve,At),Wt.return=rt,rt=Wt)}return ve(rt);case h:e:{for(vr=At.key;Ve!==null;){if(Ve.key===vr)if(Ve.tag===4&&Ve.stateNode.containerInfo===At.containerInfo&&Ve.stateNode.implementation===At.implementation){T(rt,Ve.sibling),Ve=Y(Ve,At.children||[],Wt),Ve.return=rt,rt=Ve;break e}else{T(rt,Ve);break}else D(rt,Ve);Ve=Ve.sibling}Ve=Qw(At,rt.mode,Wt),Ve.return=rt,rt=Ve}return ve(rt)}if(typeof At=="string"||typeof At=="number")return At=""+At,Ve!==null&&Ve.tag===6?(T(rt,Ve.sibling),Ve=Y(Ve,At,Wt),Ve.return=rt,rt=Ve):(T(rt,Ve),Ve=kw(At,rt.mode,Wt),Ve.return=rt,rt=Ve),ve(rt);if(xA(At))return KA(rt,Ve,At,Wt);if(Ae(At))return Yo(rt,Ve,At,Wt);if(Sn&&cp(rt,At),typeof At>"u"&&!vr)switch(rt.tag){case 1:case 0:throw rt=rt.type,Error(n(152,rt.displayName||rt.name||"Component"))}return T(rt,Ve)}}var gu=rg(!0),ng=rg(!1),du={},uo={current:du},QA={current:du},mc={current:du};function ca(P){if(P===du)throw Error(n(174));return P}function ig(P,D){On(mc,D,P),On(QA,P,P),On(uo,du,P),D=ne(D),Vn(uo,P),On(uo,D,P)}function yc(P){Vn(uo,P),Vn(QA,P),Vn(mc,P)}function Dm(P){var D=ca(mc.current),T=ca(uo.current);D=ee(T,P.type,D),T!==D&&(On(QA,P,P),On(uo,D,P))}function sg(P){QA.current===P&&(Vn(uo,P),Vn(QA,P))}var $n={current:0};function up(P){for(var D=P;D!==null;){if(D.tag===13){var T=D.memoizedState;if(T!==null&&(T=T.dehydrated,T===null||Ls(T)||so(T)))return D}else if(D.tag===19&&D.memoizedProps.revealOrder!==void 0){if((D.effectTag&64)!==0)return D}else if(D.child!==null){D.child.return=D,D=D.child;continue}if(D===P)break;for(;D.sibling===null;){if(D.return===null||D.return===P)return null;D=D.return}D.sibling.return=D.return,D=D.sibling}return null}function og(P,D){return{responder:P,props:D}}var FA=u.ReactCurrentDispatcher,Hs=u.ReactCurrentBatchConfig,mu=0,Ha=null,Gi=null,ua=null,yu=null,Es=null,Ec=null,Cc=0,G=null,Dt=0,wl=!1,xi=null,wc=0;function ct(){throw Error(n(321))}function Eu(P,D){if(D===null)return!1;for(var T=0;TCc&&(Cc=_r,Um(Cc))):(Dw(_r,wt.suspenseConfig),fe=wt.eagerReducer===P?wt.eagerState:P(fe,wt.action)),ve=wt,wt=wt.next}while(wt!==null&&wt!==j);xt||(vt=ve,Y=fe),hs(fe,D.memoizedState)||(qo=!0),D.memoizedState=fe,D.baseUpdate=vt,D.baseState=Y,T.lastRenderedState=fe}return[D.memoizedState,T.dispatch]}function lg(P){var D=RA();return typeof P=="function"&&(P=P()),D.memoizedState=D.baseState=P,P=D.queue={last:null,dispatch:null,lastRenderedReducer:Br,lastRenderedState:P},P=P.dispatch=pg.bind(null,Ha,P),[D.memoizedState,P]}function cg(P){return Cs(Br,P)}function ug(P,D,T,j){return P={tag:P,create:D,destroy:T,deps:j,next:null},G===null?(G={lastEffect:null},G.lastEffect=P.next=P):(D=G.lastEffect,D===null?G.lastEffect=P.next=P:(T=D.next,D.next=P,P.next=T,G.lastEffect=P)),P}function fp(P,D,T,j){var Y=RA();Dt|=P,Y.memoizedState=ug(D,T,void 0,j===void 0?null:j)}function Ic(P,D,T,j){var Y=Ap();j=j===void 0?null:j;var fe=void 0;if(Gi!==null){var ve=Gi.memoizedState;if(fe=ve.destroy,j!==null&&Eu(j,ve.deps)){ug(0,T,fe,j);return}}Dt|=P,Y.memoizedState=ug(D,T,fe,j)}function Ct(P,D){return fp(516,192,P,D)}function Pm(P,D){return Ic(516,192,P,D)}function Ag(P,D){if(typeof D=="function")return P=P(),D(P),function(){D(null)};if(D!=null)return P=P(),D.current=P,function(){D.current=null}}function fg(){}function Cu(P,D){return RA().memoizedState=[P,D===void 0?null:D],P}function Sm(P,D){var T=Ap();D=D===void 0?null:D;var j=T.memoizedState;return j!==null&&D!==null&&Eu(D,j[1])?j[0]:(T.memoizedState=[P,D],P)}function pg(P,D,T){if(!(25>wc))throw Error(n(301));var j=P.alternate;if(P===Ha||j!==null&&j===Ha)if(wl=!0,P={expirationTime:mu,suspenseConfig:null,action:T,eagerReducer:null,eagerState:null,next:null},xi===null&&(xi=new Map),T=xi.get(D),T===void 0)xi.set(D,P);else{for(D=T;D.next!==null;)D=D.next;D.next=P}else{var Y=ga(),fe=pt.suspense;Y=HA(Y,P,fe),fe={expirationTime:Y,suspenseConfig:fe,action:T,eagerReducer:null,eagerState:null,next:null};var ve=D.last;if(ve===null)fe.next=fe;else{var vt=ve.next;vt!==null&&(fe.next=vt),ve.next=fe}if(D.last=fe,P.expirationTime===0&&(j===null||j.expirationTime===0)&&(j=D.lastRenderedReducer,j!==null))try{var wt=D.lastRenderedState,xt=j(wt,T);if(fe.eagerReducer=j,fe.eagerState=xt,hs(xt,wt))return}catch{}finally{}Sc(P,Y)}}var wu={readContext:ms,useCallback:ct,useContext:ct,useEffect:ct,useImperativeHandle:ct,useLayoutEffect:ct,useMemo:ct,useReducer:ct,useRef:ct,useState:ct,useDebugValue:ct,useResponder:ct,useDeferredValue:ct,useTransition:ct},mw={readContext:ms,useCallback:Cu,useContext:ms,useEffect:Ct,useImperativeHandle:function(P,D,T){return T=T!=null?T.concat([P]):null,fp(4,36,Ag.bind(null,D,P),T)},useLayoutEffect:function(P,D){return fp(4,36,P,D)},useMemo:function(P,D){var T=RA();return D=D===void 0?null:D,P=P(),T.memoizedState=[P,D],P},useReducer:function(P,D,T){var j=RA();return D=T!==void 0?T(D):D,j.memoizedState=j.baseState=D,P=j.queue={last:null,dispatch:null,lastRenderedReducer:P,lastRenderedState:D},P=P.dispatch=pg.bind(null,Ha,P),[j.memoizedState,P]},useRef:function(P){var D=RA();return P={current:P},D.memoizedState=P},useState:lg,useDebugValue:fg,useResponder:og,useDeferredValue:function(P,D){var T=lg(P),j=T[0],Y=T[1];return Ct(function(){a.unstable_next(function(){var fe=Hs.suspense;Hs.suspense=D===void 0?null:D;try{Y(P)}finally{Hs.suspense=fe}})},[P,D]),j},useTransition:function(P){var D=lg(!1),T=D[0],j=D[1];return[Cu(function(Y){j(!0),a.unstable_next(function(){var fe=Hs.suspense;Hs.suspense=P===void 0?null:P;try{j(!1),Y()}finally{Hs.suspense=fe}})},[P,T]),T]}},bm={readContext:ms,useCallback:Sm,useContext:ms,useEffect:Pm,useImperativeHandle:function(P,D,T){return T=T!=null?T.concat([P]):null,Ic(4,36,Ag.bind(null,D,P),T)},useLayoutEffect:function(P,D){return Ic(4,36,P,D)},useMemo:function(P,D){var T=Ap();D=D===void 0?null:D;var j=T.memoizedState;return j!==null&&D!==null&&Eu(D,j[1])?j[0]:(P=P(),T.memoizedState=[P,D],P)},useReducer:Cs,useRef:function(){return Ap().memoizedState},useState:cg,useDebugValue:fg,useResponder:og,useDeferredValue:function(P,D){var T=cg(P),j=T[0],Y=T[1];return Pm(function(){a.unstable_next(function(){var fe=Hs.suspense;Hs.suspense=D===void 0?null:D;try{Y(P)}finally{Hs.suspense=fe}})},[P,D]),j},useTransition:function(P){var D=cg(!1),T=D[0],j=D[1];return[Sm(function(Y){j(!0),a.unstable_next(function(){var fe=Hs.suspense;Hs.suspense=P===void 0?null:P;try{j(!1),Y()}finally{Hs.suspense=fe}})},[P,T]),T]}},Aa=null,Bc=null,Il=!1;function Iu(P,D){var T=Dl(5,null,null,0);T.elementType="DELETED",T.type="DELETED",T.stateNode=D,T.return=P,T.effectTag=8,P.lastEffect!==null?(P.lastEffect.nextEffect=T,P.lastEffect=T):P.firstEffect=P.lastEffect=T}function hg(P,D){switch(P.tag){case 5:return D=io(D,P.type,P.pendingProps),D!==null?(P.stateNode=D,!0):!1;case 6:return D=Si(D,P.pendingProps),D!==null?(P.stateNode=D,!0):!1;case 13:return!1;default:return!1}}function TA(P){if(Il){var D=Bc;if(D){var T=D;if(!hg(P,D)){if(D=cc(T),!D||!hg(P,D)){P.effectTag=P.effectTag&-1025|2,Il=!1,Aa=P;return}Iu(Aa,T)}Aa=P,Bc=cu(D)}else P.effectTag=P.effectTag&-1025|2,Il=!1,Aa=P}}function pp(P){for(P=P.return;P!==null&&P.tag!==5&&P.tag!==3&&P.tag!==13;)P=P.return;Aa=P}function ja(P){if(!y||P!==Aa)return!1;if(!Il)return pp(P),Il=!0,!1;var D=P.type;if(P.tag!==5||D!=="head"&&D!=="body"&&!ke(D,P.memoizedProps))for(D=Bc;D;)Iu(P,D),D=cc(D);if(pp(P),P.tag===13){if(!y)throw Error(n(316));if(P=P.memoizedState,P=P!==null?P.dehydrated:null,!P)throw Error(n(317));Bc=Os(P)}else Bc=Aa?cc(P.stateNode):null;return!0}function gg(){y&&(Bc=Aa=null,Il=!1)}var hp=u.ReactCurrentOwner,qo=!1;function ws(P,D,T,j){D.child=P===null?ng(D,null,T,j):gu(D,P.child,T,j)}function Ii(P,D,T,j,Y){T=T.render;var fe=D.ref;return ds(D,Y),j=ag(P,D,T,j,fe,Y),P!==null&&!qo?(D.updateQueue=P.updateQueue,D.effectTag&=-517,P.expirationTime<=Y&&(P.expirationTime=0),si(P,D,Y)):(D.effectTag|=1,ws(P,D,j,Y),D.child)}function xm(P,D,T,j,Y,fe){if(P===null){var ve=T.type;return typeof ve=="function"&&!xw(ve)&&ve.defaultProps===void 0&&T.compare===null&&T.defaultProps===void 0?(D.tag=15,D.type=ve,km(P,D,ve,j,Y,fe)):(P=_m(T.type,null,j,null,D.mode,fe),P.ref=D.ref,P.return=D,D.child=P)}return ve=P.child,YD)&&_A.set(P,D)))}}function Bg(P,D){P.expirationTimeP?D:P)}function fo(P){if(P.lastExpiredTime!==0)P.callbackExpirationTime=1073741823,P.callbackPriority=99,P.callbackNode=pu(vw.bind(null,P));else{var D=Mm(P),T=P.callbackNode;if(D===0)T!==null&&(P.callbackNode=null,P.callbackExpirationTime=0,P.callbackPriority=90);else{var j=ga();if(D===1073741823?j=99:D===1||D===2?j=95:(j=10*(1073741821-D)-10*(1073741821-j),j=0>=j?99:250>=j?98:5250>=j?97:95),T!==null){var Y=P.callbackPriority;if(P.callbackExpirationTime===D&&Y>=j)return;T!==PA&&Ce(T)}P.callbackExpirationTime=D,P.callbackPriority=j,D=D===1073741823?pu(vw.bind(null,P)):gc(j,Wv.bind(null,P),{timeout:10*(1073741821-D)-Li()}),P.callbackNode=D}}}function Wv(P,D){if(Om=0,D)return D=ga(),Hm(P,D),fo(P),null;var T=Mm(P);if(T!==0){if(D=P.callbackNode,(yr&(rs|js))!==En)throw Error(n(327));if(wp(),P===gi&&T===ns||Pu(P,T),Or!==null){var j=yr;yr|=rs;var Y=qA(P);do try{gF();break}catch(vt){jA(P,vt)}while(1);if(la(),yr=j,yp.current=Y,Yi===Rm)throw D=Tm,Pu(P,T),WA(P,T),fo(P),D;if(Or===null)switch(Y=P.finishedWork=P.current.alternate,P.finishedExpirationTime=T,j=Yi,gi=null,j){case Bu:case Rm:throw Error(n(345));case Bi:Hm(P,2=T){P.lastPingedTime=T,Pu(P,T);break}}if(fe=Mm(P),fe!==0&&fe!==T)break;if(j!==0&&j!==T){P.lastPingedTime=j;break}P.timeoutHandle=Re(Su.bind(null,P),Y);break}Su(P);break;case vl:if(WA(P,T),j=P.lastSuspendedTime,T===j&&(P.nextKnownPendingLevel=Pw(Y)),MA&&(Y=P.lastPingedTime,Y===0||Y>=T)){P.lastPingedTime=T,Pu(P,T);break}if(Y=Mm(P),Y!==0&&Y!==T)break;if(j!==0&&j!==T){P.lastPingedTime=j;break}if(OA!==1073741823?j=10*(1073741821-OA)-Li():Ya===1073741823?j=0:(j=10*(1073741821-Ya)-5e3,Y=Li(),T=10*(1073741821-T)-Y,j=Y-j,0>j&&(j=0),j=(120>j?120:480>j?480:1080>j?1080:1920>j?1920:3e3>j?3e3:4320>j?4320:1960*Ew(j/1960))-j,T=j?j=0:(Y=ve.busyDelayMs|0,fe=Li()-(10*(1073741821-fe)-(ve.timeoutMs|0||5e3)),j=fe<=Y?0:Y+j-fe),10 component higher in the tree to provide a loading indicator or placeholder to display.`+ml(Y))}Yi!==Pc&&(Yi=Bi),fe=mg(fe,Y),wt=j;do{switch(wt.tag){case 3:ve=fe,wt.effectTag|=4096,wt.expirationTime=D;var Ve=Gv(wt,ve,D);It(wt,Ve);break e;case 1:ve=fe;var At=wt.type,Wt=wt.stateNode;if((wt.effectTag&64)===0&&(typeof At.getDerivedStateFromError=="function"||Wt!==null&&typeof Wt.componentDidCatch=="function"&&(Du===null||!Du.has(Wt)))){wt.effectTag|=4096,wt.expirationTime=D;var vr=Yv(wt,ve,D);It(wt,vr);break e}}wt=wt.return}while(wt!==null)}Or=Jv(Or)}catch(Sn){D=Sn;continue}break}while(1)}function qA(){var P=yp.current;return yp.current=wu,P===null?wu:P}function Dw(P,D){PEp&&(Ep=P)}function hF(){for(;Or!==null;)Or=zv(Or)}function gF(){for(;Or!==null&&!Rt();)Or=zv(Or)}function zv(P){var D=Zv(P.alternate,P,ns);return P.memoizedProps=P.pendingProps,D===null&&(D=Jv(P)),Cw.current=null,D}function Jv(P){Or=P;do{var D=Or.alternate;if(P=Or.return,(Or.effectTag&2048)===0){e:{var T=D;D=Or;var j=ns,Y=D.pendingProps;switch(D.tag){case 2:break;case 16:break;case 15:case 0:break;case 1:ii(D.type)&&Ma(D);break;case 3:yc(D),hr(D),Y=D.stateNode,Y.pendingContext&&(Y.context=Y.pendingContext,Y.pendingContext=null),(T===null||T.child===null)&&ja(D)&&pa(D),Bl(D);break;case 5:sg(D);var fe=ca(mc.current);if(j=D.type,T!==null&&D.stateNode!=null)ts(T,D,j,Y,fe),T.ref!==D.ref&&(D.effectTag|=128);else if(Y){if(T=ca(uo.current),ja(D)){if(Y=D,!y)throw Error(n(175));T=op(Y.stateNode,Y.type,Y.memoizedProps,fe,T,Y),Y.updateQueue=T,T=T!==null,T&&pa(D)}else{var ve=ht(j,Y,fe,T,D);vc(ve,D,!1,!1),D.stateNode=ve,lt(ve,j,Y,fe,T)&&pa(D)}D.ref!==null&&(D.effectTag|=128)}else if(D.stateNode===null)throw Error(n(166));break;case 6:if(T&&D.stateNode!=null)Gr(T,D,T.memoizedProps,Y);else{if(typeof Y!="string"&&D.stateNode===null)throw Error(n(166));if(T=ca(mc.current),fe=ca(uo.current),ja(D)){if(T=D,!y)throw Error(n(176));(T=ap(T.stateNode,T.memoizedProps,T))&&pa(D)}else D.stateNode=_e(Y,T,fe,D)}break;case 11:break;case 13:if(Vn($n,D),Y=D.memoizedState,(D.effectTag&64)!==0){D.expirationTime=j;break e}Y=Y!==null,fe=!1,T===null?D.memoizedProps.fallback!==void 0&&ja(D):(j=T.memoizedState,fe=j!==null,Y||j===null||(j=T.child.sibling,j!==null&&(ve=D.firstEffect,ve!==null?(D.firstEffect=j,j.nextEffect=ve):(D.firstEffect=D.lastEffect=j,j.nextEffect=null),j.effectTag=8))),Y&&!fe&&(D.mode&2)!==0&&(T===null&&D.memoizedProps.unstable_avoidThisFallback!==!0||($n.current&1)!==0?Yi===Bu&&(Yi=ha):((Yi===Bu||Yi===ha)&&(Yi=vl),Ep!==0&&gi!==null&&(WA(gi,ns),eD(gi,Ep)))),S&&Y&&(D.effectTag|=4),w&&(Y||fe)&&(D.effectTag|=4);break;case 7:break;case 8:break;case 12:break;case 4:yc(D),Bl(D);break;case 10:wi(D);break;case 9:break;case 14:break;case 17:ii(D.type)&&Ma(D);break;case 19:if(Vn($n,D),Y=D.memoizedState,Y===null)break;if(fe=(D.effectTag&64)!==0,ve=Y.rendering,ve===null){if(fe)Dc(Y,!1);else if(Yi!==Bu||T!==null&&(T.effectTag&64)!==0)for(T=D.child;T!==null;){if(ve=up(T),ve!==null){for(D.effectTag|=64,Dc(Y,!1),T=ve.updateQueue,T!==null&&(D.updateQueue=T,D.effectTag|=4),Y.lastEffect===null&&(D.firstEffect=null),D.lastEffect=Y.lastEffect,T=j,Y=D.child;Y!==null;)fe=Y,j=T,fe.effectTag&=2,fe.nextEffect=null,fe.firstEffect=null,fe.lastEffect=null,ve=fe.alternate,ve===null?(fe.childExpirationTime=0,fe.expirationTime=j,fe.child=null,fe.memoizedProps=null,fe.memoizedState=null,fe.updateQueue=null,fe.dependencies=null):(fe.childExpirationTime=ve.childExpirationTime,fe.expirationTime=ve.expirationTime,fe.child=ve.child,fe.memoizedProps=ve.memoizedProps,fe.memoizedState=ve.memoizedState,fe.updateQueue=ve.updateQueue,j=ve.dependencies,fe.dependencies=j===null?null:{expirationTime:j.expirationTime,firstContext:j.firstContext,responders:j.responders}),Y=Y.sibling;On($n,$n.current&1|2,D),D=D.child;break e}T=T.sibling}}else{if(!fe)if(T=up(ve),T!==null){if(D.effectTag|=64,fe=!0,T=T.updateQueue,T!==null&&(D.updateQueue=T,D.effectTag|=4),Dc(Y,!0),Y.tail===null&&Y.tailMode==="hidden"&&!ve.alternate){D=D.lastEffect=Y.lastEffect,D!==null&&(D.nextEffect=null);break}}else Li()>Y.tailExpiration&&1Y&&(Y=j),ve>Y&&(Y=ve),fe=fe.sibling;T.childExpirationTime=Y}if(D!==null)return D;P!==null&&(P.effectTag&2048)===0&&(P.firstEffect===null&&(P.firstEffect=Or.firstEffect),Or.lastEffect!==null&&(P.lastEffect!==null&&(P.lastEffect.nextEffect=Or.firstEffect),P.lastEffect=Or.lastEffect),1P?D:P}function Su(P){var D=_o();return lo(99,dF.bind(null,P,D)),null}function dF(P,D){do wp();while(wg!==null);if((yr&(rs|js))!==En)throw Error(n(327));var T=P.finishedWork,j=P.finishedExpirationTime;if(T===null)return null;if(P.finishedWork=null,P.finishedExpirationTime=0,T===P.current)throw Error(n(177));P.callbackNode=null,P.callbackExpirationTime=0,P.callbackPriority=90,P.nextKnownPendingLevel=0;var Y=Pw(T);if(P.firstPendingTime=Y,j<=P.lastSuspendedTime?P.firstSuspendedTime=P.lastSuspendedTime=P.nextKnownPendingLevel=0:j<=P.firstSuspendedTime&&(P.firstSuspendedTime=j-1),j<=P.lastPingedTime&&(P.lastPingedTime=0),j<=P.lastExpiredTime&&(P.lastExpiredTime=0),P===gi&&(Or=gi=null,ns=0),1=T?ln(P,D,T):(On($n,$n.current&1,D),D=si(P,D,T),D!==null?D.sibling:null);On($n,$n.current&1,D);break;case 19:if(j=D.childExpirationTime>=T,(P.effectTag&64)!==0){if(j)return qa(P,D,T);D.effectTag|=64}if(Y=D.memoizedState,Y!==null&&(Y.rendering=null,Y.tail=null),On($n,$n.current,D),!j)return null}return si(P,D,T)}qo=!1}}else qo=!1;switch(D.expirationTime=0,D.tag){case 2:if(j=D.type,P!==null&&(P.alternate=null,D.alternate=null,D.effectTag|=2),P=D.pendingProps,Y=Oe(D,Mn.current),ds(D,T),Y=ag(null,D,j,P,Y,T),D.effectTag|=1,typeof Y=="object"&&Y!==null&&typeof Y.render=="function"&&Y.$$typeof===void 0){if(D.tag=1,dw(),ii(j)){var fe=!0;Ac(D)}else fe=!1;D.memoizedState=Y.state!==null&&Y.state!==void 0?Y.state:null;var ve=j.getDerivedStateFromProps;typeof ve=="function"&&er(D,j,ve,P),Y.updater=Zr,D.stateNode=Y,Y._reactInternalFiber=D,jo(D,j,P,T),D=dp(null,D,j,!0,fe,T)}else D.tag=0,ws(null,D,Y,T),D=D.child;return D;case 16:if(Y=D.elementType,P!==null&&(P.alternate=null,D.alternate=null,D.effectTag|=2),P=D.pendingProps,ye(Y),Y._status!==1)throw Y._result;switch(Y=Y._result,D.type=Y,fe=D.tag=BF(Y),P=Ci(Y,P),fe){case 0:D=NA(null,D,Y,P,T);break;case 1:D=gp(null,D,Y,P,T);break;case 11:D=Ii(null,D,Y,P,T);break;case 14:D=xm(null,D,Y,Ci(Y.type,P),j,T);break;default:throw Error(n(306,Y,""))}return D;case 0:return j=D.type,Y=D.pendingProps,Y=D.elementType===j?Y:Ci(j,Y),NA(P,D,j,Y,T);case 1:return j=D.type,Y=D.pendingProps,Y=D.elementType===j?Y:Ci(j,Y),gp(P,D,j,Y,T);case 3:if(dg(D),j=D.updateQueue,j===null)throw Error(n(282));if(Y=D.memoizedState,Y=Y!==null?Y.element:null,me(D,j,D.pendingProps,null,T),j=D.memoizedState.element,j===Y)gg(),D=si(P,D,T);else{if((Y=D.stateNode.hydrate)&&(y?(Bc=cu(D.stateNode.containerInfo),Aa=D,Y=Il=!0):Y=!1),Y)for(T=ng(D,null,j,T),D.child=T;T;)T.effectTag=T.effectTag&-3|1024,T=T.sibling;else ws(P,D,j,T),gg();D=D.child}return D;case 5:return Dm(D),P===null&&TA(D),j=D.type,Y=D.pendingProps,fe=P!==null?P.memoizedProps:null,ve=Y.children,ke(j,Y)?ve=null:fe!==null&&ke(j,fe)&&(D.effectTag|=16),Go(P,D),D.mode&4&&T!==1&&be(j,Y)?(D.expirationTime=D.childExpirationTime=1,D=null):(ws(P,D,ve,T),D=D.child),D;case 6:return P===null&&TA(D),null;case 13:return ln(P,D,T);case 4:return ig(D,D.stateNode.containerInfo),j=D.pendingProps,P===null?D.child=gu(D,null,j,T):ws(P,D,j,T),D.child;case 11:return j=D.type,Y=D.pendingProps,Y=D.elementType===j?Y:Ci(j,Y),Ii(P,D,j,Y,T);case 7:return ws(P,D,D.pendingProps,T),D.child;case 8:return ws(P,D,D.pendingProps.children,T),D.child;case 12:return ws(P,D,D.pendingProps.children,T),D.child;case 10:e:{if(j=D.type._context,Y=D.pendingProps,ve=D.memoizedProps,fe=Y.value,Ho(D,fe),ve!==null){var vt=ve.value;if(fe=hs(vt,fe)?0:(typeof j._calculateChangedBits=="function"?j._calculateChangedBits(vt,fe):1073741823)|0,fe===0){if(ve.children===Y.children&&!_i.current){D=si(P,D,T);break e}}else for(vt=D.child,vt!==null&&(vt.return=D);vt!==null;){var wt=vt.dependencies;if(wt!==null){ve=vt.child;for(var xt=wt.firstContext;xt!==null;){if(xt.context===j&&(xt.observedBits&fe)!==0){vt.tag===1&&(xt=ys(T,null),xt.tag=2,tt(vt,xt)),vt.expirationTime"u")return!1;var D=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(D.isDisabled||!D.supportsFiber)return!0;try{var T=D.inject(P);Sw=function(j){try{D.onCommitFiberRoot(T,j,void 0,(j.current.effectTag&64)===64)}catch{}},bw=function(j){try{D.onCommitFiberUnmount(T,j)}catch{}}}catch{}return!0}function IF(P,D,T,j){this.tag=P,this.key=T,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.ref=null,this.pendingProps=D,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=j,this.effectTag=0,this.lastEffect=this.firstEffect=this.nextEffect=null,this.childExpirationTime=this.expirationTime=0,this.alternate=null}function Dl(P,D,T,j){return new IF(P,D,T,j)}function xw(P){return P=P.prototype,!(!P||!P.isReactComponent)}function BF(P){if(typeof P=="function")return xw(P)?1:0;if(P!=null){if(P=P.$$typeof,P===L)return 11;if(P===te)return 14}return 2}function YA(P,D){var T=P.alternate;return T===null?(T=Dl(P.tag,D,P.key,P.mode),T.elementType=P.elementType,T.type=P.type,T.stateNode=P.stateNode,T.alternate=P,P.alternate=T):(T.pendingProps=D,T.effectTag=0,T.nextEffect=null,T.firstEffect=null,T.lastEffect=null),T.childExpirationTime=P.childExpirationTime,T.expirationTime=P.expirationTime,T.child=P.child,T.memoizedProps=P.memoizedProps,T.memoizedState=P.memoizedState,T.updateQueue=P.updateQueue,D=P.dependencies,T.dependencies=D===null?null:{expirationTime:D.expirationTime,firstContext:D.firstContext,responders:D.responders},T.sibling=P.sibling,T.index=P.index,T.ref=P.ref,T}function _m(P,D,T,j,Y,fe){var ve=2;if(j=P,typeof P=="function")xw(P)&&(ve=1);else if(typeof P=="string")ve=5;else e:switch(P){case C:return bu(T.children,Y,fe,D);case R:ve=8,Y|=7;break;case I:ve=8,Y|=1;break;case v:return P=Dl(12,T,D,Y|8),P.elementType=v,P.type=v,P.expirationTime=fe,P;case U:return P=Dl(13,T,D,Y),P.type=U,P.elementType=U,P.expirationTime=fe,P;case z:return P=Dl(19,T,D,Y),P.elementType=z,P.expirationTime=fe,P;default:if(typeof P=="object"&&P!==null)switch(P.$$typeof){case x:ve=10;break e;case E:ve=9;break e;case L:ve=11;break e;case te:ve=14;break e;case le:ve=16,j=null;break e}throw Error(n(130,P==null?P:typeof P,""))}return D=Dl(ve,T,D,Y),D.elementType=P,D.type=j,D.expirationTime=fe,D}function bu(P,D,T,j){return P=Dl(7,P,j,D),P.expirationTime=T,P}function kw(P,D,T){return P=Dl(6,P,null,D),P.expirationTime=T,P}function Qw(P,D,T){return D=Dl(4,P.children!==null?P.children:[],P.key,D),D.expirationTime=T,D.stateNode={containerInfo:P.containerInfo,pendingChildren:null,implementation:P.implementation},D}function vF(P,D,T){this.tag=D,this.current=null,this.containerInfo=P,this.pingCache=this.pendingChildren=null,this.finishedExpirationTime=0,this.finishedWork=null,this.timeoutHandle=He,this.pendingContext=this.context=null,this.hydrate=T,this.callbackNode=null,this.callbackPriority=90,this.lastExpiredTime=this.lastPingedTime=this.nextKnownPendingLevel=this.lastSuspendedTime=this.firstSuspendedTime=this.firstPendingTime=0}function $v(P,D){var T=P.firstSuspendedTime;return P=P.lastSuspendedTime,T!==0&&T>=D&&P<=D}function WA(P,D){var T=P.firstSuspendedTime,j=P.lastSuspendedTime;TD||T===0)&&(P.lastSuspendedTime=D),D<=P.lastPingedTime&&(P.lastPingedTime=0),D<=P.lastExpiredTime&&(P.lastExpiredTime=0)}function eD(P,D){D>P.firstPendingTime&&(P.firstPendingTime=D);var T=P.firstSuspendedTime;T!==0&&(D>=T?P.firstSuspendedTime=P.lastSuspendedTime=P.nextKnownPendingLevel=0:D>=P.lastSuspendedTime&&(P.lastSuspendedTime=D+1),D>P.nextKnownPendingLevel&&(P.nextKnownPendingLevel=D))}function Hm(P,D){var T=P.lastExpiredTime;(T===0||T>D)&&(P.lastExpiredTime=D)}function tD(P){var D=P._reactInternalFiber;if(D===void 0)throw typeof P.render=="function"?Error(n(188)):Error(n(268,Object.keys(P)));return P=Ee(D),P===null?null:P.stateNode}function rD(P,D){P=P.memoizedState,P!==null&&P.dehydrated!==null&&P.retryTime{"use strict";xEe.exports=bEe()});var FEe=_((yKt,QEe)=>{"use strict";var Gyt={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};QEe.exports=Gyt});var LEe=_((EKt,NEe)=>{"use strict";var Yyt=Object.assign||function(t){for(var e=1;e"}}]),t}(),REe=function(){Vk(t,null,[{key:"fromJS",value:function(r){var o=r.width,a=r.height;return new t(o,a)}}]);function t(e,r){k6(this,t),this.width=e,this.height=r}return Vk(t,[{key:"fromJS",value:function(r){r(this.width,this.height)}},{key:"toString",value:function(){return""}}]),t}(),TEe=function(){function t(e,r){k6(this,t),this.unit=e,this.value=r}return Vk(t,[{key:"fromJS",value:function(r){r(this.unit,this.value)}},{key:"toString",value:function(){switch(this.unit){case tu.UNIT_POINT:return String(this.value);case tu.UNIT_PERCENT:return this.value+"%";case tu.UNIT_AUTO:return"auto";default:return this.value+"?"}}},{key:"valueOf",value:function(){return this.value}}]),t}();NEe.exports=function(t,e){function r(u,A,p){var h=u[A];u[A]=function(){for(var C=arguments.length,I=Array(C),v=0;v1?I-1:0),x=1;x1&&arguments[1]!==void 0?arguments[1]:NaN,p=arguments.length>2&&arguments[2]!==void 0?arguments[2]:NaN,h=arguments.length>3&&arguments[3]!==void 0?arguments[3]:tu.DIRECTION_LTR;return u.call(this,A,p,h)}),Yyt({Config:e.Config,Node:e.Node,Layout:t("Layout",Wyt),Size:t("Size",REe),Value:t("Value",TEe),getInstanceCount:function(){return e.getInstanceCount.apply(e,arguments)}},tu)}});var OEe=_((exports,module)=>{(function(t,e){typeof define=="function"&&define.amd?define([],function(){return e}):typeof module=="object"&&module.exports?module.exports=e:(t.nbind=t.nbind||{}).init=e})(exports,function(Module,cb){typeof Module=="function"&&(cb=Module,Module={}),Module.onRuntimeInitialized=function(t,e){return function(){t&&t.apply(this,arguments);try{Module.ccall("nbind_init")}catch(r){e(r);return}e(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<"u"?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 Be=="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(e,r){nodeFS||(nodeFS={}("")),nodePath||(nodePath={}("")),e=nodePath.normalize(e);var o=nodeFS.readFileSync(e);return r?o:o.toString()},Module.readBinary=function(e){var r=Module.read(e,!0);return r.buffer||(r=new Uint8Array(r)),assert(r.buffer),r},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),typeof module<"u"&&(module.exports=Module),Module.inspect=function(){return"[Emscripten Module object]"}}else if(ENVIRONMENT_IS_SHELL)Module.print||(Module.print=print),typeof printErr<"u"&&(Module.printErr=printErr),typeof read<"u"?Module.read=read:Module.read=function(){throw"no read() available"},Module.readBinary=function(e){if(typeof readbuffer=="function")return new Uint8Array(readbuffer(e));var r=read(e,"binary");return assert(typeof r=="object"),r},typeof scriptArgs<"u"?Module.arguments=scriptArgs:typeof arguments<"u"&&(Module.arguments=arguments),typeof quit=="function"&&(Module.quit=function(t,e){quit(t)});else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){if(Module.read=function(e){var r=new XMLHttpRequest;return r.open("GET",e,!1),r.send(null),r.responseText},ENVIRONMENT_IS_WORKER&&(Module.readBinary=function(e){var r=new XMLHttpRequest;return r.open("GET",e,!1),r.responseType="arraybuffer",r.send(null),new Uint8Array(r.response)}),Module.readAsync=function(e,r,o){var a=new XMLHttpRequest;a.open("GET",e,!0),a.responseType="arraybuffer",a.onload=function(){a.status==200||a.status==0&&a.response?r(a.response):o()},a.onerror=o,a.send(null)},typeof arguments<"u"&&(Module.arguments=arguments),typeof console<"u")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&&typeof dump<"u"?function(t){dump(t)}:function(t){})}ENVIRONMENT_IS_WORKER&&(Module.load=importScripts),typeof Module.setWindowTitle>"u"&&(Module.setWindowTitle=function(t){document.title=t})}else throw"Unknown runtime environment. Where are we?";function globalEval(t){eval.call(null,t)}!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(t,e){throw e}),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(t){return tempRet0=t,t},getTempRet0:function(){return tempRet0},stackSave:function(){return STACKTOP},stackRestore:function(t){STACKTOP=t},getNativeTypeSize:function(t){switch(t){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(t[t.length-1]==="*")return Runtime.QUANTUM_SIZE;if(t[0]==="i"){var e=parseInt(t.substr(1));return assert(e%8===0),e/8}else return 0}}},getNativeFieldSize:function(t){return Math.max(Runtime.getNativeTypeSize(t),Runtime.QUANTUM_SIZE)},STACK_ALIGN:16,prepVararg:function(t,e){return e==="double"||e==="i64"?t&7&&(assert((t&7)===4),t+=4):assert((t&3)===0),t},getAlignSize:function(t,e,r){return!r&&(t=="i64"||t=="double")?8:t?Math.min(e||(t?Runtime.getNativeFieldSize(t):0),Runtime.QUANTUM_SIZE):Math.min(e,8)},dynCall:function(t,e,r){return r&&r.length?Module["dynCall_"+t].apply(null,[e].concat(r)):Module["dynCall_"+t].call(null,e)},functionPointers:[],addFunction:function(t){for(var e=0;e>2],r=(e+t+15|0)&-16;if(HEAP32[DYNAMICTOP_PTR>>2]=r,r>=TOTAL_MEMORY){var o=enlargeMemory();if(!o)return HEAP32[DYNAMICTOP_PTR>>2]=e,0}return e},alignMemory:function(t,e){var r=t=Math.ceil(t/(e||16))*(e||16);return r},makeBigInt:function(t,e,r){var o=r?+(t>>>0)+ +(e>>>0)*4294967296:+(t>>>0)+ +(e|0)*4294967296;return o},GLOBAL_BASE:8,QUANTUM_SIZE:4,__dummy__:0};Module.Runtime=Runtime;var ABORT=0,EXITSTATUS=0;function assert(t,e){t||abort("Assertion failed: "+e)}function getCFunc(ident){var func=Module["_"+ident];if(!func)try{func=eval("_"+ident)}catch(t){}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(t){var e=Runtime.stackAlloc(t.length);return writeArrayToMemory(t,e),e},stringToC:function(t){var e=0;if(t!=null&&t!==0){var r=(t.length<<2)+1;e=Runtime.stackAlloc(r),stringToUTF8(t,e,r)}return e}},toC={string:JSfuncs.stringToC,array:JSfuncs.arrayToC};ccall=function(e,r,o,a,n){var u=getCFunc(e),A=[],p=0;if(a)for(var h=0;h>0]=e;break;case"i8":HEAP8[t>>0]=e;break;case"i16":HEAP16[t>>1]=e;break;case"i32":HEAP32[t>>2]=e;break;case"i64":tempI64=[e>>>0,(tempDouble=e,+Math_abs(tempDouble)>=1?tempDouble>0?(Math_min(+Math_floor(tempDouble/4294967296),4294967295)|0)>>>0:~~+Math_ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[t>>2]=tempI64[0],HEAP32[t+4>>2]=tempI64[1];break;case"float":HEAPF32[t>>2]=e;break;case"double":HEAPF64[t>>3]=e;break;default:abort("invalid type for setValue: "+r)}}Module.setValue=setValue;function getValue(t,e,r){switch(e=e||"i8",e.charAt(e.length-1)==="*"&&(e="i32"),e){case"i1":return HEAP8[t>>0];case"i8":return HEAP8[t>>0];case"i16":return HEAP16[t>>1];case"i32":return HEAP32[t>>2];case"i64":return HEAP32[t>>2];case"float":return HEAPF32[t>>2];case"double":return HEAPF64[t>>3];default:abort("invalid type for setValue: "+e)}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(t,e,r,o){var a,n;typeof t=="number"?(a=!0,n=t):(a=!1,n=t.length);var u=typeof e=="string"?e:null,A;if(r==ALLOC_NONE?A=o:A=[typeof _malloc=="function"?_malloc:Runtime.staticAlloc,Runtime.stackAlloc,Runtime.staticAlloc,Runtime.dynamicAlloc][r===void 0?ALLOC_STATIC:r](Math.max(n,u?1:e.length)),a){var o=A,p;for(assert((A&3)==0),p=A+(n&-4);o>2]=0;for(p=A+n;o>0]=0;return A}if(u==="i8")return t.subarray||t.slice?HEAPU8.set(t,A):HEAPU8.set(new Uint8Array(t),A),A;for(var h=0,C,I,v;h>0],r|=o,!(o==0&&!e||(a++,e&&a==e)););e||(e=a);var n="";if(r<128){for(var u=1024,A;e>0;)A=String.fromCharCode.apply(String,HEAPU8.subarray(t,t+Math.min(e,u))),n=n?n+A:A,t+=u,e-=u;return n}return Module.UTF8ToString(t)}Module.Pointer_stringify=Pointer_stringify;function AsciiToString(t){for(var e="";;){var r=HEAP8[t++>>0];if(!r)return e;e+=String.fromCharCode(r)}}Module.AsciiToString=AsciiToString;function stringToAscii(t,e){return writeAsciiToMemory(t,e,!1)}Module.stringToAscii=stringToAscii;var UTF8Decoder=typeof TextDecoder<"u"?new TextDecoder("utf8"):void 0;function UTF8ArrayToString(t,e){for(var r=e;t[r];)++r;if(r-e>16&&t.subarray&&UTF8Decoder)return UTF8Decoder.decode(t.subarray(e,r));for(var o,a,n,u,A,p,h="";;){if(o=t[e++],!o)return h;if(!(o&128)){h+=String.fromCharCode(o);continue}if(a=t[e++]&63,(o&224)==192){h+=String.fromCharCode((o&31)<<6|a);continue}if(n=t[e++]&63,(o&240)==224?o=(o&15)<<12|a<<6|n:(u=t[e++]&63,(o&248)==240?o=(o&7)<<18|a<<12|n<<6|u:(A=t[e++]&63,(o&252)==248?o=(o&3)<<24|a<<18|n<<12|u<<6|A:(p=t[e++]&63,o=(o&1)<<30|a<<24|n<<18|u<<12|A<<6|p))),o<65536)h+=String.fromCharCode(o);else{var C=o-65536;h+=String.fromCharCode(55296|C>>10,56320|C&1023)}}}Module.UTF8ArrayToString=UTF8ArrayToString;function UTF8ToString(t){return UTF8ArrayToString(HEAPU8,t)}Module.UTF8ToString=UTF8ToString;function stringToUTF8Array(t,e,r,o){if(!(o>0))return 0;for(var a=r,n=r+o-1,u=0;u=55296&&A<=57343&&(A=65536+((A&1023)<<10)|t.charCodeAt(++u)&1023),A<=127){if(r>=n)break;e[r++]=A}else if(A<=2047){if(r+1>=n)break;e[r++]=192|A>>6,e[r++]=128|A&63}else if(A<=65535){if(r+2>=n)break;e[r++]=224|A>>12,e[r++]=128|A>>6&63,e[r++]=128|A&63}else if(A<=2097151){if(r+3>=n)break;e[r++]=240|A>>18,e[r++]=128|A>>12&63,e[r++]=128|A>>6&63,e[r++]=128|A&63}else if(A<=67108863){if(r+4>=n)break;e[r++]=248|A>>24,e[r++]=128|A>>18&63,e[r++]=128|A>>12&63,e[r++]=128|A>>6&63,e[r++]=128|A&63}else{if(r+5>=n)break;e[r++]=252|A>>30,e[r++]=128|A>>24&63,e[r++]=128|A>>18&63,e[r++]=128|A>>12&63,e[r++]=128|A>>6&63,e[r++]=128|A&63}}return e[r]=0,r-a}Module.stringToUTF8Array=stringToUTF8Array;function stringToUTF8(t,e,r){return stringToUTF8Array(t,HEAPU8,e,r)}Module.stringToUTF8=stringToUTF8;function lengthBytesUTF8(t){for(var e=0,r=0;r=55296&&o<=57343&&(o=65536+((o&1023)<<10)|t.charCodeAt(++r)&1023),o<=127?++e:o<=2047?e+=2:o<=65535?e+=3:o<=2097151?e+=4:o<=67108863?e+=5:e+=6}return e}Module.lengthBytesUTF8=lengthBytesUTF8;var UTF16Decoder=typeof TextDecoder<"u"?new TextDecoder("utf-16le"):void 0;function demangle(t){var e=Module.___cxa_demangle||Module.__cxa_demangle;if(e){try{var r=t.substr(1),o=lengthBytesUTF8(r)+1,a=_malloc(o);stringToUTF8(r,a,o);var n=_malloc(4),u=e(a,0,0,n);if(getValue(n,"i32")===0&&u)return Pointer_stringify(u)}catch{}finally{a&&_free(a),n&&_free(n),u&&_free(u)}return t}return Runtime.warnOnce("warning: build with -s DEMANGLE_SUPPORT=1 to link in libcxxabi demangling"),t}function demangleAll(t){var e=/__Z[\w\d_]+/g;return t.replace(e,function(r){var o=demangle(r);return r===o?r:r+" ["+o+"]"})}function jsStackTrace(){var t=new Error;if(!t.stack){try{throw new Error(0)}catch(e){t=e}if(!t.stack)return"(no stack trace available)"}return t.stack.toString()}function stackTrace(){var t=jsStackTrace();return Module.extraStackTrace&&(t+=` +`+Module.extraStackTrace()),demangleAll(t)}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 e=t.shift();if(typeof e=="function"){e();continue}var r=e.func;typeof r=="number"?e.arg===void 0?Module.dynCall_v(r):Module.dynCall_vi(r,e.arg):r(e.arg===void 0?null:e.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(t){__ATPRERUN__.unshift(t)}Module.addOnPreRun=addOnPreRun;function addOnInit(t){__ATINIT__.unshift(t)}Module.addOnInit=addOnInit;function addOnPreMain(t){__ATMAIN__.unshift(t)}Module.addOnPreMain=addOnPreMain;function addOnExit(t){__ATEXIT__.unshift(t)}Module.addOnExit=addOnExit;function addOnPostRun(t){__ATPOSTRUN__.unshift(t)}Module.addOnPostRun=addOnPostRun;function intArrayFromString(t,e,r){var o=r>0?r:lengthBytesUTF8(t)+1,a=new Array(o),n=stringToUTF8Array(t,a,0,a.length);return e&&(a.length=n),a}Module.intArrayFromString=intArrayFromString;function intArrayToString(t){for(var e=[],r=0;r255&&(o&=255),e.push(String.fromCharCode(o))}return e.join("")}Module.intArrayToString=intArrayToString;function writeStringToMemory(t,e,r){Runtime.warnOnce("writeStringToMemory is deprecated and should not be called! Use stringToUTF8() instead!");var o,a;r&&(a=e+lengthBytesUTF8(t),o=HEAP8[a]),stringToUTF8(t,e,1/0),r&&(HEAP8[a]=o)}Module.writeStringToMemory=writeStringToMemory;function writeArrayToMemory(t,e){HEAP8.set(t,e)}Module.writeArrayToMemory=writeArrayToMemory;function writeAsciiToMemory(t,e,r){for(var o=0;o>0]=t.charCodeAt(o);r||(HEAP8[e>>0]=0)}if(Module.writeAsciiToMemory=writeAsciiToMemory,(!Math.imul||Math.imul(4294967295,5)!==-5)&&(Math.imul=function t(e,r){var o=e>>>16,a=e&65535,n=r>>>16,u=r&65535;return a*u+(o*u+a*n<<16)|0}),Math.imul=Math.imul,!Math.fround){var froundBuffer=new Float32Array(1);Math.fround=function(t){return froundBuffer[0]=t,froundBuffer[0]}}Math.fround=Math.fround,Math.clz32||(Math.clz32=function(t){t=t>>>0;for(var e=0;e<32;e++)if(t&1<<31-e)return e;return 32}),Math.clz32=Math.clz32,Math.trunc||(Math.trunc=function(t){return t<0?Math.ceil(t):Math.floor(t)}),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(t){return t}function addRunDependency(t){runDependencies++,Module.monitorRunDependencies&&Module.monitorRunDependencies(runDependencies)}Module.addRunDependency=addRunDependency;function removeRunDependency(t){if(runDependencies--,Module.monitorRunDependencies&&Module.monitorRunDependencies(runDependencies),runDependencies==0&&(runDependencyWatcher!==null&&(clearInterval(runDependencyWatcher),runDependencyWatcher=null),dependenciesFulfilled)){var e=dependenciesFulfilled;dependenciesFulfilled=null,e()}}Module.removeRunDependency=removeRunDependency,Module.preloadedImages={},Module.preloadedAudios={};var ASM_CONSTS=[function(t,e,r,o,a,n,u,A){return _nbind.callbackSignatureList[t].apply(this,arguments)}];function _emscripten_asm_const_iiiiiiii(t,e,r,o,a,n,u,A){return ASM_CONSTS[t](e,r,o,a,n,u,A)}function _emscripten_asm_const_iiiii(t,e,r,o,a){return ASM_CONSTS[t](e,r,o,a)}function _emscripten_asm_const_iiidddddd(t,e,r,o,a,n,u,A,p){return ASM_CONSTS[t](e,r,o,a,n,u,A,p)}function _emscripten_asm_const_iiididi(t,e,r,o,a,n,u){return ASM_CONSTS[t](e,r,o,a,n,u)}function _emscripten_asm_const_iiii(t,e,r,o){return ASM_CONSTS[t](e,r,o)}function _emscripten_asm_const_iiiid(t,e,r,o,a){return ASM_CONSTS[t](e,r,o,a)}function _emscripten_asm_const_iiiiii(t,e,r,o,a,n){return ASM_CONSTS[t](e,r,o,a,n)}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(t,e){__ATEXIT__.unshift({func:t,arg:e})}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(t,e,r,o){var a=arguments.length,n=a<3?e:o===null?o=Object.getOwnPropertyDescriptor(e,r):o,u;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")n=Reflect.decorate(t,e,r,o);else for(var A=t.length-1;A>=0;A--)(u=t[A])&&(n=(a<3?u(n):a>3?u(e,r,n):u(e,r))||n);return a>3&&n&&Object.defineProperty(e,r,n),n}function _defineHidden(t){return function(e,r){Object.defineProperty(e,r,{configurable:!1,enumerable:!1,value:t,writable:!0})}}var _nbind={};function __nbind_free_external(t){_nbind.externalList[t].dereference(t)}function __nbind_reference_external(t){_nbind.externalList[t].reference()}function _llvm_stackrestore(t){var e=_llvm_stacksave,r=e.LLVM_SAVEDSTACKS[t];e.LLVM_SAVEDSTACKS.splice(t,1),Runtime.stackRestore(r)}function __nbind_register_pool(t,e,r,o){_nbind.Pool.pageSize=t,_nbind.Pool.usedPtr=e/4,_nbind.Pool.rootPtr=r,_nbind.Pool.pagePtr=o/4,HEAP32[e/4]=16909060,HEAP8[e]==1&&(_nbind.bigEndian=!0),HEAP32[e/4]=0,_nbind.makeTypeKindTbl=(n={},n[1024]=_nbind.PrimitiveType,n[64]=_nbind.Int64Type,n[2048]=_nbind.BindClass,n[3072]=_nbind.BindClassPtr,n[4096]=_nbind.SharedClassPtr,n[5120]=_nbind.ArrayType,n[6144]=_nbind.ArrayType,n[7168]=_nbind.CStringType,n[9216]=_nbind.CallbackType,n[10240]=_nbind.BindType,n),_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 a=_nbind.makeType(_nbind.constructType,{flags:2048,id:0,name:""});a.proto=Module,_nbind.BindClass.list.push(a);var n}function _emscripten_set_main_loop_timing(t,e){if(Browser.mainLoop.timingMode=t,Browser.mainLoop.timingValue=e,!Browser.mainLoop.func)return 1;if(t==0)Browser.mainLoop.scheduler=function(){var u=Math.max(0,Browser.mainLoop.tickStartTime+e-_emscripten_get_now())|0;setTimeout(Browser.mainLoop.runner,u)},Browser.mainLoop.method="timeout";else if(t==1)Browser.mainLoop.scheduler=function(){Browser.requestAnimationFrame(Browser.mainLoop.runner)},Browser.mainLoop.method="rAF";else if(t==2){if(!window.setImmediate){let n=function(u){u.source===window&&u.data===o&&(u.stopPropagation(),r.shift()())};var a=n,r=[],o="setimmediate";window.addEventListener("message",n,!0),window.setImmediate=function(A){r.push(A),ENVIRONMENT_IS_WORKER?(Module.setImmediates===void 0&&(Module.setImmediates=[]),Module.setImmediates.push(A),window.postMessage({target:o})):window.postMessage(o,"*")}}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(t,e,r,o,a){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=t,Browser.mainLoop.arg=o;var n;typeof o<"u"?n=function(){Module.dynCall_vi(t,o)}:n=function(){Module.dynCall_v(t)};var u=Browser.mainLoop.currentlyRunningMainloop;if(Browser.mainLoop.runner=function(){if(!ABORT){if(Browser.mainLoop.queue.length>0){var p=Date.now(),h=Browser.mainLoop.queue.shift();if(h.func(h.arg),Browser.mainLoop.remainingBlockers){var C=Browser.mainLoop.remainingBlockers,I=C%1==0?C-1:Math.floor(C);h.counted?Browser.mainLoop.remainingBlockers=I:(I=I+.5,Browser.mainLoop.remainingBlockers=(8*C+I)/9)}if(console.log('main loop blocker "'+h.name+'" took '+(Date.now()-p)+" ms"),Browser.mainLoop.updateStatus(),u1&&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(n),!(u0?_emscripten_set_main_loop_timing(0,1e3/e):_emscripten_set_main_loop_timing(1,1),Browser.mainLoop.scheduler()),r)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 t=Browser.mainLoop.timingMode,e=Browser.mainLoop.timingValue,r=Browser.mainLoop.func;Browser.mainLoop.func=null,_emscripten_set_main_loop(r,0,!1,Browser.mainLoop.arg,!0),_emscripten_set_main_loop_timing(t,e),Browser.mainLoop.scheduler()},updateStatus:function(){if(Module.setStatus){var t=Module.statusMessage||"Please wait...",e=Browser.mainLoop.remainingBlockers,r=Browser.mainLoop.expectedBlockers;e?e"u"&&(console.log("warning: Browser does not support creating object URLs. Built-in browser image decoding will not be available."),Module.noImageDecoding=!0);var t={};t.canHandle=function(n){return!Module.noImageDecoding&&/\.(jpg|jpeg|png|bmp)$/i.test(n)},t.handle=function(n,u,A,p){var h=null;if(Browser.hasBlobConstructor)try{h=new Blob([n],{type:Browser.getMimetype(u)}),h.size!==n.length&&(h=new Blob([new Uint8Array(n).buffer],{type:Browser.getMimetype(u)}))}catch(x){Runtime.warnOnce("Blob constructor present but fails: "+x+"; falling back to blob builder")}if(!h){var C=new Browser.BlobBuilder;C.append(new Uint8Array(n).buffer),h=C.getBlob()}var I=Browser.URLObject.createObjectURL(h),v=new Image;v.onload=function(){assert(v.complete,"Image "+u+" could not be decoded");var E=document.createElement("canvas");E.width=v.width,E.height=v.height;var R=E.getContext("2d");R.drawImage(v,0,0),Module.preloadedImages[u]=E,Browser.URLObject.revokeObjectURL(I),A&&A(n)},v.onerror=function(E){console.log("Image "+I+" could not be decoded"),p&&p()},v.src=I},Module.preloadPlugins.push(t);var e={};e.canHandle=function(n){return!Module.noAudioDecoding&&n.substr(-4)in{".ogg":1,".wav":1,".mp3":1}},e.handle=function(n,u,A,p){var h=!1;function C(R){h||(h=!0,Module.preloadedAudios[u]=R,A&&A(n))}function I(){h||(h=!0,Module.preloadedAudios[u]=new Audio,p&&p())}if(Browser.hasBlobConstructor){try{var v=new Blob([n],{type:Browser.getMimetype(u)})}catch{return I()}var x=Browser.URLObject.createObjectURL(v),E=new Audio;E.addEventListener("canplaythrough",function(){C(E)},!1),E.onerror=function(L){if(h)return;console.log("warning: browser could not fully decode audio "+u+", trying slower base64 approach");function U(z){for(var te="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",le="=",he="",Ae=0,ye=0,ae=0;ae=6;){var Ie=Ae>>ye-6&63;ye-=6,he+=te[Ie]}return ye==2?(he+=te[(Ae&3)<<4],he+=le+le):ye==4&&(he+=te[(Ae&15)<<2],he+=le),he}E.src="data:audio/x-"+u.substr(-3)+";base64,"+U(n),C(E)},E.src=x,Browser.safeSetTimeout(function(){C(E)},1e4)}else return I()},Module.preloadPlugins.push(e);function r(){Browser.pointerLock=document.pointerLockElement===Module.canvas||document.mozPointerLockElement===Module.canvas||document.webkitPointerLockElement===Module.canvas||document.msPointerLockElement===Module.canvas}var o=Module.canvas;o&&(o.requestPointerLock=o.requestPointerLock||o.mozRequestPointerLock||o.webkitRequestPointerLock||o.msRequestPointerLock||function(){},o.exitPointerLock=document.exitPointerLock||document.mozExitPointerLock||document.webkitExitPointerLock||document.msExitPointerLock||function(){},o.exitPointerLock=o.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&&o.addEventListener("click",function(a){!Browser.pointerLock&&Module.canvas.requestPointerLock&&(Module.canvas.requestPointerLock(),a.preventDefault())},!1))},createContext:function(t,e,r,o){if(e&&Module.ctx&&t==Module.canvas)return Module.ctx;var a,n;if(e){var u={antialias:!1,alpha:!1};if(o)for(var A in o)u[A]=o[A];n=GL.createContext(t,u),n&&(a=GL.getContext(n).GLctx)}else a=t.getContext("2d");return a?(r&&(e||assert(typeof GLctx>"u","cannot set in module if GLctx is used, but we are a non-GL context that would replace it"),Module.ctx=a,e&&GL.makeContextCurrent(n),Module.useWebGL=e,Browser.moduleContextCreatedCallbacks.forEach(function(p){p()}),Browser.init()),a):null},destroyContext:function(t,e,r){},fullscreenHandlersInstalled:!1,lockPointer:void 0,resizeCanvas:void 0,requestFullscreen:function(t,e,r){Browser.lockPointer=t,Browser.resizeCanvas=e,Browser.vrDevice=r,typeof Browser.lockPointer>"u"&&(Browser.lockPointer=!0),typeof Browser.resizeCanvas>"u"&&(Browser.resizeCanvas=!1),typeof Browser.vrDevice>"u"&&(Browser.vrDevice=null);var o=Module.canvas;function a(){Browser.isFullscreen=!1;var u=o.parentNode;(document.fullscreenElement||document.mozFullScreenElement||document.msFullscreenElement||document.webkitFullscreenElement||document.webkitCurrentFullScreenElement)===u?(o.exitFullscreen=document.exitFullscreen||document.cancelFullScreen||document.mozCancelFullScreen||document.msExitFullscreen||document.webkitCancelFullScreen||function(){},o.exitFullscreen=o.exitFullscreen.bind(document),Browser.lockPointer&&o.requestPointerLock(),Browser.isFullscreen=!0,Browser.resizeCanvas&&Browser.setFullscreenCanvasSize()):(u.parentNode.insertBefore(o,u),u.parentNode.removeChild(u),Browser.resizeCanvas&&Browser.setWindowedCanvasSize()),Module.onFullScreen&&Module.onFullScreen(Browser.isFullscreen),Module.onFullscreen&&Module.onFullscreen(Browser.isFullscreen),Browser.updateCanvasDimensions(o)}Browser.fullscreenHandlersInstalled||(Browser.fullscreenHandlersInstalled=!0,document.addEventListener("fullscreenchange",a,!1),document.addEventListener("mozfullscreenchange",a,!1),document.addEventListener("webkitfullscreenchange",a,!1),document.addEventListener("MSFullscreenChange",a,!1));var n=document.createElement("div");o.parentNode.insertBefore(n,o),n.appendChild(o),n.requestFullscreen=n.requestFullscreen||n.mozRequestFullScreen||n.msRequestFullscreen||(n.webkitRequestFullscreen?function(){n.webkitRequestFullscreen(Element.ALLOW_KEYBOARD_INPUT)}:null)||(n.webkitRequestFullScreen?function(){n.webkitRequestFullScreen(Element.ALLOW_KEYBOARD_INPUT)}:null),r?n.requestFullscreen({vrDisplay:r}):n.requestFullscreen()},requestFullScreen:function(t,e,r){return Module.printErr("Browser.requestFullScreen() is deprecated. Please call Browser.requestFullscreen instead."),Browser.requestFullScreen=function(o,a,n){return Browser.requestFullscreen(o,a,n)},Browser.requestFullscreen(t,e,r)},nextRAF:0,fakeRequestAnimationFrame:function(t){var e=Date.now();if(Browser.nextRAF===0)Browser.nextRAF=e+1e3/60;else for(;e+2>=Browser.nextRAF;)Browser.nextRAF+=1e3/60;var r=Math.max(Browser.nextRAF-e,0);setTimeout(t,r)},requestAnimationFrame:function t(e){typeof window>"u"?Browser.fakeRequestAnimationFrame(e):(window.requestAnimationFrame||(window.requestAnimationFrame=window.requestAnimationFrame||window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame||window.msRequestAnimationFrame||window.oRequestAnimationFrame||Browser.fakeRequestAnimationFrame),window.requestAnimationFrame(e))},safeCallback:function(t){return function(){if(!ABORT)return t.apply(null,arguments)}},allowAsyncCallbacks:!0,queuedAsyncCallbacks:[],pauseAsyncCallbacks:function(){Browser.allowAsyncCallbacks=!1},resumeAsyncCallbacks:function(){if(Browser.allowAsyncCallbacks=!0,Browser.queuedAsyncCallbacks.length>0){var t=Browser.queuedAsyncCallbacks;Browser.queuedAsyncCallbacks=[],t.forEach(function(e){e()})}},safeRequestAnimationFrame:function(t){return Browser.requestAnimationFrame(function(){ABORT||(Browser.allowAsyncCallbacks?t():Browser.queuedAsyncCallbacks.push(t))})},safeSetTimeout:function(t,e){return Module.noExitRuntime=!0,setTimeout(function(){ABORT||(Browser.allowAsyncCallbacks?t():Browser.queuedAsyncCallbacks.push(t))},e)},safeSetInterval:function(t,e){return Module.noExitRuntime=!0,setInterval(function(){ABORT||Browser.allowAsyncCallbacks&&t()},e)},getMimetype:function(t){return{jpg:"image/jpeg",jpeg:"image/jpeg",png:"image/png",bmp:"image/bmp",ogg:"audio/ogg",wav:"audio/wav",mp3:"audio/mpeg"}[t.substr(t.lastIndexOf(".")+1)]},getUserMedia:function(t){window.getUserMedia||(window.getUserMedia=navigator.getUserMedia||navigator.mozGetUserMedia),window.getUserMedia(t)},getMovementX:function(t){return t.movementX||t.mozMovementX||t.webkitMovementX||0},getMovementY:function(t){return t.movementY||t.mozMovementY||t.webkitMovementY||0},getMouseWheelDelta:function(t){var e=0;switch(t.type){case"DOMMouseScroll":e=t.detail;break;case"mousewheel":e=t.wheelDelta;break;case"wheel":e=t.deltaY;break;default:throw"unrecognized mouse wheel event: "+t.type}return e},mouseX:0,mouseY:0,mouseMovementX:0,mouseMovementY:0,touches:{},lastTouches:{},calculateMouseEvent:function(t){if(Browser.pointerLock)t.type!="mousemove"&&"mozMovementX"in t?Browser.mouseMovementX=Browser.mouseMovementY=0:(Browser.mouseMovementX=Browser.getMovementX(t),Browser.mouseMovementY=Browser.getMovementY(t)),typeof SDL<"u"?(Browser.mouseX=SDL.mouseX+Browser.mouseMovementX,Browser.mouseY=SDL.mouseY+Browser.mouseMovementY):(Browser.mouseX+=Browser.mouseMovementX,Browser.mouseY+=Browser.mouseMovementY);else{var e=Module.canvas.getBoundingClientRect(),r=Module.canvas.width,o=Module.canvas.height,a=typeof window.scrollX<"u"?window.scrollX:window.pageXOffset,n=typeof window.scrollY<"u"?window.scrollY:window.pageYOffset;if(t.type==="touchstart"||t.type==="touchend"||t.type==="touchmove"){var u=t.touch;if(u===void 0)return;var A=u.pageX-(a+e.left),p=u.pageY-(n+e.top);A=A*(r/e.width),p=p*(o/e.height);var h={x:A,y:p};if(t.type==="touchstart")Browser.lastTouches[u.identifier]=h,Browser.touches[u.identifier]=h;else if(t.type==="touchend"||t.type==="touchmove"){var C=Browser.touches[u.identifier];C||(C=h),Browser.lastTouches[u.identifier]=C,Browser.touches[u.identifier]=h}return}var I=t.pageX-(a+e.left),v=t.pageY-(n+e.top);I=I*(r/e.width),v=v*(o/e.height),Browser.mouseMovementX=I-Browser.mouseX,Browser.mouseMovementY=v-Browser.mouseY,Browser.mouseX=I,Browser.mouseY=v}},asyncLoad:function(t,e,r,o){var a=o?"":"al "+t;Module.readAsync(t,function(n){assert(n,'Loading data file "'+t+'" failed (no arrayBuffer).'),e(new Uint8Array(n)),a&&removeRunDependency(a)},function(n){if(r)r();else throw'Loading data file "'+t+'" failed.'}),a&&addRunDependency(a)},resizeListeners:[],updateResizeListeners:function(){var t=Module.canvas;Browser.resizeListeners.forEach(function(e){e(t.width,t.height)})},setCanvasSize:function(t,e,r){var o=Module.canvas;Browser.updateCanvasDimensions(o,t,e),r||Browser.updateResizeListeners()},windowedWidth:0,windowedHeight:0,setFullscreenCanvasSize:function(){if(typeof SDL<"u"){var t=HEAPU32[SDL.screen+Runtime.QUANTUM_SIZE*0>>2];t=t|8388608,HEAP32[SDL.screen+Runtime.QUANTUM_SIZE*0>>2]=t}Browser.updateResizeListeners()},setWindowedCanvasSize:function(){if(typeof SDL<"u"){var t=HEAPU32[SDL.screen+Runtime.QUANTUM_SIZE*0>>2];t=t&-8388609,HEAP32[SDL.screen+Runtime.QUANTUM_SIZE*0>>2]=t}Browser.updateResizeListeners()},updateCanvasDimensions:function(t,e,r){e&&r?(t.widthNative=e,t.heightNative=r):(e=t.widthNative,r=t.heightNative);var o=e,a=r;if(Module.forcedAspectRatio&&Module.forcedAspectRatio>0&&(o/a>2];return e},getStr:function(){var t=Pointer_stringify(SYSCALLS.get());return t},get64:function(){var t=SYSCALLS.get(),e=SYSCALLS.get();return t>=0?assert(e===0):assert(e===-1),t},getZero:function(){assert(SYSCALLS.get()===0)}};function ___syscall6(t,e){SYSCALLS.varargs=e;try{var r=SYSCALLS.getStreamFromFD();return FS.close(r),0}catch(o){return(typeof FS>"u"||!(o instanceof FS.ErrnoError))&&abort(o),-o.errno}}function ___syscall54(t,e){SYSCALLS.varargs=e;try{return 0}catch(r){return(typeof FS>"u"||!(r instanceof FS.ErrnoError))&&abort(r),-r.errno}}function _typeModule(t){var e=[[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 r(p,h,C,I,v,x){if(h==1){var E=I&896;(E==128||E==256||E==384)&&(p="X const")}var R;return x?R=C.replace("X",p).replace("Y",v):R=p.replace("X",C).replace("Y",v),R.replace(/([*&]) (?=[*&])/g,"$1")}function o(p,h,C,I,v){throw new Error(p+" type "+C.replace("X",h+"?")+(I?" with flag "+I:"")+" in "+v)}function a(p,h,C,I,v,x,E,R){x===void 0&&(x="X"),R===void 0&&(R=1);var L=C(p);if(L)return L;var U=I(p),z=U.placeholderFlag,te=e[z];E&&te&&(x=r(E[2],E[0],x,te[0],"?",!0));var le;z==0&&(le="Unbound"),z>=10&&(le="Corrupt"),R>20&&(le="Deeply nested"),le&&o(le,p,x,z,v||"?");var he=U.paramList[0],Ae=a(he,h,C,I,v,x,te,R+1),ye,ae={flags:te[0],id:p,name:"",paramList:[Ae]},Ie=[],Fe="?";switch(U.placeholderFlag){case 1:ye=Ae.spec;break;case 2:if((Ae.flags&15360)==1024&&Ae.spec.ptrSize==1){ae.flags=7168;break}case 3:case 6:case 5:ye=Ae.spec,Ae.flags&15360;break;case 8:Fe=""+U.paramList[1],ae.paramList.push(U.paramList[1]);break;case 9:for(var g=0,Ee=U.paramList[1];g>2]=t),t}function _llvm_stacksave(){var t=_llvm_stacksave;return t.LLVM_SAVEDSTACKS||(t.LLVM_SAVEDSTACKS=[]),t.LLVM_SAVEDSTACKS.push(Runtime.stackSave()),t.LLVM_SAVEDSTACKS.length-1}function ___syscall140(t,e){SYSCALLS.varargs=e;try{var r=SYSCALLS.getStreamFromFD(),o=SYSCALLS.get(),a=SYSCALLS.get(),n=SYSCALLS.get(),u=SYSCALLS.get(),A=a;return FS.llseek(r,A,u),HEAP32[n>>2]=r.position,r.getdents&&A===0&&u===0&&(r.getdents=null),0}catch(p){return(typeof FS>"u"||!(p instanceof FS.ErrnoError))&&abort(p),-p.errno}}function ___syscall146(t,e){SYSCALLS.varargs=e;try{var r=SYSCALLS.get(),o=SYSCALLS.get(),a=SYSCALLS.get(),n=0;___syscall146.buffer||(___syscall146.buffers=[null,[],[]],___syscall146.printChar=function(C,I){var v=___syscall146.buffers[C];assert(v),I===0||I===10?((C===1?Module.print:Module.printErr)(UTF8ArrayToString(v,0)),v.length=0):v.push(I)});for(var u=0;u>2],p=HEAP32[o+(u*8+4)>>2],h=0;h"u"||!(C instanceof FS.ErrnoError))&&abort(C),-C.errno}}function __nbind_finish(){for(var t=0,e=_nbind.BindClass.list;tt.pageSize/2||e>t.pageSize-r){var o=_nbind.typeNameTbl.NBind.proto;return o.lalloc(e)}else return HEAPU32[t.usedPtr]=r+e,t.rootPtr+r},t.lreset=function(e,r){var o=HEAPU32[t.pagePtr];if(o){var a=_nbind.typeNameTbl.NBind.proto;a.lreset(e,r)}else HEAPU32[t.usedPtr]=e},t}();_nbind.Pool=Pool;function constructType(t,e){var r=t==10240?_nbind.makeTypeNameTbl[e.name]||_nbind.BindType:_nbind.makeTypeKindTbl[t],o=new r(e);return typeIdTbl[e.id]=o,_nbind.typeNameTbl[e.name]=o,o}_nbind.constructType=constructType;function getType(t){return typeIdTbl[t]}_nbind.getType=getType;function queryType(t){var e=HEAPU8[t],r=_nbind.structureList[e][1];t/=4,r<0&&(++t,r=HEAPU32[t]+1);var o=Array.prototype.slice.call(HEAPU32.subarray(t+1,t+1+r));return e==9&&(o=[o[0],o.slice(1)]),{paramList:o,placeholderFlag:e}}_nbind.queryType=queryType;function getTypes(t,e){return t.map(function(r){return typeof r=="number"?_nbind.getComplexType(r,constructType,getType,queryType,e):_nbind.typeNameTbl[r]})}_nbind.getTypes=getTypes;function readTypeIdList(t,e){return Array.prototype.slice.call(HEAPU32,t/4,t/4+e)}_nbind.readTypeIdList=readTypeIdList;function readAsciiString(t){for(var e=t;HEAPU8[e++];);return String.fromCharCode.apply("",HEAPU8.subarray(t,e-1))}_nbind.readAsciiString=readAsciiString;function readPolicyList(t){var e={};if(t)for(;;){var r=HEAPU32[t/4];if(!r)break;e[readAsciiString(r)]=!0,t+=4}return e}_nbind.readPolicyList=readPolicyList;function getDynCall(t,e){var r={float32_t:"d",float64_t:"d",int64_t:"d",uint64_t:"d",void:"v"},o=t.map(function(n){return r[n.name]||"i"}).join(""),a=Module["dynCall_"+o];if(!a)throw new Error("dynCall_"+o+" not found for "+e+"("+t.map(function(n){return n.name}).join(", ")+")");return a}_nbind.getDynCall=getDynCall;function addMethod(t,e,r,o){var a=t[e];t.hasOwnProperty(e)&&a?((a.arity||a.arity===0)&&(a=_nbind.makeOverloader(a,a.arity),t[e]=a),a.addMethod(r,o)):(r.arity=o,t[e]=r)}_nbind.addMethod=addMethod;function throwError(t){throw new Error(t)}_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(t){__extends(e,t);function e(){var r=t!==null&&t.apply(this,arguments)||this;return r.heap=HEAPU32,r.ptrSize=4,r}return e.prototype.needsWireRead=function(r){return!!this.wireRead||!!this.makeWireRead},e.prototype.needsWireWrite=function(r){return!!this.wireWrite||!!this.makeWireWrite},e}(_nbind.Type);_nbind.BindType=BindType;var PrimitiveType=function(t){__extends(e,t);function e(r){var o=t.call(this,r)||this,a=r.flags&32?{32:HEAPF32,64:HEAPF64}:r.flags&8?{8:HEAPU8,16:HEAPU16,32:HEAPU32}:{8:HEAP8,16:HEAP16,32:HEAP32};return o.heap=a[r.ptrSize*8],o.ptrSize=r.ptrSize,o}return e.prototype.needsWireWrite=function(r){return!!r&&!!r.Strict},e.prototype.makeWireWrite=function(r,o){return o&&o.Strict&&function(a){if(typeof a=="number")return a;throw new Error("Type mismatch")}},e}(BindType);_nbind.PrimitiveType=PrimitiveType;function pushCString(t,e){if(t==null){if(e&&e.Nullable)return 0;throw new Error("Type mismatch")}if(e&&e.Strict){if(typeof t!="string")throw new Error("Type mismatch")}else t=t.toString();var r=Module.lengthBytesUTF8(t)+1,o=_nbind.Pool.lalloc(r);return Module.stringToUTF8Array(t,HEAPU8,o,r),o}_nbind.pushCString=pushCString;function popCString(t){return t===0?null:Module.Pointer_stringify(t)}_nbind.popCString=popCString;var CStringType=function(t){__extends(e,t);function e(){var r=t!==null&&t.apply(this,arguments)||this;return r.wireRead=popCString,r.wireWrite=pushCString,r.readResources=[_nbind.resources.pool],r.writeResources=[_nbind.resources.pool],r}return e.prototype.makeWireWrite=function(r,o){return function(a){return pushCString(a,o)}},e}(BindType);_nbind.CStringType=CStringType;var BooleanType=function(t){__extends(e,t);function e(){var r=t!==null&&t.apply(this,arguments)||this;return r.wireRead=function(o){return!!o},r}return e.prototype.needsWireWrite=function(r){return!!r&&!!r.Strict},e.prototype.makeWireRead=function(r){return"!!("+r+")"},e.prototype.makeWireWrite=function(r,o){return o&&o.Strict&&function(a){if(typeof a=="boolean")return a;throw new Error("Type mismatch")}||r},e}(BindType);_nbind.BooleanType=BooleanType;var Wrapper=function(){function t(){}return t.prototype.persist=function(){this.__nbindState|=1},t}();_nbind.Wrapper=Wrapper;function makeBound(t,e){var r=function(o){__extends(a,o);function a(n,u,A,p){var h=o.call(this)||this;if(!(h instanceof a))return new(Function.prototype.bind.apply(a,Array.prototype.concat.apply([null],arguments)));var C=u,I=A,v=p;if(n!==_nbind.ptrMarker){var x=h.__nbindConstructor.apply(h,arguments);C=4608,v=HEAPU32[x/4],I=HEAPU32[x/4+1]}var E={configurable:!0,enumerable:!1,value:null,writable:!1},R={__nbindFlags:C,__nbindPtr:I};v&&(R.__nbindShared=v,_nbind.mark(h));for(var L=0,U=Object.keys(R);L>=1;var r=_nbind.valueList[t];return _nbind.valueList[t]=firstFreeValue,firstFreeValue=t,r}else{if(e)return _nbind.popShared(t,e);throw new Error("Invalid value slot "+t)}}_nbind.popValue=popValue;var valueBase=18446744073709552e3;function push64(t){return typeof t=="number"?t:pushValue(t)*4096+valueBase}function pop64(t){return t=3?u=Buffer.from(n):u=new Buffer(n),u.copy(o)}else getBuffer(o).set(n)}}_nbind.commitBuffer=commitBuffer;var dirtyList=[],gcTimer=0;function sweep(){for(var t=0,e=dirtyList;t>2]=DYNAMIC_BASE,staticSealed=!0;function invoke_viiiii(t,e,r,o,a,n){try{Module.dynCall_viiiii(t,e,r,o,a,n)}catch(u){if(typeof u!="number"&&u!=="longjmp")throw u;Module.setThrew(1,0)}}function invoke_vif(t,e,r){try{Module.dynCall_vif(t,e,r)}catch(o){if(typeof o!="number"&&o!=="longjmp")throw o;Module.setThrew(1,0)}}function invoke_vid(t,e,r){try{Module.dynCall_vid(t,e,r)}catch(o){if(typeof o!="number"&&o!=="longjmp")throw o;Module.setThrew(1,0)}}function invoke_fiff(t,e,r,o){try{return Module.dynCall_fiff(t,e,r,o)}catch(a){if(typeof a!="number"&&a!=="longjmp")throw a;Module.setThrew(1,0)}}function invoke_vi(t,e){try{Module.dynCall_vi(t,e)}catch(r){if(typeof r!="number"&&r!=="longjmp")throw r;Module.setThrew(1,0)}}function invoke_vii(t,e,r){try{Module.dynCall_vii(t,e,r)}catch(o){if(typeof o!="number"&&o!=="longjmp")throw o;Module.setThrew(1,0)}}function invoke_ii(t,e){try{return Module.dynCall_ii(t,e)}catch(r){if(typeof r!="number"&&r!=="longjmp")throw r;Module.setThrew(1,0)}}function invoke_viddi(t,e,r,o,a){try{Module.dynCall_viddi(t,e,r,o,a)}catch(n){if(typeof n!="number"&&n!=="longjmp")throw n;Module.setThrew(1,0)}}function invoke_vidd(t,e,r,o){try{Module.dynCall_vidd(t,e,r,o)}catch(a){if(typeof a!="number"&&a!=="longjmp")throw a;Module.setThrew(1,0)}}function invoke_iiii(t,e,r,o){try{return Module.dynCall_iiii(t,e,r,o)}catch(a){if(typeof a!="number"&&a!=="longjmp")throw a;Module.setThrew(1,0)}}function invoke_diii(t,e,r,o){try{return Module.dynCall_diii(t,e,r,o)}catch(a){if(typeof a!="number"&&a!=="longjmp")throw a;Module.setThrew(1,0)}}function invoke_di(t,e){try{return Module.dynCall_di(t,e)}catch(r){if(typeof r!="number"&&r!=="longjmp")throw r;Module.setThrew(1,0)}}function invoke_iid(t,e,r){try{return Module.dynCall_iid(t,e,r)}catch(o){if(typeof o!="number"&&o!=="longjmp")throw o;Module.setThrew(1,0)}}function invoke_iii(t,e,r){try{return Module.dynCall_iii(t,e,r)}catch(o){if(typeof o!="number"&&o!=="longjmp")throw o;Module.setThrew(1,0)}}function invoke_viiddi(t,e,r,o,a,n){try{Module.dynCall_viiddi(t,e,r,o,a,n)}catch(u){if(typeof u!="number"&&u!=="longjmp")throw u;Module.setThrew(1,0)}}function invoke_viiiiii(t,e,r,o,a,n,u){try{Module.dynCall_viiiiii(t,e,r,o,a,n,u)}catch(A){if(typeof A!="number"&&A!=="longjmp")throw A;Module.setThrew(1,0)}}function invoke_dii(t,e,r){try{return Module.dynCall_dii(t,e,r)}catch(o){if(typeof o!="number"&&o!=="longjmp")throw o;Module.setThrew(1,0)}}function invoke_i(t){try{return Module.dynCall_i(t)}catch(e){if(typeof e!="number"&&e!=="longjmp")throw e;Module.setThrew(1,0)}}function invoke_iiiiii(t,e,r,o,a,n){try{return Module.dynCall_iiiiii(t,e,r,o,a,n)}catch(u){if(typeof u!="number"&&u!=="longjmp")throw u;Module.setThrew(1,0)}}function invoke_viiid(t,e,r,o,a){try{Module.dynCall_viiid(t,e,r,o,a)}catch(n){if(typeof n!="number"&&n!=="longjmp")throw n;Module.setThrew(1,0)}}function invoke_viififi(t,e,r,o,a,n,u){try{Module.dynCall_viififi(t,e,r,o,a,n,u)}catch(A){if(typeof A!="number"&&A!=="longjmp")throw A;Module.setThrew(1,0)}}function invoke_viii(t,e,r,o){try{Module.dynCall_viii(t,e,r,o)}catch(a){if(typeof a!="number"&&a!=="longjmp")throw a;Module.setThrew(1,0)}}function invoke_v(t){try{Module.dynCall_v(t)}catch(e){if(typeof e!="number"&&e!=="longjmp")throw e;Module.setThrew(1,0)}}function invoke_viid(t,e,r,o){try{Module.dynCall_viid(t,e,r,o)}catch(a){if(typeof a!="number"&&a!=="longjmp")throw a;Module.setThrew(1,0)}}function invoke_idd(t,e,r){try{return Module.dynCall_idd(t,e,r)}catch(o){if(typeof o!="number"&&o!=="longjmp")throw o;Module.setThrew(1,0)}}function invoke_viiii(t,e,r,o,a){try{Module.dynCall_viiii(t,e,r,o,a)}catch(n){if(typeof n!="number"&&n!=="longjmp")throw n;Module.setThrew(1,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(t,e,r){var o=new t.Int8Array(r),a=new t.Int16Array(r),n=new t.Int32Array(r),u=new t.Uint8Array(r),A=new t.Uint16Array(r),p=new t.Uint32Array(r),h=new t.Float32Array(r),C=new t.Float64Array(r),I=e.DYNAMICTOP_PTR|0,v=e.tempDoublePtr|0,x=e.ABORT|0,E=e.STACKTOP|0,R=e.STACK_MAX|0,L=e.cttz_i8|0,U=e.___dso_handle|0,z=0,te=0,le=0,he=0,Ae=t.NaN,ye=t.Infinity,ae=0,Ie=0,Fe=0,g=0,Ee=0,De=0,ce=t.Math.floor,ne=t.Math.abs,ee=t.Math.sqrt,we=t.Math.pow,xe=t.Math.cos,ht=t.Math.sin,H=t.Math.tan,lt=t.Math.acos,Te=t.Math.asin,ke=t.Math.atan,be=t.Math.atan2,_e=t.Math.exp,Re=t.Math.log,ze=t.Math.ceil,He=t.Math.imul,b=t.Math.min,w=t.Math.max,S=t.Math.clz32,y=t.Math.fround,F=e.abort,J=e.assert,X=e.enlargeMemory,Z=e.getTotalMemory,ie=e.abortOnCannotGrowMemory,Pe=e.invoke_viiiii,Ne=e.invoke_vif,ot=e.invoke_vid,dt=e.invoke_fiff,jt=e.invoke_vi,$t=e.invoke_vii,bt=e.invoke_ii,an=e.invoke_viddi,Qr=e.invoke_vidd,mr=e.invoke_iiii,br=e.invoke_diii,Wr=e.invoke_di,Kn=e.invoke_iid,Ns=e.invoke_iii,Ti=e.invoke_viiddi,ps=e.invoke_viiiiii,io=e.invoke_dii,Si=e.invoke_i,Ls=e.invoke_iiiiii,so=e.invoke_viiid,cc=e.invoke_viififi,cu=e.invoke_viii,op=e.invoke_v,ap=e.invoke_viid,Os=e.invoke_idd,Dn=e.invoke_viiii,oo=e._emscripten_asm_const_iiiii,Ms=e._emscripten_asm_const_iiidddddd,ml=e._emscripten_asm_const_iiiid,yl=e.__nbind_reference_external,ao=e._emscripten_asm_const_iiiiiiii,Vn=e._removeAccessorPrefix,On=e._typeModule,Ni=e.__nbind_register_pool,Mn=e.__decorate,_i=e._llvm_stackrestore,tr=e.___cxa_atexit,Oe=e.__extends,ii=e.__nbind_get_value_object,Ma=e.__ZN8facebook4yoga14YGNodeToStringEPNSt3__212basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEEP6YGNode14YGPrintOptionsj,hr=e._emscripten_set_main_loop_timing,uc=e.__nbind_register_primitive,uu=e.__nbind_register_type,Ac=e._emscripten_memcpy_big,El=e.__nbind_register_function,vA=e.___setErrNo,Au=e.__nbind_register_class,Ce=e.__nbind_finish,Rt=e._abort,fc=e._nbind_value,Hi=e._llvm_stacksave,fu=e.___syscall54,Yt=e._defineHidden,Cl=e._emscripten_set_main_loop,DA=e._emscripten_get_now,lp=e.__nbind_register_callback_signature,pc=e._emscripten_asm_const_iiiiii,PA=e.__nbind_free_external,Qn=e._emscripten_asm_const_iiii,hi=e._emscripten_asm_const_iiididi,hc=e.___syscall6,SA=e._atexit,sa=e.___syscall140,Li=e.___syscall146,_o=y(0);let Ze=y(0);function lo(s){s=s|0;var l=0;return l=E,E=E+s|0,E=E+15&-16,l|0}function gc(){return E|0}function pu(s){s=s|0,E=s}function ji(s,l){s=s|0,l=l|0,E=s,R=l}function hu(s,l){s=s|0,l=l|0,z||(z=s,te=l)}function bA(s){s=s|0,De=s}function Ua(){return De|0}function dc(){var s=0,l=0;Dr(8104,8,400)|0,Dr(8504,408,540)|0,s=9044,l=s+44|0;do n[s>>2]=0,s=s+4|0;while((s|0)<(l|0));o[9088]=0,o[9089]=1,n[2273]=0,n[2274]=948,n[2275]=948,tr(17,8104,U|0)|0}function hs(s){s=s|0,ft(s+948|0)}function _t(s){return s=y(s),((Du(s)|0)&2147483647)>>>0>2139095040|0}function Fn(s,l,c){s=s|0,l=l|0,c=c|0;e:do if(n[s+(l<<3)+4>>2]|0)s=s+(l<<3)|0;else{if((l|2|0)==3&&n[s+60>>2]|0){s=s+56|0;break}switch(l|0){case 0:case 2:case 4:case 5:{if(n[s+52>>2]|0){s=s+48|0;break e}break}default:}if(n[s+68>>2]|0){s=s+64|0;break}else{s=(l|1|0)==5?948:c;break}}while(0);return s|0}function Ci(s){s=s|0;var l=0;return l=pD(1e3)|0,oa(s,(l|0)!=0,2456),n[2276]=(n[2276]|0)+1,Dr(l|0,8104,1e3)|0,o[s+2>>0]|0&&(n[l+4>>2]=2,n[l+12>>2]=4),n[l+976>>2]=s,l|0}function oa(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0;d=E,E=E+16|0,f=d,l||(n[f>>2]=c,mg(s,5,3197,f)),E=d}function co(){return Ci(956)|0}function Us(s){s=s|0;var l=0;return l=Kt(1e3)|0,aa(l,s),oa(n[s+976>>2]|0,1,2456),n[2276]=(n[2276]|0)+1,n[l+944>>2]=0,l|0}function aa(s,l){s=s|0,l=l|0;var c=0;Dr(s|0,l|0,948)|0,Qm(s+948|0,l+948|0),c=s+960|0,s=l+960|0,l=c+40|0;do n[c>>2]=n[s>>2],c=c+4|0,s=s+4|0;while((c|0)<(l|0))}function la(s){s=s|0;var l=0,c=0,f=0,d=0;if(l=s+944|0,c=n[l>>2]|0,c|0&&(Ho(c+948|0,s)|0,n[l>>2]=0),c=wi(s)|0,c|0){l=0;do n[(gs(s,l)|0)+944>>2]=0,l=l+1|0;while((l|0)!=(c|0))}c=s+948|0,f=n[c>>2]|0,d=s+952|0,l=n[d>>2]|0,(l|0)!=(f|0)&&(n[d>>2]=l+(~((l+-4-f|0)>>>2)<<2)),ds(c),hD(s),n[2276]=(n[2276]|0)+-1}function Ho(s,l){s=s|0,l=l|0;var c=0,f=0,d=0,m=0,B=0,k=0;f=n[s>>2]|0,k=s+4|0,c=n[k>>2]|0,m=c;e:do if((f|0)==(c|0))d=f,B=4;else for(s=f;;){if((n[s>>2]|0)==(l|0)){d=s,B=4;break e}if(s=s+4|0,(s|0)==(c|0)){s=0;break}}while(0);return(B|0)==4&&((d|0)!=(c|0)?(f=d+4|0,s=m-f|0,l=s>>2,l&&(Lw(d|0,f|0,s|0)|0,c=n[k>>2]|0),s=d+(l<<2)|0,(c|0)==(s|0)||(n[k>>2]=c+(~((c+-4-s|0)>>>2)<<2)),s=1):s=0),s|0}function wi(s){return s=s|0,(n[s+952>>2]|0)-(n[s+948>>2]|0)>>2|0}function gs(s,l){s=s|0,l=l|0;var c=0;return c=n[s+948>>2]|0,(n[s+952>>2]|0)-c>>2>>>0>l>>>0?s=n[c+(l<<2)>>2]|0:s=0,s|0}function ds(s){s=s|0;var l=0,c=0,f=0,d=0;f=E,E=E+32|0,l=f,d=n[s>>2]|0,c=(n[s+4>>2]|0)-d|0,((n[s+8>>2]|0)-d|0)>>>0>c>>>0&&(d=c>>2,Cp(l,d,d,s+8|0),wg(s,l),UA(l)),E=f}function ms(s,l){s=s|0,l=l|0;var c=0,f=0,d=0,m=0,B=0,k=0,Q=0,M=0;M=wi(s)|0;do if(M|0){if((n[(gs(s,0)|0)+944>>2]|0)==(s|0)){if(!(Ho(s+948|0,l)|0))break;Dr(l+400|0,8504,540)|0,n[l+944>>2]=0,Le(s);break}B=n[(n[s+976>>2]|0)+12>>2]|0,k=s+948|0,Q=(B|0)==0,c=0,m=0;do f=n[(n[k>>2]|0)+(m<<2)>>2]|0,(f|0)==(l|0)?Le(s):(d=Us(f)|0,n[(n[k>>2]|0)+(c<<2)>>2]=d,n[d+944>>2]=s,Q||LR[B&15](f,d,s,c),c=c+1|0),m=m+1|0;while((m|0)!=(M|0));if(c>>>0>>0){Q=s+948|0,k=s+952|0,B=c,c=n[k>>2]|0;do m=(n[Q>>2]|0)+(B<<2)|0,f=m+4|0,d=c-f|0,l=d>>2,l&&(Lw(m|0,f|0,d|0)|0,c=n[k>>2]|0),d=c,f=m+(l<<2)|0,(d|0)!=(f|0)&&(c=d+(~((d+-4-f|0)>>>2)<<2)|0,n[k>>2]=c),B=B+1|0;while((B|0)!=(M|0))}}while(0)}function _s(s){s=s|0;var l=0,c=0,f=0,d=0;Un(s,(wi(s)|0)==0,2491),Un(s,(n[s+944>>2]|0)==0,2545),l=s+948|0,c=n[l>>2]|0,f=s+952|0,d=n[f>>2]|0,(d|0)!=(c|0)&&(n[f>>2]=d+(~((d+-4-c|0)>>>2)<<2)),ds(l),l=s+976|0,c=n[l>>2]|0,Dr(s|0,8104,1e3)|0,o[c+2>>0]|0&&(n[s+4>>2]=2,n[s+12>>2]=4),n[l>>2]=c}function Un(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0;d=E,E=E+16|0,f=d,l||(n[f>>2]=c,Ao(s,5,3197,f)),E=d}function Pn(){return n[2276]|0}function ys(){var s=0;return s=pD(20)|0,We((s|0)!=0,2592),n[2277]=(n[2277]|0)+1,n[s>>2]=n[239],n[s+4>>2]=n[240],n[s+8>>2]=n[241],n[s+12>>2]=n[242],n[s+16>>2]=n[243],s|0}function We(s,l){s=s|0,l=l|0;var c=0,f=0;f=E,E=E+16|0,c=f,s||(n[c>>2]=l,Ao(0,5,3197,c)),E=f}function tt(s){s=s|0,hD(s),n[2277]=(n[2277]|0)+-1}function It(s,l){s=s|0,l=l|0;var c=0;l?(Un(s,(wi(s)|0)==0,2629),c=1):(c=0,l=0),n[s+964>>2]=l,n[s+988>>2]=c}function nr(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0,B=0;f=E,E=E+16|0,m=f+8|0,d=f+4|0,B=f,n[d>>2]=l,Un(s,(n[l+944>>2]|0)==0,2709),Un(s,(n[s+964>>2]|0)==0,2763),$(s),l=s+948|0,n[B>>2]=(n[l>>2]|0)+(c<<2),n[m>>2]=n[B>>2],me(l,m,d)|0,n[(n[d>>2]|0)+944>>2]=s,Le(s),E=f}function $(s){s=s|0;var l=0,c=0,f=0,d=0,m=0,B=0,k=0;if(c=wi(s)|0,c|0&&(n[(gs(s,0)|0)+944>>2]|0)!=(s|0)){f=n[(n[s+976>>2]|0)+12>>2]|0,d=s+948|0,m=(f|0)==0,l=0;do B=n[(n[d>>2]|0)+(l<<2)>>2]|0,k=Us(B)|0,n[(n[d>>2]|0)+(l<<2)>>2]=k,n[k+944>>2]=s,m||LR[f&15](B,k,s,l),l=l+1|0;while((l|0)!=(c|0))}}function me(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0,B=0,k=0,Q=0,M=0,O=0,q=0,se=0,Ge=0,Me=0,Qe=0,et=0,Xe=0;et=E,E=E+64|0,q=et+52|0,k=et+48|0,se=et+28|0,Ge=et+24|0,Me=et+20|0,Qe=et,f=n[s>>2]|0,m=f,l=f+((n[l>>2]|0)-m>>2<<2)|0,f=s+4|0,d=n[f>>2]|0,B=s+8|0;do if(d>>>0<(n[B>>2]|0)>>>0){if((l|0)==(d|0)){n[l>>2]=n[c>>2],n[f>>2]=(n[f>>2]|0)+4;break}_A(s,l,d,l+4|0),l>>>0<=c>>>0&&(c=(n[f>>2]|0)>>>0>c>>>0?c+4|0:c),n[l>>2]=n[c>>2]}else{f=(d-m>>2)+1|0,d=N(s)|0,d>>>0>>0&&Jr(s),O=n[s>>2]|0,M=(n[B>>2]|0)-O|0,m=M>>1,Cp(Qe,M>>2>>>0>>1>>>0?m>>>0>>0?f:m:d,l-O>>2,s+8|0),O=Qe+8|0,f=n[O>>2]|0,m=Qe+12|0,M=n[m>>2]|0,B=M,Q=f;do if((f|0)==(M|0)){if(M=Qe+4|0,f=n[M>>2]|0,Xe=n[Qe>>2]|0,d=Xe,f>>>0<=Xe>>>0){f=B-d>>1,f=(f|0)==0?1:f,Cp(se,f,f>>>2,n[Qe+16>>2]|0),n[Ge>>2]=n[M>>2],n[Me>>2]=n[O>>2],n[k>>2]=n[Ge>>2],n[q>>2]=n[Me>>2],Bw(se,k,q),f=n[Qe>>2]|0,n[Qe>>2]=n[se>>2],n[se>>2]=f,f=se+4|0,Xe=n[M>>2]|0,n[M>>2]=n[f>>2],n[f>>2]=Xe,f=se+8|0,Xe=n[O>>2]|0,n[O>>2]=n[f>>2],n[f>>2]=Xe,f=se+12|0,Xe=n[m>>2]|0,n[m>>2]=n[f>>2],n[f>>2]=Xe,UA(se),f=n[O>>2]|0;break}m=f,B=((m-d>>2)+1|0)/-2|0,k=f+(B<<2)|0,d=Q-m|0,m=d>>2,m&&(Lw(k|0,f|0,d|0)|0,f=n[M>>2]|0),Xe=k+(m<<2)|0,n[O>>2]=Xe,n[M>>2]=f+(B<<2),f=Xe}while(0);n[f>>2]=n[c>>2],n[O>>2]=(n[O>>2]|0)+4,l=Ig(s,Qe,l)|0,UA(Qe)}while(0);return E=et,l|0}function Le(s){s=s|0;var l=0;do{if(l=s+984|0,o[l>>0]|0)break;o[l>>0]=1,h[s+504>>2]=y(Ae),s=n[s+944>>2]|0}while((s|0)!=0)}function ft(s){s=s|0;var l=0,c=0,f=0;c=n[s>>2]|0,f=c,c|0&&(s=s+4|0,l=n[s>>2]|0,(l|0)!=(c|0)&&(n[s>>2]=l+(~((l+-4-f|0)>>>2)<<2)),gt(c))}function pt(s){return s=s|0,n[s+944>>2]|0}function Tt(s){s=s|0,Un(s,(n[s+964>>2]|0)!=0,2832),Le(s)}function er(s){return s=s|0,(o[s+984>>0]|0)!=0|0}function Zr(s,l){s=s|0,l=l|0,LUe(s,l,400)|0&&(Dr(s|0,l|0,400)|0,Le(s))}function qi(s){s=s|0;var l=Ze;return l=y(h[s+44>>2]),s=_t(l)|0,y(s?y(0):l)}function es(s){s=s|0;var l=Ze;return l=y(h[s+48>>2]),_t(l)|0&&(l=o[(n[s+976>>2]|0)+2>>0]|0?y(1):y(0)),y(l)}function bi(s,l){s=s|0,l=l|0,n[s+980>>2]=l}function jo(s){return s=s|0,n[s+980>>2]|0}function xA(s,l){s=s|0,l=l|0;var c=0;c=s+4|0,(n[c>>2]|0)!=(l|0)&&(n[c>>2]=l,Le(s))}function kA(s){return s=s|0,n[s+4>>2]|0}function cp(s,l){s=s|0,l=l|0;var c=0;c=s+8|0,(n[c>>2]|0)!=(l|0)&&(n[c>>2]=l,Le(s))}function rg(s){return s=s|0,n[s+8>>2]|0}function gu(s,l){s=s|0,l=l|0;var c=0;c=s+12|0,(n[c>>2]|0)!=(l|0)&&(n[c>>2]=l,Le(s))}function ng(s){return s=s|0,n[s+12>>2]|0}function du(s,l){s=s|0,l=l|0;var c=0;c=s+16|0,(n[c>>2]|0)!=(l|0)&&(n[c>>2]=l,Le(s))}function uo(s){return s=s|0,n[s+16>>2]|0}function QA(s,l){s=s|0,l=l|0;var c=0;c=s+20|0,(n[c>>2]|0)!=(l|0)&&(n[c>>2]=l,Le(s))}function mc(s){return s=s|0,n[s+20>>2]|0}function ca(s,l){s=s|0,l=l|0;var c=0;c=s+24|0,(n[c>>2]|0)!=(l|0)&&(n[c>>2]=l,Le(s))}function ig(s){return s=s|0,n[s+24>>2]|0}function yc(s,l){s=s|0,l=l|0;var c=0;c=s+28|0,(n[c>>2]|0)!=(l|0)&&(n[c>>2]=l,Le(s))}function Dm(s){return s=s|0,n[s+28>>2]|0}function sg(s,l){s=s|0,l=l|0;var c=0;c=s+32|0,(n[c>>2]|0)!=(l|0)&&(n[c>>2]=l,Le(s))}function $n(s){return s=s|0,n[s+32>>2]|0}function up(s,l){s=s|0,l=l|0;var c=0;c=s+36|0,(n[c>>2]|0)!=(l|0)&&(n[c>>2]=l,Le(s))}function og(s){return s=s|0,n[s+36>>2]|0}function FA(s,l){s=s|0,l=y(l);var c=0;c=s+40|0,y(h[c>>2])!=l&&(h[c>>2]=l,Le(s))}function Hs(s,l){s=s|0,l=y(l);var c=0;c=s+44|0,y(h[c>>2])!=l&&(h[c>>2]=l,Le(s))}function mu(s,l){s=s|0,l=y(l);var c=0;c=s+48|0,y(h[c>>2])!=l&&(h[c>>2]=l,Le(s))}function Ha(s,l){s=s|0,l=y(l);var c=0,f=0,d=0,m=0;m=_t(l)|0,c=(m^1)&1,f=s+52|0,d=s+56|0,m|y(h[f>>2])==l&&(n[d>>2]|0)==(c|0)||(h[f>>2]=l,n[d>>2]=c,Le(s))}function Gi(s,l){s=s|0,l=y(l);var c=0,f=0;f=s+52|0,c=s+56|0,y(h[f>>2])==l&&(n[c>>2]|0)==2||(h[f>>2]=l,f=_t(l)|0,n[c>>2]=f?3:2,Le(s))}function ua(s,l){s=s|0,l=l|0;var c=0,f=0;f=l+52|0,c=n[f+4>>2]|0,l=s,n[l>>2]=n[f>>2],n[l+4>>2]=c}function yu(s,l,c){s=s|0,l=l|0,c=y(c);var f=0,d=0,m=0;m=_t(c)|0,f=(m^1)&1,d=s+132+(l<<3)|0,l=s+132+(l<<3)+4|0,m|y(h[d>>2])==c&&(n[l>>2]|0)==(f|0)||(h[d>>2]=c,n[l>>2]=f,Le(s))}function Es(s,l,c){s=s|0,l=l|0,c=y(c);var f=0,d=0,m=0;m=_t(c)|0,f=m?0:2,d=s+132+(l<<3)|0,l=s+132+(l<<3)+4|0,m|y(h[d>>2])==c&&(n[l>>2]|0)==(f|0)||(h[d>>2]=c,n[l>>2]=f,Le(s))}function Ec(s,l,c){s=s|0,l=l|0,c=c|0;var f=0;f=l+132+(c<<3)|0,l=n[f+4>>2]|0,c=s,n[c>>2]=n[f>>2],n[c+4>>2]=l}function Cc(s,l,c){s=s|0,l=l|0,c=y(c);var f=0,d=0,m=0;m=_t(c)|0,f=(m^1)&1,d=s+60+(l<<3)|0,l=s+60+(l<<3)+4|0,m|y(h[d>>2])==c&&(n[l>>2]|0)==(f|0)||(h[d>>2]=c,n[l>>2]=f,Le(s))}function G(s,l,c){s=s|0,l=l|0,c=y(c);var f=0,d=0,m=0;m=_t(c)|0,f=m?0:2,d=s+60+(l<<3)|0,l=s+60+(l<<3)+4|0,m|y(h[d>>2])==c&&(n[l>>2]|0)==(f|0)||(h[d>>2]=c,n[l>>2]=f,Le(s))}function Dt(s,l,c){s=s|0,l=l|0,c=c|0;var f=0;f=l+60+(c<<3)|0,l=n[f+4>>2]|0,c=s,n[c>>2]=n[f>>2],n[c+4>>2]=l}function wl(s,l){s=s|0,l=l|0;var c=0;c=s+60+(l<<3)+4|0,(n[c>>2]|0)!=3&&(h[s+60+(l<<3)>>2]=y(Ae),n[c>>2]=3,Le(s))}function xi(s,l,c){s=s|0,l=l|0,c=y(c);var f=0,d=0,m=0;m=_t(c)|0,f=(m^1)&1,d=s+204+(l<<3)|0,l=s+204+(l<<3)+4|0,m|y(h[d>>2])==c&&(n[l>>2]|0)==(f|0)||(h[d>>2]=c,n[l>>2]=f,Le(s))}function wc(s,l,c){s=s|0,l=l|0,c=y(c);var f=0,d=0,m=0;m=_t(c)|0,f=m?0:2,d=s+204+(l<<3)|0,l=s+204+(l<<3)+4|0,m|y(h[d>>2])==c&&(n[l>>2]|0)==(f|0)||(h[d>>2]=c,n[l>>2]=f,Le(s))}function ct(s,l,c){s=s|0,l=l|0,c=c|0;var f=0;f=l+204+(c<<3)|0,l=n[f+4>>2]|0,c=s,n[c>>2]=n[f>>2],n[c+4>>2]=l}function Eu(s,l,c){s=s|0,l=l|0,c=y(c);var f=0,d=0,m=0;m=_t(c)|0,f=(m^1)&1,d=s+276+(l<<3)|0,l=s+276+(l<<3)+4|0,m|y(h[d>>2])==c&&(n[l>>2]|0)==(f|0)||(h[d>>2]=c,n[l>>2]=f,Le(s))}function ag(s,l){return s=s|0,l=l|0,y(h[s+276+(l<<3)>>2])}function dw(s,l){s=s|0,l=y(l);var c=0,f=0,d=0,m=0;m=_t(l)|0,c=(m^1)&1,f=s+348|0,d=s+352|0,m|y(h[f>>2])==l&&(n[d>>2]|0)==(c|0)||(h[f>>2]=l,n[d>>2]=c,Le(s))}function RA(s,l){s=s|0,l=y(l);var c=0,f=0;f=s+348|0,c=s+352|0,y(h[f>>2])==l&&(n[c>>2]|0)==2||(h[f>>2]=l,f=_t(l)|0,n[c>>2]=f?3:2,Le(s))}function Ap(s){s=s|0;var l=0;l=s+352|0,(n[l>>2]|0)!=3&&(h[s+348>>2]=y(Ae),n[l>>2]=3,Le(s))}function Br(s,l){s=s|0,l=l|0;var c=0,f=0;f=l+348|0,c=n[f+4>>2]|0,l=s,n[l>>2]=n[f>>2],n[l+4>>2]=c}function Cs(s,l){s=s|0,l=y(l);var c=0,f=0,d=0,m=0;m=_t(l)|0,c=(m^1)&1,f=s+356|0,d=s+360|0,m|y(h[f>>2])==l&&(n[d>>2]|0)==(c|0)||(h[f>>2]=l,n[d>>2]=c,Le(s))}function lg(s,l){s=s|0,l=y(l);var c=0,f=0;f=s+356|0,c=s+360|0,y(h[f>>2])==l&&(n[c>>2]|0)==2||(h[f>>2]=l,f=_t(l)|0,n[c>>2]=f?3:2,Le(s))}function cg(s){s=s|0;var l=0;l=s+360|0,(n[l>>2]|0)!=3&&(h[s+356>>2]=y(Ae),n[l>>2]=3,Le(s))}function ug(s,l){s=s|0,l=l|0;var c=0,f=0;f=l+356|0,c=n[f+4>>2]|0,l=s,n[l>>2]=n[f>>2],n[l+4>>2]=c}function fp(s,l){s=s|0,l=y(l);var c=0,f=0,d=0,m=0;m=_t(l)|0,c=(m^1)&1,f=s+364|0,d=s+368|0,m|y(h[f>>2])==l&&(n[d>>2]|0)==(c|0)||(h[f>>2]=l,n[d>>2]=c,Le(s))}function Ic(s,l){s=s|0,l=y(l);var c=0,f=0,d=0,m=0;m=_t(l)|0,c=m?0:2,f=s+364|0,d=s+368|0,m|y(h[f>>2])==l&&(n[d>>2]|0)==(c|0)||(h[f>>2]=l,n[d>>2]=c,Le(s))}function Ct(s,l){s=s|0,l=l|0;var c=0,f=0;f=l+364|0,c=n[f+4>>2]|0,l=s,n[l>>2]=n[f>>2],n[l+4>>2]=c}function Pm(s,l){s=s|0,l=y(l);var c=0,f=0,d=0,m=0;m=_t(l)|0,c=(m^1)&1,f=s+372|0,d=s+376|0,m|y(h[f>>2])==l&&(n[d>>2]|0)==(c|0)||(h[f>>2]=l,n[d>>2]=c,Le(s))}function Ag(s,l){s=s|0,l=y(l);var c=0,f=0,d=0,m=0;m=_t(l)|0,c=m?0:2,f=s+372|0,d=s+376|0,m|y(h[f>>2])==l&&(n[d>>2]|0)==(c|0)||(h[f>>2]=l,n[d>>2]=c,Le(s))}function fg(s,l){s=s|0,l=l|0;var c=0,f=0;f=l+372|0,c=n[f+4>>2]|0,l=s,n[l>>2]=n[f>>2],n[l+4>>2]=c}function Cu(s,l){s=s|0,l=y(l);var c=0,f=0,d=0,m=0;m=_t(l)|0,c=(m^1)&1,f=s+380|0,d=s+384|0,m|y(h[f>>2])==l&&(n[d>>2]|0)==(c|0)||(h[f>>2]=l,n[d>>2]=c,Le(s))}function Sm(s,l){s=s|0,l=y(l);var c=0,f=0,d=0,m=0;m=_t(l)|0,c=m?0:2,f=s+380|0,d=s+384|0,m|y(h[f>>2])==l&&(n[d>>2]|0)==(c|0)||(h[f>>2]=l,n[d>>2]=c,Le(s))}function pg(s,l){s=s|0,l=l|0;var c=0,f=0;f=l+380|0,c=n[f+4>>2]|0,l=s,n[l>>2]=n[f>>2],n[l+4>>2]=c}function wu(s,l){s=s|0,l=y(l);var c=0,f=0,d=0,m=0;m=_t(l)|0,c=(m^1)&1,f=s+388|0,d=s+392|0,m|y(h[f>>2])==l&&(n[d>>2]|0)==(c|0)||(h[f>>2]=l,n[d>>2]=c,Le(s))}function mw(s,l){s=s|0,l=y(l);var c=0,f=0,d=0,m=0;m=_t(l)|0,c=m?0:2,f=s+388|0,d=s+392|0,m|y(h[f>>2])==l&&(n[d>>2]|0)==(c|0)||(h[f>>2]=l,n[d>>2]=c,Le(s))}function bm(s,l){s=s|0,l=l|0;var c=0,f=0;f=l+388|0,c=n[f+4>>2]|0,l=s,n[l>>2]=n[f>>2],n[l+4>>2]=c}function Aa(s,l){s=s|0,l=y(l);var c=0;c=s+396|0,y(h[c>>2])!=l&&(h[c>>2]=l,Le(s))}function Bc(s){return s=s|0,y(h[s+396>>2])}function Il(s){return s=s|0,y(h[s+400>>2])}function Iu(s){return s=s|0,y(h[s+404>>2])}function hg(s){return s=s|0,y(h[s+408>>2])}function TA(s){return s=s|0,y(h[s+412>>2])}function pp(s){return s=s|0,y(h[s+416>>2])}function ja(s){return s=s|0,y(h[s+420>>2])}function gg(s,l){switch(s=s|0,l=l|0,Un(s,(l|0)<6,2918),l|0){case 0:{l=(n[s+496>>2]|0)==2?5:4;break}case 2:{l=(n[s+496>>2]|0)==2?4:5;break}default:}return y(h[s+424+(l<<2)>>2])}function hp(s,l){switch(s=s|0,l=l|0,Un(s,(l|0)<6,2918),l|0){case 0:{l=(n[s+496>>2]|0)==2?5:4;break}case 2:{l=(n[s+496>>2]|0)==2?4:5;break}default:}return y(h[s+448+(l<<2)>>2])}function qo(s,l){switch(s=s|0,l=l|0,Un(s,(l|0)<6,2918),l|0){case 0:{l=(n[s+496>>2]|0)==2?5:4;break}case 2:{l=(n[s+496>>2]|0)==2?4:5;break}default:}return y(h[s+472+(l<<2)>>2])}function ws(s,l){s=s|0,l=l|0;var c=0,f=Ze;return c=n[s+4>>2]|0,(c|0)==(n[l+4>>2]|0)?c?(f=y(h[s>>2]),s=y(ne(y(f-y(h[l>>2]))))>2]=0,n[f+4>>2]=0,n[f+8>>2]=0,Ma(f|0,s|0,l|0,0),Ao(s,3,(o[f+11>>0]|0)<0?n[f>>2]|0:f,c),s3e(f),E=c}function Go(s,l,c,f){s=y(s),l=y(l),c=c|0,f=f|0;var d=Ze;s=y(s*l),d=y(kR(s,y(1)));do if(Ii(d,y(0))|0)s=y(s-d);else{if(s=y(s-d),Ii(d,y(1))|0){s=y(s+y(1));break}if(c){s=y(s+y(1));break}f||(d>y(.5)?d=y(1):(f=Ii(d,y(.5))|0,d=y(f?1:0)),s=y(s+d))}while(0);return y(s/l)}function NA(s,l,c,f,d,m,B,k,Q,M,O,q,se){s=s|0,l=y(l),c=c|0,f=y(f),d=d|0,m=y(m),B=B|0,k=y(k),Q=y(Q),M=y(M),O=y(O),q=y(q),se=se|0;var Ge=0,Me=Ze,Qe=Ze,et=Ze,Xe=Ze,at=Ze,Ue=Ze;return Q>2]),Me!=y(0))?(et=y(Go(l,Me,0,0)),Xe=y(Go(f,Me,0,0)),Qe=y(Go(m,Me,0,0)),Me=y(Go(k,Me,0,0))):(Qe=m,et=l,Me=k,Xe=f),(d|0)==(s|0)?Ge=Ii(Qe,et)|0:Ge=0,(B|0)==(c|0)?se=Ii(Me,Xe)|0:se=0,!Ge&&(at=y(l-O),!(gp(s,at,Q)|0))&&!(dp(s,at,d,Q)|0)?Ge=dg(s,at,d,m,Q)|0:Ge=1,!se&&(Ue=y(f-q),!(gp(c,Ue,M)|0))&&!(dp(c,Ue,B,M)|0)?se=dg(c,Ue,B,k,M)|0:se=1,se=Ge&se),se|0}function gp(s,l,c){return s=s|0,l=y(l),c=y(c),(s|0)==1?s=Ii(l,c)|0:s=0,s|0}function dp(s,l,c,f){return s=s|0,l=y(l),c=c|0,f=y(f),(s|0)==2&(c|0)==0?l>=f?s=1:s=Ii(l,f)|0:s=0,s|0}function dg(s,l,c,f,d){return s=s|0,l=y(l),c=c|0,f=y(f),d=y(d),(s|0)==2&(c|0)==2&f>l?d<=l?s=1:s=Ii(l,d)|0:s=0,s|0}function fa(s,l,c,f,d,m,B,k,Q,M,O){s=s|0,l=y(l),c=y(c),f=f|0,d=d|0,m=m|0,B=y(B),k=y(k),Q=Q|0,M=M|0,O=O|0;var q=0,se=0,Ge=0,Me=0,Qe=Ze,et=Ze,Xe=0,at=0,Ue=0,qe=0,Lt=0,Mr=0,or=0,Xt=0,Pr=0,Nr=0,ir=0,xn=Ze,go=Ze,mo=Ze,yo=0,ya=0;ir=E,E=E+160|0,Xt=ir+152|0,or=ir+120|0,Mr=ir+104|0,Ue=ir+72|0,Me=ir+56|0,Lt=ir+8|0,at=ir,qe=(n[2279]|0)+1|0,n[2279]=qe,Pr=s+984|0,(o[Pr>>0]|0)!=0&&(n[s+512>>2]|0)!=(n[2278]|0)?Xe=4:(n[s+516>>2]|0)==(f|0)?Nr=0:Xe=4,(Xe|0)==4&&(n[s+520>>2]=0,n[s+924>>2]=-1,n[s+928>>2]=-1,h[s+932>>2]=y(-1),h[s+936>>2]=y(-1),Nr=1);e:do if(n[s+964>>2]|0)if(Qe=y(ln(s,2,B)),et=y(ln(s,0,B)),q=s+916|0,mo=y(h[q>>2]),go=y(h[s+920>>2]),xn=y(h[s+932>>2]),NA(d,l,m,c,n[s+924>>2]|0,mo,n[s+928>>2]|0,go,xn,y(h[s+936>>2]),Qe,et,O)|0)Xe=22;else if(Ge=n[s+520>>2]|0,!Ge)Xe=21;else for(se=0;;){if(q=s+524+(se*24|0)|0,xn=y(h[q>>2]),go=y(h[s+524+(se*24|0)+4>>2]),mo=y(h[s+524+(se*24|0)+16>>2]),NA(d,l,m,c,n[s+524+(se*24|0)+8>>2]|0,xn,n[s+524+(se*24|0)+12>>2]|0,go,mo,y(h[s+524+(se*24|0)+20>>2]),Qe,et,O)|0){Xe=22;break e}if(se=se+1|0,se>>>0>=Ge>>>0){Xe=21;break}}else{if(Q){if(q=s+916|0,!(Ii(y(h[q>>2]),l)|0)){Xe=21;break}if(!(Ii(y(h[s+920>>2]),c)|0)){Xe=21;break}if((n[s+924>>2]|0)!=(d|0)){Xe=21;break}q=(n[s+928>>2]|0)==(m|0)?q:0,Xe=22;break}if(Ge=n[s+520>>2]|0,!Ge)Xe=21;else for(se=0;;){if(q=s+524+(se*24|0)|0,Ii(y(h[q>>2]),l)|0&&Ii(y(h[s+524+(se*24|0)+4>>2]),c)|0&&(n[s+524+(se*24|0)+8>>2]|0)==(d|0)&&(n[s+524+(se*24|0)+12>>2]|0)==(m|0)){Xe=22;break e}if(se=se+1|0,se>>>0>=Ge>>>0){Xe=21;break}}}while(0);do if((Xe|0)==21)o[11697]|0?(q=0,Xe=28):(q=0,Xe=31);else if((Xe|0)==22){if(se=(o[11697]|0)!=0,!((q|0)!=0&(Nr^1)))if(se){Xe=28;break}else{Xe=31;break}Me=q+16|0,n[s+908>>2]=n[Me>>2],Ge=q+20|0,n[s+912>>2]=n[Ge>>2],(o[11698]|0)==0|se^1||(n[at>>2]=LA(qe)|0,n[at+4>>2]=qe,Ao(s,4,2972,at),se=n[s+972>>2]|0,se|0&&ef[se&127](s),d=qa(d,Q)|0,m=qa(m,Q)|0,ya=+y(h[Me>>2]),yo=+y(h[Ge>>2]),n[Lt>>2]=d,n[Lt+4>>2]=m,C[Lt+8>>3]=+l,C[Lt+16>>3]=+c,C[Lt+24>>3]=ya,C[Lt+32>>3]=yo,n[Lt+40>>2]=M,Ao(s,4,2989,Lt))}while(0);return(Xe|0)==28&&(se=LA(qe)|0,n[Me>>2]=se,n[Me+4>>2]=qe,n[Me+8>>2]=Nr?3047:11699,Ao(s,4,3038,Me),se=n[s+972>>2]|0,se|0&&ef[se&127](s),Lt=qa(d,Q)|0,Xe=qa(m,Q)|0,n[Ue>>2]=Lt,n[Ue+4>>2]=Xe,C[Ue+8>>3]=+l,C[Ue+16>>3]=+c,n[Ue+24>>2]=M,Ao(s,4,3049,Ue),Xe=31),(Xe|0)==31&&(si(s,l,c,f,d,m,B,k,Q,O),o[11697]|0&&(se=n[2279]|0,Lt=LA(se)|0,n[Mr>>2]=Lt,n[Mr+4>>2]=se,n[Mr+8>>2]=Nr?3047:11699,Ao(s,4,3083,Mr),se=n[s+972>>2]|0,se|0&&ef[se&127](s),Lt=qa(d,Q)|0,Mr=qa(m,Q)|0,yo=+y(h[s+908>>2]),ya=+y(h[s+912>>2]),n[or>>2]=Lt,n[or+4>>2]=Mr,C[or+8>>3]=yo,C[or+16>>3]=ya,n[or+24>>2]=M,Ao(s,4,3092,or)),n[s+516>>2]=f,q||(se=s+520|0,q=n[se>>2]|0,(q|0)==16&&(o[11697]|0&&Ao(s,4,3124,Xt),n[se>>2]=0,q=0),Q?q=s+916|0:(n[se>>2]=q+1,q=s+524+(q*24|0)|0),h[q>>2]=l,h[q+4>>2]=c,n[q+8>>2]=d,n[q+12>>2]=m,n[q+16>>2]=n[s+908>>2],n[q+20>>2]=n[s+912>>2],q=0)),Q&&(n[s+416>>2]=n[s+908>>2],n[s+420>>2]=n[s+912>>2],o[s+985>>0]=1,o[Pr>>0]=0),n[2279]=(n[2279]|0)+-1,n[s+512>>2]=n[2278],E=ir,Nr|(q|0)==0|0}function ln(s,l,c){s=s|0,l=l|0,c=y(c);var f=Ze;return f=y(K(s,l,c)),y(f+y(re(s,l,c)))}function Ao(s,l,c,f){s=s|0,l=l|0,c=c|0,f=f|0;var d=0,m=0;m=E,E=E+16|0,d=m,n[d>>2]=f,s?f=n[s+976>>2]|0:f=0,yg(f,s,l,c,d),E=m}function LA(s){return s=s|0,(s>>>0>60?3201:3201+(60-s)|0)|0}function qa(s,l){s=s|0,l=l|0;var c=0,f=0,d=0;return d=E,E=E+32|0,c=d+12|0,f=d,n[c>>2]=n[254],n[c+4>>2]=n[255],n[c+8>>2]=n[256],n[f>>2]=n[257],n[f+4>>2]=n[258],n[f+8>>2]=n[259],(s|0)>2?s=11699:s=n[(l?f:c)+(s<<2)>>2]|0,E=d,s|0}function si(s,l,c,f,d,m,B,k,Q,M){s=s|0,l=y(l),c=y(c),f=f|0,d=d|0,m=m|0,B=y(B),k=y(k),Q=Q|0,M=M|0;var O=0,q=0,se=0,Ge=0,Me=Ze,Qe=Ze,et=Ze,Xe=Ze,at=Ze,Ue=Ze,qe=Ze,Lt=0,Mr=0,or=0,Xt=Ze,Pr=Ze,Nr=0,ir=Ze,xn=0,go=0,mo=0,yo=0,ya=0,kp=0,Qp=0,bl=0,Fp=0,Fu=0,Ru=0,Rp=0,Tp=0,Np=0,Xr=0,xl=0,Lp=0,xc=0,Op=Ze,Mp=Ze,Tu=Ze,Nu=Ze,kc=Ze,qs=0,Ja=0,Wo=0,kl=0,rf=0,nf=Ze,Lu=Ze,sf=Ze,of=Ze,Gs=Ze,vs=Ze,Ql=0,Rn=Ze,af=Ze,Eo=Ze,Qc=Ze,Co=Ze,Fc=Ze,lf=0,cf=0,Rc=Ze,Ys=Ze,Fl=0,uf=0,Af=0,ff=0,xr=Ze,zn=0,Ds=0,wo=0,Ws=0,Rr=0,ur=0,Rl=0,zt=Ze,pf=0,li=0;Rl=E,E=E+16|0,qs=Rl+12|0,Ja=Rl+8|0,Wo=Rl+4|0,kl=Rl,Un(s,(d|0)==0|(_t(l)|0)^1,3326),Un(s,(m|0)==0|(_t(c)|0)^1,3406),Ds=mt(s,f)|0,n[s+496>>2]=Ds,Rr=fr(2,Ds)|0,ur=fr(0,Ds)|0,h[s+440>>2]=y(K(s,Rr,B)),h[s+444>>2]=y(re(s,Rr,B)),h[s+428>>2]=y(K(s,ur,B)),h[s+436>>2]=y(re(s,ur,B)),h[s+464>>2]=y(Cr(s,Rr)),h[s+468>>2]=y(yn(s,Rr)),h[s+452>>2]=y(Cr(s,ur)),h[s+460>>2]=y(yn(s,ur)),h[s+488>>2]=y(oi(s,Rr,B)),h[s+492>>2]=y(Oi(s,Rr,B)),h[s+476>>2]=y(oi(s,ur,B)),h[s+484>>2]=y(Oi(s,ur,B));do if(n[s+964>>2]|0)Cg(s,l,c,d,m,B,k);else{if(wo=s+948|0,Ws=(n[s+952>>2]|0)-(n[wo>>2]|0)>>2,!Ws){Gv(s,l,c,d,m,B,k);break}if(!Q&&Yv(s,l,c,d,m,B,k)|0)break;$(s),xl=s+508|0,o[xl>>0]=0,Rr=fr(n[s+4>>2]|0,Ds)|0,ur=Ew(Rr,Ds)|0,zn=pe(Rr)|0,Lp=n[s+8>>2]|0,uf=s+28|0,xc=(n[uf>>2]|0)!=0,Co=zn?B:k,Rc=zn?k:B,Op=y(yp(s,Rr,B)),Mp=y(Cw(s,Rr,B)),Me=y(yp(s,ur,B)),Fc=y(En(s,Rr,B)),Ys=y(En(s,ur,B)),or=zn?d:m,Fl=zn?m:d,xr=zn?Fc:Ys,at=zn?Ys:Fc,Qc=y(ln(s,2,B)),Xe=y(ln(s,0,B)),Qe=y(y(Gr(s+364|0,B))-xr),et=y(y(Gr(s+380|0,B))-xr),Ue=y(y(Gr(s+372|0,k))-at),qe=y(y(Gr(s+388|0,k))-at),Tu=zn?Qe:Ue,Nu=zn?et:qe,Qc=y(l-Qc),l=y(Qc-xr),_t(l)|0?xr=l:xr=y(_n(y(Fg(l,et)),Qe)),af=y(c-Xe),l=y(af-at),_t(l)|0?Eo=l:Eo=y(_n(y(Fg(l,qe)),Ue)),Qe=zn?xr:Eo,Rn=zn?Eo:xr;e:do if((or|0)==1)for(f=0,q=0;;){if(O=gs(s,q)|0,!f)y(rs(O))>y(0)&&y(js(O))>y(0)?f=O:f=0;else if(Fm(O)|0){Ge=0;break e}if(q=q+1|0,q>>>0>=Ws>>>0){Ge=f;break}}else Ge=0;while(0);Lt=Ge+500|0,Mr=Ge+504|0,f=0,O=0,l=y(0),se=0;do{if(q=n[(n[wo>>2]|0)+(se<<2)>>2]|0,(n[q+36>>2]|0)==1)Bu(q),o[q+985>>0]=1,o[q+984>>0]=0;else{Bl(q),Q&&mp(q,mt(q,Ds)|0,Qe,Rn,xr);do if((n[q+24>>2]|0)!=1)if((q|0)==(Ge|0)){n[Lt>>2]=n[2278],h[Mr>>2]=y(0);break}else{Rm(s,q,xr,d,Eo,xr,Eo,m,Ds,M);break}else O|0&&(n[O+960>>2]=q),n[q+960>>2]=0,O=q,f=(f|0)==0?q:f;while(0);vs=y(h[q+504>>2]),l=y(l+y(vs+y(ln(q,Rr,xr))))}se=se+1|0}while((se|0)!=(Ws|0));for(mo=l>Qe,Ql=xc&((or|0)==2&mo)?1:or,xn=(Fl|0)==1,ya=xn&(Q^1),kp=(Ql|0)==1,Qp=(Ql|0)==2,bl=976+(Rr<<2)|0,Fp=(Fl|2|0)==2,Np=xn&(xc^1),Fu=1040+(ur<<2)|0,Ru=1040+(Rr<<2)|0,Rp=976+(ur<<2)|0,Tp=(Fl|0)!=1,mo=xc&((or|0)!=0&mo),go=s+976|0,xn=xn^1,l=Qe,Nr=0,yo=0,vs=y(0),kc=y(0);;){e:do if(Nr>>>0>>0)for(Mr=n[wo>>2]|0,se=0,qe=y(0),Ue=y(0),et=y(0),Qe=y(0),q=0,O=0,Ge=Nr;;){if(Lt=n[Mr+(Ge<<2)>>2]|0,(n[Lt+36>>2]|0)!=1&&(n[Lt+940>>2]=yo,(n[Lt+24>>2]|0)!=1)){if(Xe=y(ln(Lt,Rr,xr)),Xr=n[bl>>2]|0,c=y(Gr(Lt+380+(Xr<<3)|0,Co)),at=y(h[Lt+504>>2]),c=y(Fg(c,at)),c=y(_n(y(Gr(Lt+364+(Xr<<3)|0,Co)),c)),xc&(se|0)!=0&y(Xe+y(Ue+c))>l){m=se,Xe=qe,or=Ge;break e}Xe=y(Xe+c),c=y(Ue+Xe),Xe=y(qe+Xe),Fm(Lt)|0&&(et=y(et+y(rs(Lt))),Qe=y(Qe-y(at*y(js(Lt))))),O|0&&(n[O+960>>2]=Lt),n[Lt+960>>2]=0,se=se+1|0,O=Lt,q=(q|0)==0?Lt:q}else Xe=qe,c=Ue;if(Ge=Ge+1|0,Ge>>>0>>0)qe=Xe,Ue=c;else{m=se,or=Ge;break}}else m=0,Xe=y(0),et=y(0),Qe=y(0),q=0,or=Nr;while(0);Xr=et>y(0)&ety(0)&QeNu&((_t(Nu)|0)^1))l=Nu,Xr=51;else if(o[(n[go>>2]|0)+3>>0]|0)Xr=51;else{if(Xt!=y(0)&&y(rs(s))!=y(0)){Xr=53;break}l=Xe,Xr=53}while(0);if((Xr|0)==51&&(Xr=0,_t(l)|0?Xr=53:(Pr=y(l-Xe),ir=l)),(Xr|0)==53&&(Xr=0,Xe>2]|0,Ge=Pry(0),Ue=y(Pr/Xt),et=y(0),Xe=y(0),l=y(0),O=q;do c=y(Gr(O+380+(se<<3)|0,Co)),Qe=y(Gr(O+364+(se<<3)|0,Co)),Qe=y(Fg(c,y(_n(Qe,y(h[O+504>>2]))))),Ge?(c=y(Qe*y(js(O))),c!=y(-0)&&(zt=y(Qe-y(at*c)),nf=y(Bi(O,Rr,zt,ir,xr)),zt!=nf)&&(et=y(et-y(nf-Qe)),l=y(l+c))):Lt&&(Lu=y(rs(O)),Lu!=y(0))&&(zt=y(Qe+y(Ue*Lu)),sf=y(Bi(O,Rr,zt,ir,xr)),zt!=sf)&&(et=y(et-y(sf-Qe)),Xe=y(Xe-Lu)),O=n[O+960>>2]|0;while((O|0)!=0);if(l=y(qe+l),Qe=y(Pr+et),rf)l=y(0);else{at=y(Xt+Xe),Ge=n[bl>>2]|0,Lt=Qey(0),at=y(Qe/at),l=y(0);do{zt=y(Gr(q+380+(Ge<<3)|0,Co)),et=y(Gr(q+364+(Ge<<3)|0,Co)),et=y(Fg(zt,y(_n(et,y(h[q+504>>2]))))),Lt?(zt=y(et*y(js(q))),Qe=y(-zt),zt!=y(-0)?(zt=y(Ue*Qe),Qe=y(Bi(q,Rr,y(et+(Mr?Qe:zt)),ir,xr))):Qe=et):se&&(of=y(rs(q)),of!=y(0))?Qe=y(Bi(q,Rr,y(et+y(at*of)),ir,xr)):Qe=et,l=y(l-y(Qe-et)),Xe=y(ln(q,Rr,xr)),c=y(ln(q,ur,xr)),Qe=y(Qe+Xe),h[Ja>>2]=Qe,n[kl>>2]=1,et=y(h[q+396>>2]);e:do if(_t(et)|0){O=_t(Rn)|0;do if(!O){if(mo|(ts(q,ur,Rn)|0|xn)||(ha(s,q)|0)!=4||(n[(vl(q,ur)|0)+4>>2]|0)==3||(n[(Pc(q,ur)|0)+4>>2]|0)==3)break;h[qs>>2]=Rn,n[Wo>>2]=1;break e}while(0);if(ts(q,ur,Rn)|0){O=n[q+992+(n[Rp>>2]<<2)>>2]|0,zt=y(c+y(Gr(O,Rn))),h[qs>>2]=zt,O=Tp&(n[O+4>>2]|0)==2,n[Wo>>2]=((_t(zt)|0|O)^1)&1;break}else{h[qs>>2]=Rn,n[Wo>>2]=O?0:2;break}}else zt=y(Qe-Xe),Xt=y(zt/et),zt=y(et*zt),n[Wo>>2]=1,h[qs>>2]=y(c+(zn?Xt:zt));while(0);yr(q,Rr,ir,xr,kl,Ja),yr(q,ur,Rn,xr,Wo,qs);do if(!(ts(q,ur,Rn)|0)&&(ha(s,q)|0)==4){if((n[(vl(q,ur)|0)+4>>2]|0)==3){O=0;break}O=(n[(Pc(q,ur)|0)+4>>2]|0)!=3}else O=0;while(0);zt=y(h[Ja>>2]),Xt=y(h[qs>>2]),pf=n[kl>>2]|0,li=n[Wo>>2]|0,fa(q,zn?zt:Xt,zn?Xt:zt,Ds,zn?pf:li,zn?li:pf,xr,Eo,Q&(O^1),3488,M)|0,o[xl>>0]=o[xl>>0]|o[q+508>>0],q=n[q+960>>2]|0}while((q|0)!=0)}}else l=y(0);if(l=y(Pr+l),li=l>0]=li|u[xl>>0],Qp&l>y(0)?(O=n[bl>>2]|0,(n[s+364+(O<<3)+4>>2]|0)!=0&&(Gs=y(Gr(s+364+(O<<3)|0,Co)),Gs>=y(0))?Qe=y(_n(y(0),y(Gs-y(ir-l)))):Qe=y(0)):Qe=l,Lt=Nr>>>0>>0,Lt){Ge=n[wo>>2]|0,se=Nr,O=0;do q=n[Ge+(se<<2)>>2]|0,n[q+24>>2]|0||(O=((n[(vl(q,Rr)|0)+4>>2]|0)==3&1)+O|0,O=O+((n[(Pc(q,Rr)|0)+4>>2]|0)==3&1)|0),se=se+1|0;while((se|0)!=(or|0));O?(Xe=y(0),c=y(0)):Xr=101}else Xr=101;e:do if((Xr|0)==101)switch(Xr=0,Lp|0){case 1:{O=0,Xe=y(Qe*y(.5)),c=y(0);break e}case 2:{O=0,Xe=Qe,c=y(0);break e}case 3:{if(m>>>0<=1){O=0,Xe=y(0),c=y(0);break e}c=y((m+-1|0)>>>0),O=0,Xe=y(0),c=y(y(_n(Qe,y(0)))/c);break e}case 5:{c=y(Qe/y((m+1|0)>>>0)),O=0,Xe=c;break e}case 4:{c=y(Qe/y(m>>>0)),O=0,Xe=y(c*y(.5));break e}default:{O=0,Xe=y(0),c=y(0);break e}}while(0);if(l=y(Op+Xe),Lt){et=y(Qe/y(O|0)),se=n[wo>>2]|0,q=Nr,Qe=y(0);do{O=n[se+(q<<2)>>2]|0;e:do if((n[O+36>>2]|0)!=1){switch(n[O+24>>2]|0){case 1:{if(gi(O,Rr)|0){if(!Q)break e;zt=y(Or(O,Rr,ir)),zt=y(zt+y(Cr(s,Rr))),zt=y(zt+y(K(O,Rr,xr))),h[O+400+(n[Ru>>2]<<2)>>2]=zt;break e}break}case 0:if(li=(n[(vl(O,Rr)|0)+4>>2]|0)==3,zt=y(et+l),l=li?zt:l,Q&&(li=O+400+(n[Ru>>2]<<2)|0,h[li>>2]=y(l+y(h[li>>2]))),li=(n[(Pc(O,Rr)|0)+4>>2]|0)==3,zt=y(et+l),l=li?zt:l,ya){zt=y(c+y(ln(O,Rr,xr))),Qe=Rn,l=y(l+y(zt+y(h[O+504>>2])));break e}else{l=y(l+y(c+y(ns(O,Rr,xr)))),Qe=y(_n(Qe,y(ns(O,ur,xr))));break e}default:}Q&&(zt=y(Xe+y(Cr(s,Rr))),li=O+400+(n[Ru>>2]<<2)|0,h[li>>2]=y(zt+y(h[li>>2])))}while(0);q=q+1|0}while((q|0)!=(or|0))}else Qe=y(0);if(c=y(Mp+l),Fp?Xe=y(y(Bi(s,ur,y(Ys+Qe),Rc,B))-Ys):Xe=Rn,et=y(y(Bi(s,ur,y(Ys+(Np?Rn:Qe)),Rc,B))-Ys),Lt&Q){q=Nr;do{se=n[(n[wo>>2]|0)+(q<<2)>>2]|0;do if((n[se+36>>2]|0)!=1){if((n[se+24>>2]|0)==1){if(gi(se,ur)|0){if(zt=y(Or(se,ur,Rn)),zt=y(zt+y(Cr(s,ur))),zt=y(zt+y(K(se,ur,xr))),O=n[Fu>>2]|0,h[se+400+(O<<2)>>2]=zt,!(_t(zt)|0))break}else O=n[Fu>>2]|0;zt=y(Cr(s,ur)),h[se+400+(O<<2)>>2]=y(zt+y(K(se,ur,xr)));break}O=ha(s,se)|0;do if((O|0)==4){if((n[(vl(se,ur)|0)+4>>2]|0)==3){Xr=139;break}if((n[(Pc(se,ur)|0)+4>>2]|0)==3){Xr=139;break}if(ts(se,ur,Rn)|0){l=Me;break}pf=n[se+908+(n[bl>>2]<<2)>>2]|0,n[qs>>2]=pf,l=y(h[se+396>>2]),li=_t(l)|0,Qe=(n[v>>2]=pf,y(h[v>>2])),li?l=et:(Pr=y(ln(se,ur,xr)),zt=y(Qe/l),l=y(l*Qe),l=y(Pr+(zn?zt:l))),h[Ja>>2]=l,h[qs>>2]=y(y(ln(se,Rr,xr))+Qe),n[Wo>>2]=1,n[kl>>2]=1,yr(se,Rr,ir,xr,Wo,qs),yr(se,ur,Rn,xr,kl,Ja),l=y(h[qs>>2]),Pr=y(h[Ja>>2]),zt=zn?l:Pr,l=zn?Pr:l,li=((_t(zt)|0)^1)&1,fa(se,zt,l,Ds,li,((_t(l)|0)^1)&1,xr,Eo,1,3493,M)|0,l=Me}else Xr=139;while(0);e:do if((Xr|0)==139){Xr=0,l=y(Xe-y(ns(se,ur,xr)));do if((n[(vl(se,ur)|0)+4>>2]|0)==3){if((n[(Pc(se,ur)|0)+4>>2]|0)!=3)break;l=y(Me+y(_n(y(0),y(l*y(.5)))));break e}while(0);if((n[(Pc(se,ur)|0)+4>>2]|0)==3){l=Me;break}if((n[(vl(se,ur)|0)+4>>2]|0)==3){l=y(Me+y(_n(y(0),l)));break}switch(O|0){case 1:{l=Me;break e}case 2:{l=y(Me+y(l*y(.5)));break e}default:{l=y(Me+l);break e}}}while(0);zt=y(vs+l),li=se+400+(n[Fu>>2]<<2)|0,h[li>>2]=y(zt+y(h[li>>2]))}while(0);q=q+1|0}while((q|0)!=(or|0))}if(vs=y(vs+et),kc=y(_n(kc,c)),m=yo+1|0,or>>>0>=Ws>>>0)break;l=ir,Nr=or,yo=m}do if(Q){if(O=m>>>0>1,!O&&!(Yi(s)|0))break;if(!(_t(Rn)|0)){l=y(Rn-vs);e:do switch(n[s+12>>2]|0){case 3:{Me=y(Me+l),Ue=y(0);break}case 2:{Me=y(Me+y(l*y(.5))),Ue=y(0);break}case 4:{Rn>vs?Ue=y(l/y(m>>>0)):Ue=y(0);break}case 7:if(Rn>vs){Me=y(Me+y(l/y(m<<1>>>0))),Ue=y(l/y(m>>>0)),Ue=O?Ue:y(0);break e}else{Me=y(Me+y(l*y(.5))),Ue=y(0);break e}case 6:{Ue=y(l/y(yo>>>0)),Ue=Rn>vs&O?Ue:y(0);break}default:Ue=y(0)}while(0);if(m|0)for(Lt=1040+(ur<<2)|0,Mr=976+(ur<<2)|0,Ge=0,q=0;;){e:do if(q>>>0>>0)for(Qe=y(0),et=y(0),l=y(0),se=q;;){O=n[(n[wo>>2]|0)+(se<<2)>>2]|0;do if((n[O+36>>2]|0)!=1&&(n[O+24>>2]|0)==0){if((n[O+940>>2]|0)!=(Ge|0))break e;if(Tm(O,ur)|0&&(zt=y(h[O+908+(n[Mr>>2]<<2)>>2]),l=y(_n(l,y(zt+y(ln(O,ur,xr)))))),(ha(s,O)|0)!=5)break;Gs=y(Ya(O)),Gs=y(Gs+y(K(O,0,xr))),zt=y(h[O+912>>2]),zt=y(y(zt+y(ln(O,0,xr)))-Gs),Gs=y(_n(et,Gs)),zt=y(_n(Qe,zt)),Qe=zt,et=Gs,l=y(_n(l,y(Gs+zt)))}while(0);if(O=se+1|0,O>>>0>>0)se=O;else{se=O;break}}else et=y(0),l=y(0),se=q;while(0);if(at=y(Ue+l),c=Me,Me=y(Me+at),q>>>0>>0){Xe=y(c+et),O=q;do{q=n[(n[wo>>2]|0)+(O<<2)>>2]|0;e:do if((n[q+36>>2]|0)!=1&&(n[q+24>>2]|0)==0)switch(ha(s,q)|0){case 1:{zt=y(c+y(K(q,ur,xr))),h[q+400+(n[Lt>>2]<<2)>>2]=zt;break e}case 3:{zt=y(y(Me-y(re(q,ur,xr)))-y(h[q+908+(n[Mr>>2]<<2)>>2])),h[q+400+(n[Lt>>2]<<2)>>2]=zt;break e}case 2:{zt=y(c+y(y(at-y(h[q+908+(n[Mr>>2]<<2)>>2]))*y(.5))),h[q+400+(n[Lt>>2]<<2)>>2]=zt;break e}case 4:{if(zt=y(c+y(K(q,ur,xr))),h[q+400+(n[Lt>>2]<<2)>>2]=zt,ts(q,ur,Rn)|0||(zn?(Qe=y(h[q+908>>2]),l=y(Qe+y(ln(q,Rr,xr))),et=at):(et=y(h[q+912>>2]),et=y(et+y(ln(q,ur,xr))),l=at,Qe=y(h[q+908>>2])),Ii(l,Qe)|0&&Ii(et,y(h[q+912>>2]))|0))break e;fa(q,l,et,Ds,1,1,xr,Eo,1,3501,M)|0;break e}case 5:{h[q+404>>2]=y(y(Xe-y(Ya(q)))+y(Or(q,0,Rn)));break e}default:break e}while(0);O=O+1|0}while((O|0)!=(se|0))}if(Ge=Ge+1|0,(Ge|0)==(m|0))break;q=se}}}while(0);if(h[s+908>>2]=y(Bi(s,2,Qc,B,B)),h[s+912>>2]=y(Bi(s,0,af,k,B)),(Ql|0)!=0&&(lf=n[s+32>>2]|0,cf=(Ql|0)==2,!(cf&(lf|0)!=2))?cf&(lf|0)==2&&(l=y(Fc+ir),l=y(_n(y(Fg(l,y(OA(s,Rr,kc,Co)))),Fc)),Xr=198):(l=y(Bi(s,Rr,kc,Co,B)),Xr=198),(Xr|0)==198&&(h[s+908+(n[976+(Rr<<2)>>2]<<2)>>2]=l),(Fl|0)!=0&&(Af=n[s+32>>2]|0,ff=(Fl|0)==2,!(ff&(Af|0)!=2))?ff&(Af|0)==2&&(l=y(Ys+Rn),l=y(_n(y(Fg(l,y(OA(s,ur,y(Ys+vs),Rc)))),Ys)),Xr=204):(l=y(Bi(s,ur,y(Ys+vs),Rc,B)),Xr=204),(Xr|0)==204&&(h[s+908+(n[976+(ur<<2)>>2]<<2)>>2]=l),Q){if((n[uf>>2]|0)==2){q=976+(ur<<2)|0,se=1040+(ur<<2)|0,O=0;do Ge=gs(s,O)|0,n[Ge+24>>2]|0||(pf=n[q>>2]|0,zt=y(h[s+908+(pf<<2)>>2]),li=Ge+400+(n[se>>2]<<2)|0,zt=y(zt-y(h[li>>2])),h[li>>2]=y(zt-y(h[Ge+908+(pf<<2)>>2]))),O=O+1|0;while((O|0)!=(Ws|0))}if(f|0){O=zn?Ql:d;do Nm(s,f,xr,O,Eo,Ds,M),f=n[f+960>>2]|0;while((f|0)!=0)}if(O=(Rr|2|0)==3,q=(ur|2|0)==3,O|q){f=0;do se=n[(n[wo>>2]|0)+(f<<2)>>2]|0,(n[se+36>>2]|0)!=1&&(O&&Ep(s,se,Rr),q&&Ep(s,se,ur)),f=f+1|0;while((f|0)!=(Ws|0))}}}while(0);E=Rl}function pa(s,l){s=s|0,l=y(l);var c=0;oa(s,l>=y(0),3147),c=l==y(0),h[s+4>>2]=c?y(0):l}function vc(s,l,c,f){s=s|0,l=y(l),c=y(c),f=f|0;var d=Ze,m=Ze,B=0,k=0,Q=0;n[2278]=(n[2278]|0)+1,Bl(s),ts(s,2,l)|0?(d=y(Gr(n[s+992>>2]|0,l)),Q=1,d=y(d+y(ln(s,2,l)))):(d=y(Gr(s+380|0,l)),d>=y(0)?Q=2:(Q=((_t(l)|0)^1)&1,d=l)),ts(s,0,c)|0?(m=y(Gr(n[s+996>>2]|0,c)),k=1,m=y(m+y(ln(s,0,l)))):(m=y(Gr(s+388|0,c)),m>=y(0)?k=2:(k=((_t(c)|0)^1)&1,m=c)),B=s+976|0,fa(s,d,m,f,Q,k,l,c,1,3189,n[B>>2]|0)|0&&(mp(s,n[s+496>>2]|0,l,c,l),Dc(s,y(h[(n[B>>2]|0)+4>>2]),y(0),y(0)),o[11696]|0)&&xm(s,7)}function Bl(s){s=s|0;var l=0,c=0,f=0,d=0,m=0,B=0,k=0,Q=0,M=0,O=0;k=E,E=E+32|0,B=k+24|0,m=k+16|0,f=k+8|0,d=k,c=0;do l=s+380+(c<<3)|0,(n[s+380+(c<<3)+4>>2]|0)!=0&&(Q=l,M=n[Q+4>>2]|0,O=f,n[O>>2]=n[Q>>2],n[O+4>>2]=M,O=s+364+(c<<3)|0,M=n[O+4>>2]|0,Q=d,n[Q>>2]=n[O>>2],n[Q+4>>2]=M,n[m>>2]=n[f>>2],n[m+4>>2]=n[f+4>>2],n[B>>2]=n[d>>2],n[B+4>>2]=n[d+4>>2],ws(m,B)|0)||(l=s+348+(c<<3)|0),n[s+992+(c<<2)>>2]=l,c=c+1|0;while((c|0)!=2);E=k}function ts(s,l,c){s=s|0,l=l|0,c=y(c);var f=0;switch(s=n[s+992+(n[976+(l<<2)>>2]<<2)>>2]|0,n[s+4>>2]|0){case 0:case 3:{s=0;break}case 1:{y(h[s>>2])>2])>2]|0){case 2:{l=y(y(y(h[s>>2])*l)/y(100));break}case 1:{l=y(h[s>>2]);break}default:l=y(Ae)}return y(l)}function mp(s,l,c,f,d){s=s|0,l=l|0,c=y(c),f=y(f),d=y(d);var m=0,B=Ze;l=n[s+944>>2]|0?l:1,m=fr(n[s+4>>2]|0,l)|0,l=Ew(m,l)|0,c=y(Lm(s,m,c)),f=y(Lm(s,l,f)),B=y(c+y(K(s,m,d))),h[s+400+(n[1040+(m<<2)>>2]<<2)>>2]=B,c=y(c+y(re(s,m,d))),h[s+400+(n[1e3+(m<<2)>>2]<<2)>>2]=c,c=y(f+y(K(s,l,d))),h[s+400+(n[1040+(l<<2)>>2]<<2)>>2]=c,d=y(f+y(re(s,l,d))),h[s+400+(n[1e3+(l<<2)>>2]<<2)>>2]=d}function Dc(s,l,c,f){s=s|0,l=y(l),c=y(c),f=y(f);var d=0,m=0,B=Ze,k=Ze,Q=0,M=0,O=Ze,q=0,se=Ze,Ge=Ze,Me=Ze,Qe=Ze;if(l!=y(0)&&(d=s+400|0,Qe=y(h[d>>2]),m=s+404|0,Me=y(h[m>>2]),q=s+416|0,Ge=y(h[q>>2]),M=s+420|0,B=y(h[M>>2]),se=y(Qe+c),O=y(Me+f),f=y(se+Ge),k=y(O+B),Q=(n[s+988>>2]|0)==1,h[d>>2]=y(Go(Qe,l,0,Q)),h[m>>2]=y(Go(Me,l,0,Q)),c=y(kR(y(Ge*l),y(1))),Ii(c,y(0))|0?m=0:m=(Ii(c,y(1))|0)^1,c=y(kR(y(B*l),y(1))),Ii(c,y(0))|0?d=0:d=(Ii(c,y(1))|0)^1,Qe=y(Go(f,l,Q&m,Q&(m^1))),h[q>>2]=y(Qe-y(Go(se,l,0,Q))),Qe=y(Go(k,l,Q&d,Q&(d^1))),h[M>>2]=y(Qe-y(Go(O,l,0,Q))),m=(n[s+952>>2]|0)-(n[s+948>>2]|0)>>2,m|0)){d=0;do Dc(gs(s,d)|0,l,se,O),d=d+1|0;while((d|0)!=(m|0))}}function yw(s,l,c,f,d){switch(s=s|0,l=l|0,c=c|0,f=f|0,d=d|0,c|0){case 5:case 0:{s=l7(n[489]|0,f,d)|0;break}default:s=t3e(f,d)|0}return s|0}function mg(s,l,c,f){s=s|0,l=l|0,c=c|0,f=f|0;var d=0,m=0;d=E,E=E+16|0,m=d,n[m>>2]=f,yg(s,0,l,c,m),E=d}function yg(s,l,c,f,d){if(s=s|0,l=l|0,c=c|0,f=f|0,d=d|0,s=s|0?s:956,x7[n[s+8>>2]&1](s,l,c,f,d)|0,(c|0)==5)Rt();else return}function Ga(s,l,c){s=s|0,l=l|0,c=c|0,o[s+l>>0]=c&1}function Qm(s,l){s=s|0,l=l|0;var c=0,f=0;n[s>>2]=0,n[s+4>>2]=0,n[s+8>>2]=0,c=l+4|0,f=(n[c>>2]|0)-(n[l>>2]|0)>>2,f|0&&(Eg(s,f),Qt(s,n[l>>2]|0,n[c>>2]|0,f))}function Eg(s,l){s=s|0,l=l|0;var c=0;if((N(s)|0)>>>0>>0&&Jr(s),l>>>0>1073741823)Rt();else{c=Kt(l<<2)|0,n[s+4>>2]=c,n[s>>2]=c,n[s+8>>2]=c+(l<<2);return}}function Qt(s,l,c,f){s=s|0,l=l|0,c=c|0,f=f|0,f=s+4|0,s=c-l|0,(s|0)>0&&(Dr(n[f>>2]|0,l|0,s|0)|0,n[f>>2]=(n[f>>2]|0)+(s>>>2<<2))}function N(s){return s=s|0,1073741823}function K(s,l,c){return s=s|0,l=l|0,c=y(c),pe(l)|0&&(n[s+96>>2]|0)!=0?s=s+92|0:s=Fn(s+60|0,n[1040+(l<<2)>>2]|0,992)|0,y(Je(s,c))}function re(s,l,c){return s=s|0,l=l|0,c=y(c),pe(l)|0&&(n[s+104>>2]|0)!=0?s=s+100|0:s=Fn(s+60|0,n[1e3+(l<<2)>>2]|0,992)|0,y(Je(s,c))}function pe(s){return s=s|0,(s|1|0)==3|0}function Je(s,l){return s=s|0,l=y(l),(n[s+4>>2]|0)==3?l=y(0):l=y(Gr(s,l)),y(l)}function mt(s,l){return s=s|0,l=l|0,s=n[s>>2]|0,((s|0)==0?(l|0)>1?l:1:s)|0}function fr(s,l){s=s|0,l=l|0;var c=0;e:do if((l|0)==2){switch(s|0){case 2:{s=3;break e}case 3:break;default:{c=4;break e}}s=2}else c=4;while(0);return s|0}function Cr(s,l){s=s|0,l=l|0;var c=Ze;return pe(l)|0&&(n[s+312>>2]|0)!=0&&(c=y(h[s+308>>2]),c>=y(0))||(c=y(_n(y(h[(Fn(s+276|0,n[1040+(l<<2)>>2]|0,992)|0)>>2]),y(0)))),y(c)}function yn(s,l){s=s|0,l=l|0;var c=Ze;return pe(l)|0&&(n[s+320>>2]|0)!=0&&(c=y(h[s+316>>2]),c>=y(0))||(c=y(_n(y(h[(Fn(s+276|0,n[1e3+(l<<2)>>2]|0,992)|0)>>2]),y(0)))),y(c)}function oi(s,l,c){s=s|0,l=l|0,c=y(c);var f=Ze;return pe(l)|0&&(n[s+240>>2]|0)!=0&&(f=y(Gr(s+236|0,c)),f>=y(0))||(f=y(_n(y(Gr(Fn(s+204|0,n[1040+(l<<2)>>2]|0,992)|0,c)),y(0)))),y(f)}function Oi(s,l,c){s=s|0,l=l|0,c=y(c);var f=Ze;return pe(l)|0&&(n[s+248>>2]|0)!=0&&(f=y(Gr(s+244|0,c)),f>=y(0))||(f=y(_n(y(Gr(Fn(s+204|0,n[1e3+(l<<2)>>2]|0,992)|0,c)),y(0)))),y(f)}function Cg(s,l,c,f,d,m,B){s=s|0,l=y(l),c=y(c),f=f|0,d=d|0,m=y(m),B=y(B);var k=Ze,Q=Ze,M=Ze,O=Ze,q=Ze,se=Ze,Ge=0,Me=0,Qe=0;Qe=E,E=E+16|0,Ge=Qe,Me=s+964|0,Un(s,(n[Me>>2]|0)!=0,3519),k=y(En(s,2,l)),Q=y(En(s,0,l)),M=y(ln(s,2,l)),O=y(ln(s,0,l)),_t(l)|0?q=l:q=y(_n(y(0),y(y(l-M)-k))),_t(c)|0?se=c:se=y(_n(y(0),y(y(c-O)-Q))),(f|0)==1&(d|0)==1?(h[s+908>>2]=y(Bi(s,2,y(l-M),m,m)),l=y(Bi(s,0,y(c-O),B,m))):(k7[n[Me>>2]&1](Ge,s,q,f,se,d),q=y(k+y(h[Ge>>2])),se=y(l-M),h[s+908>>2]=y(Bi(s,2,(f|2|0)==2?q:se,m,m)),se=y(Q+y(h[Ge+4>>2])),l=y(c-O),l=y(Bi(s,0,(d|2|0)==2?se:l,B,m))),h[s+912>>2]=l,E=Qe}function Gv(s,l,c,f,d,m,B){s=s|0,l=y(l),c=y(c),f=f|0,d=d|0,m=y(m),B=y(B);var k=Ze,Q=Ze,M=Ze,O=Ze;M=y(En(s,2,m)),k=y(En(s,0,m)),O=y(ln(s,2,m)),Q=y(ln(s,0,m)),l=y(l-O),h[s+908>>2]=y(Bi(s,2,(f|2|0)==2?M:l,m,m)),c=y(c-Q),h[s+912>>2]=y(Bi(s,0,(d|2|0)==2?k:c,B,m))}function Yv(s,l,c,f,d,m,B){s=s|0,l=y(l),c=y(c),f=f|0,d=d|0,m=y(m),B=y(B);var k=0,Q=Ze,M=Ze;return k=(f|0)==2,!(l<=y(0)&k)&&!(c<=y(0)&(d|0)==2)&&!((f|0)==1&(d|0)==1)?s=0:(Q=y(ln(s,0,m)),M=y(ln(s,2,m)),k=l>2]=y(Bi(s,2,k?y(0):l,m,m)),l=y(c-Q),k=c>2]=y(Bi(s,0,k?y(0):l,B,m)),s=1),s|0}function Ew(s,l){return s=s|0,l=l|0,MA(s)|0?s=fr(2,l)|0:s=0,s|0}function yp(s,l,c){return s=s|0,l=l|0,c=y(c),c=y(oi(s,l,c)),y(c+y(Cr(s,l)))}function Cw(s,l,c){return s=s|0,l=l|0,c=y(c),c=y(Oi(s,l,c)),y(c+y(yn(s,l)))}function En(s,l,c){s=s|0,l=l|0,c=y(c);var f=Ze;return f=y(yp(s,l,c)),y(f+y(Cw(s,l,c)))}function Fm(s){return s=s|0,n[s+24>>2]|0?s=0:y(rs(s))!=y(0)?s=1:s=y(js(s))!=y(0),s|0}function rs(s){s=s|0;var l=Ze;if(n[s+944>>2]|0){if(l=y(h[s+44>>2]),_t(l)|0)return l=y(h[s+40>>2]),s=l>y(0)&((_t(l)|0)^1),y(s?l:y(0))}else l=y(0);return y(l)}function js(s){s=s|0;var l=Ze,c=0,f=Ze;do if(n[s+944>>2]|0){if(l=y(h[s+48>>2]),_t(l)|0){if(c=o[(n[s+976>>2]|0)+2>>0]|0,c<<24>>24==0&&(f=y(h[s+40>>2]),f>24?y(1):y(0)}}else l=y(0);while(0);return y(l)}function Bu(s){s=s|0;var l=0,c=0;if(zm(s+400|0,0,540)|0,o[s+985>>0]=1,$(s),c=wi(s)|0,c|0){l=s+948|0,s=0;do Bu(n[(n[l>>2]|0)+(s<<2)>>2]|0),s=s+1|0;while((s|0)!=(c|0))}}function Rm(s,l,c,f,d,m,B,k,Q,M){s=s|0,l=l|0,c=y(c),f=f|0,d=y(d),m=y(m),B=y(B),k=k|0,Q=Q|0,M=M|0;var O=0,q=Ze,se=0,Ge=0,Me=Ze,Qe=Ze,et=0,Xe=Ze,at=0,Ue=Ze,qe=0,Lt=0,Mr=0,or=0,Xt=0,Pr=0,Nr=0,ir=0,xn=0,go=0;xn=E,E=E+16|0,Mr=xn+12|0,or=xn+8|0,Xt=xn+4|0,Pr=xn,ir=fr(n[s+4>>2]|0,Q)|0,qe=pe(ir)|0,q=y(Gr(ww(l)|0,qe?m:B)),Lt=ts(l,2,m)|0,Nr=ts(l,0,B)|0;do if(!(_t(q)|0)&&!(_t(qe?c:d)|0)){if(O=l+504|0,!(_t(y(h[O>>2]))|0)&&(!(Iw(n[l+976>>2]|0,0)|0)||(n[l+500>>2]|0)==(n[2278]|0)))break;h[O>>2]=y(_n(q,y(En(l,ir,m))))}else se=7;while(0);do if((se|0)==7){if(at=qe^1,!(at|Lt^1)){B=y(Gr(n[l+992>>2]|0,m)),h[l+504>>2]=y(_n(B,y(En(l,2,m))));break}if(!(qe|Nr^1)){B=y(Gr(n[l+996>>2]|0,B)),h[l+504>>2]=y(_n(B,y(En(l,0,m))));break}h[Mr>>2]=y(Ae),h[or>>2]=y(Ae),n[Xt>>2]=0,n[Pr>>2]=0,Xe=y(ln(l,2,m)),Ue=y(ln(l,0,m)),Lt?(Me=y(Xe+y(Gr(n[l+992>>2]|0,m))),h[Mr>>2]=Me,n[Xt>>2]=1,Ge=1):(Ge=0,Me=y(Ae)),Nr?(q=y(Ue+y(Gr(n[l+996>>2]|0,B))),h[or>>2]=q,n[Pr>>2]=1,O=1):(O=0,q=y(Ae)),se=n[s+32>>2]|0,qe&(se|0)==2?se=2:_t(Me)|0&&!(_t(c)|0)&&(h[Mr>>2]=c,n[Xt>>2]=2,Ge=2,Me=c),!((se|0)==2&at)&&_t(q)|0&&!(_t(d)|0)&&(h[or>>2]=d,n[Pr>>2]=2,O=2,q=d),Qe=y(h[l+396>>2]),et=_t(Qe)|0;do if(et)se=Ge;else{if((Ge|0)==1&at){h[or>>2]=y(y(Me-Xe)/Qe),n[Pr>>2]=1,O=1,se=1;break}qe&(O|0)==1?(h[Mr>>2]=y(Qe*y(q-Ue)),n[Xt>>2]=1,O=1,se=1):se=Ge}while(0);go=_t(c)|0,Ge=(ha(s,l)|0)!=4,!(qe|Lt|((f|0)!=1|go)|(Ge|(se|0)==1))&&(h[Mr>>2]=c,n[Xt>>2]=1,!et)&&(h[or>>2]=y(y(c-Xe)/Qe),n[Pr>>2]=1,O=1),!(Nr|at|((k|0)!=1|(_t(d)|0))|(Ge|(O|0)==1))&&(h[or>>2]=d,n[Pr>>2]=1,!et)&&(h[Mr>>2]=y(Qe*y(d-Ue)),n[Xt>>2]=1),yr(l,2,m,m,Xt,Mr),yr(l,0,B,m,Pr,or),c=y(h[Mr>>2]),d=y(h[or>>2]),fa(l,c,d,Q,n[Xt>>2]|0,n[Pr>>2]|0,m,B,0,3565,M)|0,B=y(h[l+908+(n[976+(ir<<2)>>2]<<2)>>2]),h[l+504>>2]=y(_n(B,y(En(l,ir,m))))}while(0);n[l+500>>2]=n[2278],E=xn}function Bi(s,l,c,f,d){return s=s|0,l=l|0,c=y(c),f=y(f),d=y(d),f=y(OA(s,l,c,f)),y(_n(f,y(En(s,l,d))))}function ha(s,l){return s=s|0,l=l|0,l=l+20|0,l=n[((n[l>>2]|0)==0?s+16|0:l)>>2]|0,(l|0)==5&&MA(n[s+4>>2]|0)|0&&(l=1),l|0}function vl(s,l){return s=s|0,l=l|0,pe(l)|0&&(n[s+96>>2]|0)!=0?l=4:l=n[1040+(l<<2)>>2]|0,s+60+(l<<3)|0}function Pc(s,l){return s=s|0,l=l|0,pe(l)|0&&(n[s+104>>2]|0)!=0?l=5:l=n[1e3+(l<<2)>>2]|0,s+60+(l<<3)|0}function yr(s,l,c,f,d,m){switch(s=s|0,l=l|0,c=y(c),f=y(f),d=d|0,m=m|0,c=y(Gr(s+380+(n[976+(l<<2)>>2]<<3)|0,c)),c=y(c+y(ln(s,l,f))),n[d>>2]|0){case 2:case 1:{d=_t(c)|0,f=y(h[m>>2]),h[m>>2]=d|f>2]=2,h[m>>2]=c);break}default:}}function gi(s,l){return s=s|0,l=l|0,s=s+132|0,pe(l)|0&&(n[(Fn(s,4,948)|0)+4>>2]|0)!=0?s=1:s=(n[(Fn(s,n[1040+(l<<2)>>2]|0,948)|0)+4>>2]|0)!=0,s|0}function Or(s,l,c){s=s|0,l=l|0,c=y(c);var f=0,d=0;return s=s+132|0,pe(l)|0&&(f=Fn(s,4,948)|0,(n[f+4>>2]|0)!=0)?d=4:(f=Fn(s,n[1040+(l<<2)>>2]|0,948)|0,n[f+4>>2]|0?d=4:c=y(0)),(d|0)==4&&(c=y(Gr(f,c))),y(c)}function ns(s,l,c){s=s|0,l=l|0,c=y(c);var f=Ze;return f=y(h[s+908+(n[976+(l<<2)>>2]<<2)>>2]),f=y(f+y(K(s,l,c))),y(f+y(re(s,l,c)))}function Yi(s){s=s|0;var l=0,c=0,f=0;e:do if(MA(n[s+4>>2]|0)|0)l=0;else if((n[s+16>>2]|0)!=5)if(c=wi(s)|0,!c)l=0;else for(l=0;;){if(f=gs(s,l)|0,(n[f+24>>2]|0)==0&&(n[f+20>>2]|0)==5){l=1;break e}if(l=l+1|0,l>>>0>=c>>>0){l=0;break}}else l=1;while(0);return l|0}function Tm(s,l){s=s|0,l=l|0;var c=Ze;return c=y(h[s+908+(n[976+(l<<2)>>2]<<2)>>2]),c>=y(0)&((_t(c)|0)^1)|0}function Ya(s){s=s|0;var l=Ze,c=0,f=0,d=0,m=0,B=0,k=0,Q=Ze;if(c=n[s+968>>2]|0,c)Q=y(h[s+908>>2]),l=y(h[s+912>>2]),l=y(D7[c&0](s,Q,l)),Un(s,(_t(l)|0)^1,3573);else{m=wi(s)|0;do if(m|0){for(c=0,d=0;;){if(f=gs(s,d)|0,n[f+940>>2]|0){B=8;break}if((n[f+24>>2]|0)!=1)if(k=(ha(s,f)|0)==5,k){c=f;break}else c=(c|0)==0?f:c;if(d=d+1|0,d>>>0>=m>>>0){B=8;break}}if((B|0)==8&&!c)break;return l=y(Ya(c)),y(l+y(h[c+404>>2]))}while(0);l=y(h[s+912>>2])}return y(l)}function OA(s,l,c,f){s=s|0,l=l|0,c=y(c),f=y(f);var d=Ze,m=0;return MA(l)|0?(l=1,m=3):pe(l)|0?(l=0,m=3):(f=y(Ae),d=y(Ae)),(m|0)==3&&(d=y(Gr(s+364+(l<<3)|0,f)),f=y(Gr(s+380+(l<<3)|0,f))),m=f=y(0)&((_t(f)|0)^1)),c=m?f:c,m=d>=y(0)&((_t(d)|0)^1)&c>2]|0,m)|0,Me=Ew(et,m)|0,Qe=pe(et)|0,q=y(ln(l,2,c)),se=y(ln(l,0,c)),ts(l,2,c)|0?k=y(q+y(Gr(n[l+992>>2]|0,c))):gi(l,2)|0&&sr(l,2)|0?(k=y(h[s+908>>2]),Q=y(Cr(s,2)),Q=y(k-y(Q+y(yn(s,2)))),k=y(Or(l,2,c)),k=y(Bi(l,2,y(Q-y(k+y(vu(l,2,c)))),c,c))):k=y(Ae),ts(l,0,d)|0?Q=y(se+y(Gr(n[l+996>>2]|0,d))):gi(l,0)|0&&sr(l,0)|0?(Q=y(h[s+912>>2]),at=y(Cr(s,0)),at=y(Q-y(at+y(yn(s,0)))),Q=y(Or(l,0,d)),Q=y(Bi(l,0,y(at-y(Q+y(vu(l,0,d)))),d,c))):Q=y(Ae),M=_t(k)|0,O=_t(Q)|0;do if(M^O&&(Ge=y(h[l+396>>2]),!(_t(Ge)|0)))if(M){k=y(q+y(y(Q-se)*Ge));break}else{at=y(se+y(y(k-q)/Ge)),Q=O?at:Q;break}while(0);O=_t(k)|0,M=_t(Q)|0,O|M&&(Ue=(O^1)&1,f=c>y(0)&((f|0)!=0&O),k=Qe?k:f?c:k,fa(l,k,Q,m,Qe?Ue:f?2:Ue,O&(M^1)&1,k,Q,0,3623,B)|0,k=y(h[l+908>>2]),k=y(k+y(ln(l,2,c))),Q=y(h[l+912>>2]),Q=y(Q+y(ln(l,0,c)))),fa(l,k,Q,m,1,1,k,Q,1,3635,B)|0,sr(l,et)|0&&!(gi(l,et)|0)?(Ue=n[976+(et<<2)>>2]|0,at=y(h[s+908+(Ue<<2)>>2]),at=y(at-y(h[l+908+(Ue<<2)>>2])),at=y(at-y(yn(s,et))),at=y(at-y(re(l,et,c))),at=y(at-y(vu(l,et,Qe?c:d))),h[l+400+(n[1040+(et<<2)>>2]<<2)>>2]=at):Xe=21;do if((Xe|0)==21){if(!(gi(l,et)|0)&&(n[s+8>>2]|0)==1){Ue=n[976+(et<<2)>>2]|0,at=y(h[s+908+(Ue<<2)>>2]),at=y(y(at-y(h[l+908+(Ue<<2)>>2]))*y(.5)),h[l+400+(n[1040+(et<<2)>>2]<<2)>>2]=at;break}!(gi(l,et)|0)&&(n[s+8>>2]|0)==2&&(Ue=n[976+(et<<2)>>2]|0,at=y(h[s+908+(Ue<<2)>>2]),at=y(at-y(h[l+908+(Ue<<2)>>2])),h[l+400+(n[1040+(et<<2)>>2]<<2)>>2]=at)}while(0);sr(l,Me)|0&&!(gi(l,Me)|0)?(Ue=n[976+(Me<<2)>>2]|0,at=y(h[s+908+(Ue<<2)>>2]),at=y(at-y(h[l+908+(Ue<<2)>>2])),at=y(at-y(yn(s,Me))),at=y(at-y(re(l,Me,c))),at=y(at-y(vu(l,Me,Qe?d:c))),h[l+400+(n[1040+(Me<<2)>>2]<<2)>>2]=at):Xe=30;do if((Xe|0)==30&&!(gi(l,Me)|0)){if((ha(s,l)|0)==2){Ue=n[976+(Me<<2)>>2]|0,at=y(h[s+908+(Ue<<2)>>2]),at=y(y(at-y(h[l+908+(Ue<<2)>>2]))*y(.5)),h[l+400+(n[1040+(Me<<2)>>2]<<2)>>2]=at;break}Ue=(ha(s,l)|0)==3,Ue^(n[s+28>>2]|0)==2&&(Ue=n[976+(Me<<2)>>2]|0,at=y(h[s+908+(Ue<<2)>>2]),at=y(at-y(h[l+908+(Ue<<2)>>2])),h[l+400+(n[1040+(Me<<2)>>2]<<2)>>2]=at)}while(0)}function Ep(s,l,c){s=s|0,l=l|0,c=c|0;var f=Ze,d=0;d=n[976+(c<<2)>>2]|0,f=y(h[l+908+(d<<2)>>2]),f=y(y(h[s+908+(d<<2)>>2])-f),f=y(f-y(h[l+400+(n[1040+(c<<2)>>2]<<2)>>2])),h[l+400+(n[1e3+(c<<2)>>2]<<2)>>2]=f}function MA(s){return s=s|0,(s|1|0)==1|0}function ww(s){s=s|0;var l=Ze;switch(n[s+56>>2]|0){case 0:case 3:{l=y(h[s+40>>2]),l>y(0)&((_t(l)|0)^1)?s=o[(n[s+976>>2]|0)+2>>0]|0?1056:992:s=1056;break}default:s=s+52|0}return s|0}function Iw(s,l){return s=s|0,l=l|0,(o[s+l>>0]|0)!=0|0}function sr(s,l){return s=s|0,l=l|0,s=s+132|0,pe(l)|0&&(n[(Fn(s,5,948)|0)+4>>2]|0)!=0?s=1:s=(n[(Fn(s,n[1e3+(l<<2)>>2]|0,948)|0)+4>>2]|0)!=0,s|0}function vu(s,l,c){s=s|0,l=l|0,c=y(c);var f=0,d=0;return s=s+132|0,pe(l)|0&&(f=Fn(s,5,948)|0,(n[f+4>>2]|0)!=0)?d=4:(f=Fn(s,n[1e3+(l<<2)>>2]|0,948)|0,n[f+4>>2]|0?d=4:c=y(0)),(d|0)==4&&(c=y(Gr(f,c))),y(c)}function Lm(s,l,c){return s=s|0,l=l|0,c=y(c),gi(s,l)|0?c=y(Or(s,l,c)):c=y(-y(vu(s,l,c))),y(c)}function Du(s){return s=y(s),h[v>>2]=s,n[v>>2]|0|0}function Cp(s,l,c,f){s=s|0,l=l|0,c=c|0,f=f|0;var d=0;n[s+12>>2]=0,n[s+16>>2]=f;do if(l)if(l>>>0>1073741823)Rt();else{d=Kt(l<<2)|0;break}else d=0;while(0);n[s>>2]=d,f=d+(c<<2)|0,n[s+8>>2]=f,n[s+4>>2]=f,n[s+12>>2]=d+(l<<2)}function wg(s,l){s=s|0,l=l|0;var c=0,f=0,d=0,m=0,B=0;f=n[s>>2]|0,B=s+4|0,m=l+4|0,d=(n[B>>2]|0)-f|0,c=(n[m>>2]|0)+(0-(d>>2)<<2)|0,n[m>>2]=c,(d|0)>0?(Dr(c|0,f|0,d|0)|0,f=m,c=n[m>>2]|0):f=m,m=n[s>>2]|0,n[s>>2]=c,n[f>>2]=m,m=l+8|0,d=n[B>>2]|0,n[B>>2]=n[m>>2],n[m>>2]=d,m=s+8|0,B=l+12|0,s=n[m>>2]|0,n[m>>2]=n[B>>2],n[B>>2]=s,n[l>>2]=n[f>>2]}function UA(s){s=s|0;var l=0,c=0,f=0;l=n[s+4>>2]|0,c=s+8|0,f=n[c>>2]|0,(f|0)!=(l|0)&&(n[c>>2]=f+(~((f+-4-l|0)>>>2)<<2)),s=n[s>>2]|0,s|0&>(s)}function _A(s,l,c,f){s=s|0,l=l|0,c=c|0,f=f|0;var d=0,m=0,B=0,k=0;if(B=s+4|0,k=n[B>>2]|0,d=k-f|0,m=d>>2,s=l+(m<<2)|0,s>>>0>>0){f=k;do n[f>>2]=n[s>>2],s=s+4|0,f=(n[B>>2]|0)+4|0,n[B>>2]=f;while(s>>>0>>0)}m|0&&Lw(k+(0-m<<2)|0,l|0,d|0)|0}function Ig(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0,B=0,k=0,Q=0;return k=l+4|0,Q=n[k>>2]|0,d=n[s>>2]|0,B=c,m=B-d|0,f=Q+(0-(m>>2)<<2)|0,n[k>>2]=f,(m|0)>0&&Dr(f|0,d|0,m|0)|0,d=s+4|0,m=l+8|0,f=(n[d>>2]|0)-B|0,(f|0)>0&&(Dr(n[m>>2]|0,c|0,f|0)|0,n[m>>2]=(n[m>>2]|0)+(f>>>2<<2)),B=n[s>>2]|0,n[s>>2]=n[k>>2],n[k>>2]=B,B=n[d>>2]|0,n[d>>2]=n[m>>2],n[m>>2]=B,B=s+8|0,c=l+12|0,s=n[B>>2]|0,n[B>>2]=n[c>>2],n[c>>2]=s,n[l>>2]=n[k>>2],Q|0}function Bw(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0,B=0;if(B=n[l>>2]|0,m=n[c>>2]|0,(B|0)!=(m|0)){d=s+8|0,c=((m+-4-B|0)>>>2)+1|0,s=B,f=n[d>>2]|0;do n[f>>2]=n[s>>2],f=(n[d>>2]|0)+4|0,n[d>>2]=f,s=s+4|0;while((s|0)!=(m|0));n[l>>2]=B+(c<<2)}}function Om(){dc()}function ga(){var s=0;return s=Kt(4)|0,HA(s),s|0}function HA(s){s=s|0,n[s>>2]=ys()|0}function Sc(s){s=s|0,s|0&&(Bg(s),gt(s))}function Bg(s){s=s|0,tt(n[s>>2]|0)}function Mm(s,l,c){s=s|0,l=l|0,c=c|0,Ga(n[s>>2]|0,l,c)}function fo(s,l){s=s|0,l=y(l),pa(n[s>>2]|0,l)}function Wv(s,l){return s=s|0,l=l|0,Iw(n[s>>2]|0,l)|0}function vw(){var s=0;return s=Kt(8)|0,Kv(s,0),s|0}function Kv(s,l){s=s|0,l=l|0,l?l=Ci(n[l>>2]|0)|0:l=co()|0,n[s>>2]=l,n[s+4>>2]=0,bi(l,s)}function pF(s){s=s|0;var l=0;return l=Kt(8)|0,Kv(l,s),l|0}function Vv(s){s=s|0,s|0&&(Pu(s),gt(s))}function Pu(s){s=s|0;var l=0;la(n[s>>2]|0),l=s+4|0,s=n[l>>2]|0,n[l>>2]=0,s|0&&(jA(s),gt(s))}function jA(s){s=s|0,qA(s)}function qA(s){s=s|0,s=n[s>>2]|0,s|0&&PA(s|0)}function Dw(s){return s=s|0,jo(s)|0}function Um(s){s=s|0;var l=0,c=0;c=s+4|0,l=n[c>>2]|0,n[c>>2]=0,l|0&&(jA(l),gt(l)),_s(n[s>>2]|0)}function hF(s,l){s=s|0,l=l|0,Zr(n[s>>2]|0,n[l>>2]|0)}function gF(s,l){s=s|0,l=l|0,ca(n[s>>2]|0,l)}function zv(s,l,c){s=s|0,l=l|0,c=+c,yu(n[s>>2]|0,l,y(c))}function Jv(s,l,c){s=s|0,l=l|0,c=+c,Es(n[s>>2]|0,l,y(c))}function Pw(s,l){s=s|0,l=l|0,gu(n[s>>2]|0,l)}function Su(s,l){s=s|0,l=l|0,du(n[s>>2]|0,l)}function dF(s,l){s=s|0,l=l|0,QA(n[s>>2]|0,l)}function mF(s,l){s=s|0,l=l|0,xA(n[s>>2]|0,l)}function wp(s,l){s=s|0,l=l|0,yc(n[s>>2]|0,l)}function yF(s,l){s=s|0,l=l|0,cp(n[s>>2]|0,l)}function Xv(s,l,c){s=s|0,l=l|0,c=+c,Cc(n[s>>2]|0,l,y(c))}function GA(s,l,c){s=s|0,l=l|0,c=+c,G(n[s>>2]|0,l,y(c))}function EF(s,l){s=s|0,l=l|0,wl(n[s>>2]|0,l)}function CF(s,l){s=s|0,l=l|0,sg(n[s>>2]|0,l)}function Zv(s,l){s=s|0,l=l|0,up(n[s>>2]|0,l)}function Sw(s,l){s=s|0,l=+l,FA(n[s>>2]|0,y(l))}function bw(s,l){s=s|0,l=+l,Ha(n[s>>2]|0,y(l))}function wF(s,l){s=s|0,l=+l,Gi(n[s>>2]|0,y(l))}function IF(s,l){s=s|0,l=+l,Hs(n[s>>2]|0,y(l))}function Dl(s,l){s=s|0,l=+l,mu(n[s>>2]|0,y(l))}function xw(s,l){s=s|0,l=+l,dw(n[s>>2]|0,y(l))}function BF(s,l){s=s|0,l=+l,RA(n[s>>2]|0,y(l))}function YA(s){s=s|0,Ap(n[s>>2]|0)}function _m(s,l){s=s|0,l=+l,Cs(n[s>>2]|0,y(l))}function bu(s,l){s=s|0,l=+l,lg(n[s>>2]|0,y(l))}function kw(s){s=s|0,cg(n[s>>2]|0)}function Qw(s,l){s=s|0,l=+l,fp(n[s>>2]|0,y(l))}function vF(s,l){s=s|0,l=+l,Ic(n[s>>2]|0,y(l))}function $v(s,l){s=s|0,l=+l,Pm(n[s>>2]|0,y(l))}function WA(s,l){s=s|0,l=+l,Ag(n[s>>2]|0,y(l))}function eD(s,l){s=s|0,l=+l,Cu(n[s>>2]|0,y(l))}function Hm(s,l){s=s|0,l=+l,Sm(n[s>>2]|0,y(l))}function tD(s,l){s=s|0,l=+l,wu(n[s>>2]|0,y(l))}function rD(s,l){s=s|0,l=+l,mw(n[s>>2]|0,y(l))}function jm(s,l){s=s|0,l=+l,Aa(n[s>>2]|0,y(l))}function nD(s,l,c){s=s|0,l=l|0,c=+c,Eu(n[s>>2]|0,l,y(c))}function DF(s,l,c){s=s|0,l=l|0,c=+c,xi(n[s>>2]|0,l,y(c))}function P(s,l,c){s=s|0,l=l|0,c=+c,wc(n[s>>2]|0,l,y(c))}function D(s){return s=s|0,ig(n[s>>2]|0)|0}function T(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0;f=E,E=E+16|0,d=f,Ec(d,n[l>>2]|0,c),j(s,d),E=f}function j(s,l){s=s|0,l=l|0,Y(s,n[l+4>>2]|0,+y(h[l>>2]))}function Y(s,l,c){s=s|0,l=l|0,c=+c,n[s>>2]=l,C[s+8>>3]=c}function fe(s){return s=s|0,ng(n[s>>2]|0)|0}function ve(s){return s=s|0,uo(n[s>>2]|0)|0}function vt(s){return s=s|0,mc(n[s>>2]|0)|0}function wt(s){return s=s|0,kA(n[s>>2]|0)|0}function xt(s){return s=s|0,Dm(n[s>>2]|0)|0}function _r(s){return s=s|0,rg(n[s>>2]|0)|0}function is(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0;f=E,E=E+16|0,d=f,Dt(d,n[l>>2]|0,c),j(s,d),E=f}function di(s){return s=s|0,$n(n[s>>2]|0)|0}function po(s){return s=s|0,og(n[s>>2]|0)|0}function KA(s,l){s=s|0,l=l|0;var c=0,f=0;c=E,E=E+16|0,f=c,ua(f,n[l>>2]|0),j(s,f),E=c}function Yo(s){return s=s|0,+ +y(qi(n[s>>2]|0))}function rt(s){return s=s|0,+ +y(es(n[s>>2]|0))}function Ve(s,l){s=s|0,l=l|0;var c=0,f=0;c=E,E=E+16|0,f=c,Br(f,n[l>>2]|0),j(s,f),E=c}function At(s,l){s=s|0,l=l|0;var c=0,f=0;c=E,E=E+16|0,f=c,ug(f,n[l>>2]|0),j(s,f),E=c}function Wt(s,l){s=s|0,l=l|0;var c=0,f=0;c=E,E=E+16|0,f=c,Ct(f,n[l>>2]|0),j(s,f),E=c}function vr(s,l){s=s|0,l=l|0;var c=0,f=0;c=E,E=E+16|0,f=c,fg(f,n[l>>2]|0),j(s,f),E=c}function Sn(s,l){s=s|0,l=l|0;var c=0,f=0;c=E,E=E+16|0,f=c,pg(f,n[l>>2]|0),j(s,f),E=c}function Fr(s,l){s=s|0,l=l|0;var c=0,f=0;c=E,E=E+16|0,f=c,bm(f,n[l>>2]|0),j(s,f),E=c}function bn(s){return s=s|0,+ +y(Bc(n[s>>2]|0))}function ai(s,l){return s=s|0,l=l|0,+ +y(ag(n[s>>2]|0,l))}function en(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0;f=E,E=E+16|0,d=f,ct(d,n[l>>2]|0,c),j(s,d),E=f}function ho(s,l,c){s=s|0,l=l|0,c=c|0,nr(n[s>>2]|0,n[l>>2]|0,c)}function PF(s,l){s=s|0,l=l|0,ms(n[s>>2]|0,n[l>>2]|0)}function sve(s){return s=s|0,wi(n[s>>2]|0)|0}function ove(s){return s=s|0,s=pt(n[s>>2]|0)|0,s?s=Dw(s)|0:s=0,s|0}function ave(s,l){return s=s|0,l=l|0,s=gs(n[s>>2]|0,l)|0,s?s=Dw(s)|0:s=0,s|0}function lve(s,l){s=s|0,l=l|0;var c=0,f=0;f=Kt(4)|0,e5(f,l),c=s+4|0,l=n[c>>2]|0,n[c>>2]=f,l|0&&(jA(l),gt(l)),It(n[s>>2]|0,1)}function e5(s,l){s=s|0,l=l|0,Cve(s,l)}function cve(s,l,c,f,d,m){s=s|0,l=l|0,c=y(c),f=f|0,d=y(d),m=m|0;var B=0,k=0;B=E,E=E+16|0,k=B,uve(k,jo(l)|0,+c,f,+d,m),h[s>>2]=y(+C[k>>3]),h[s+4>>2]=y(+C[k+8>>3]),E=B}function uve(s,l,c,f,d,m){s=s|0,l=l|0,c=+c,f=f|0,d=+d,m=m|0;var B=0,k=0,Q=0,M=0,O=0;B=E,E=E+32|0,O=B+8|0,M=B+20|0,Q=B,k=B+16|0,C[O>>3]=c,n[M>>2]=f,C[Q>>3]=d,n[k>>2]=m,Ave(s,n[l+4>>2]|0,O,M,Q,k),E=B}function Ave(s,l,c,f,d,m){s=s|0,l=l|0,c=c|0,f=f|0,d=d|0,m=m|0;var B=0,k=0;B=E,E=E+16|0,k=B,Ka(k),l=da(l)|0,fve(s,l,+C[c>>3],n[f>>2]|0,+C[d>>3],n[m>>2]|0),Va(k),E=B}function da(s){return s=s|0,n[s>>2]|0}function fve(s,l,c,f,d,m){s=s|0,l=l|0,c=+c,f=f|0,d=+d,m=m|0;var B=0;B=Pl(pve()|0)|0,c=+VA(c),f=SF(f)|0,d=+VA(d),hve(s,hi(0,B|0,l|0,+c,f|0,+d,SF(m)|0)|0)}function pve(){var s=0;return o[7608]|0||(yve(9120),s=7608,n[s>>2]=1,n[s+4>>2]=0),9120}function Pl(s){return s=s|0,n[s+8>>2]|0}function VA(s){return s=+s,+ +bF(s)}function SF(s){return s=s|0,r5(s)|0}function hve(s,l){s=s|0,l=l|0;var c=0,f=0,d=0;d=E,E=E+32|0,c=d,f=l,f&1?(gve(c,0),ii(f|0,c|0)|0,dve(s,c),mve(c)):(n[s>>2]=n[l>>2],n[s+4>>2]=n[l+4>>2],n[s+8>>2]=n[l+8>>2],n[s+12>>2]=n[l+12>>2]),E=d}function gve(s,l){s=s|0,l=l|0,t5(s,l),n[s+8>>2]=0,o[s+24>>0]=0}function dve(s,l){s=s|0,l=l|0,l=l+8|0,n[s>>2]=n[l>>2],n[s+4>>2]=n[l+4>>2],n[s+8>>2]=n[l+8>>2],n[s+12>>2]=n[l+12>>2]}function mve(s){s=s|0,o[s+24>>0]=0}function t5(s,l){s=s|0,l=l|0,n[s>>2]=l}function r5(s){return s=s|0,s|0}function bF(s){return s=+s,+s}function yve(s){s=s|0,Sl(s,Eve()|0,4)}function Eve(){return 1064}function Sl(s,l,c){s=s|0,l=l|0,c=c|0,n[s>>2]=l,n[s+4>>2]=c,n[s+8>>2]=lp(l|0,c+1|0)|0}function Cve(s,l){s=s|0,l=l|0,l=n[l>>2]|0,n[s>>2]=l,yl(l|0)}function wve(s){s=s|0;var l=0,c=0;c=s+4|0,l=n[c>>2]|0,n[c>>2]=0,l|0&&(jA(l),gt(l)),It(n[s>>2]|0,0)}function Ive(s){s=s|0,Tt(n[s>>2]|0)}function Bve(s){return s=s|0,er(n[s>>2]|0)|0}function vve(s,l,c,f){s=s|0,l=+l,c=+c,f=f|0,vc(n[s>>2]|0,y(l),y(c),f)}function Dve(s){return s=s|0,+ +y(Il(n[s>>2]|0))}function Pve(s){return s=s|0,+ +y(hg(n[s>>2]|0))}function Sve(s){return s=s|0,+ +y(Iu(n[s>>2]|0))}function bve(s){return s=s|0,+ +y(TA(n[s>>2]|0))}function xve(s){return s=s|0,+ +y(pp(n[s>>2]|0))}function kve(s){return s=s|0,+ +y(ja(n[s>>2]|0))}function Qve(s,l){s=s|0,l=l|0,C[s>>3]=+y(Il(n[l>>2]|0)),C[s+8>>3]=+y(hg(n[l>>2]|0)),C[s+16>>3]=+y(Iu(n[l>>2]|0)),C[s+24>>3]=+y(TA(n[l>>2]|0)),C[s+32>>3]=+y(pp(n[l>>2]|0)),C[s+40>>3]=+y(ja(n[l>>2]|0))}function Fve(s,l){return s=s|0,l=l|0,+ +y(gg(n[s>>2]|0,l))}function Rve(s,l){return s=s|0,l=l|0,+ +y(hp(n[s>>2]|0,l))}function Tve(s,l){return s=s|0,l=l|0,+ +y(qo(n[s>>2]|0,l))}function Nve(){return Pn()|0}function Lve(){Ove(),Mve(),Uve(),_ve(),Hve(),jve()}function Ove(){HNe(11713,4938,1)}function Mve(){oNe(10448)}function Uve(){HTe(10408)}function _ve(){uTe(10324)}function Hve(){yFe(10096)}function jve(){qve(9132)}function qve(s){s=s|0;var l=0,c=0,f=0,d=0,m=0,B=0,k=0,Q=0,M=0,O=0,q=0,se=0,Ge=0,Me=0,Qe=0,et=0,Xe=0,at=0,Ue=0,qe=0,Lt=0,Mr=0,or=0,Xt=0,Pr=0,Nr=0,ir=0,xn=0,go=0,mo=0,yo=0,ya=0,kp=0,Qp=0,bl=0,Fp=0,Fu=0,Ru=0,Rp=0,Tp=0,Np=0,Xr=0,xl=0,Lp=0,xc=0,Op=0,Mp=0,Tu=0,Nu=0,kc=0,qs=0,Ja=0,Wo=0,kl=0,rf=0,nf=0,Lu=0,sf=0,of=0,Gs=0,vs=0,Ql=0,Rn=0,af=0,Eo=0,Qc=0,Co=0,Fc=0,lf=0,cf=0,Rc=0,Ys=0,Fl=0,uf=0,Af=0,ff=0,xr=0,zn=0,Ds=0,wo=0,Ws=0,Rr=0,ur=0,Rl=0;l=E,E=E+672|0,c=l+656|0,Rl=l+648|0,ur=l+640|0,Rr=l+632|0,Ws=l+624|0,wo=l+616|0,Ds=l+608|0,zn=l+600|0,xr=l+592|0,ff=l+584|0,Af=l+576|0,uf=l+568|0,Fl=l+560|0,Ys=l+552|0,Rc=l+544|0,cf=l+536|0,lf=l+528|0,Fc=l+520|0,Co=l+512|0,Qc=l+504|0,Eo=l+496|0,af=l+488|0,Rn=l+480|0,Ql=l+472|0,vs=l+464|0,Gs=l+456|0,of=l+448|0,sf=l+440|0,Lu=l+432|0,nf=l+424|0,rf=l+416|0,kl=l+408|0,Wo=l+400|0,Ja=l+392|0,qs=l+384|0,kc=l+376|0,Nu=l+368|0,Tu=l+360|0,Mp=l+352|0,Op=l+344|0,xc=l+336|0,Lp=l+328|0,xl=l+320|0,Xr=l+312|0,Np=l+304|0,Tp=l+296|0,Rp=l+288|0,Ru=l+280|0,Fu=l+272|0,Fp=l+264|0,bl=l+256|0,Qp=l+248|0,kp=l+240|0,ya=l+232|0,yo=l+224|0,mo=l+216|0,go=l+208|0,xn=l+200|0,ir=l+192|0,Nr=l+184|0,Pr=l+176|0,Xt=l+168|0,or=l+160|0,Mr=l+152|0,Lt=l+144|0,qe=l+136|0,Ue=l+128|0,at=l+120|0,Xe=l+112|0,et=l+104|0,Qe=l+96|0,Me=l+88|0,Ge=l+80|0,se=l+72|0,q=l+64|0,O=l+56|0,M=l+48|0,Q=l+40|0,k=l+32|0,B=l+24|0,m=l+16|0,d=l+8|0,f=l,Gve(s,3646),Yve(s,3651,2)|0,Wve(s,3665,2)|0,Kve(s,3682,18)|0,n[Rl>>2]=19,n[Rl+4>>2]=0,n[c>>2]=n[Rl>>2],n[c+4>>2]=n[Rl+4>>2],Fw(s,3690,c)|0,n[ur>>2]=1,n[ur+4>>2]=0,n[c>>2]=n[ur>>2],n[c+4>>2]=n[ur+4>>2],Vve(s,3696,c)|0,n[Rr>>2]=2,n[Rr+4>>2]=0,n[c>>2]=n[Rr>>2],n[c+4>>2]=n[Rr+4>>2],xu(s,3706,c)|0,n[Ws>>2]=1,n[Ws+4>>2]=0,n[c>>2]=n[Ws>>2],n[c+4>>2]=n[Ws+4>>2],vg(s,3722,c)|0,n[wo>>2]=2,n[wo+4>>2]=0,n[c>>2]=n[wo>>2],n[c+4>>2]=n[wo+4>>2],vg(s,3734,c)|0,n[Ds>>2]=3,n[Ds+4>>2]=0,n[c>>2]=n[Ds>>2],n[c+4>>2]=n[Ds+4>>2],xu(s,3753,c)|0,n[zn>>2]=4,n[zn+4>>2]=0,n[c>>2]=n[zn>>2],n[c+4>>2]=n[zn+4>>2],xu(s,3769,c)|0,n[xr>>2]=5,n[xr+4>>2]=0,n[c>>2]=n[xr>>2],n[c+4>>2]=n[xr+4>>2],xu(s,3783,c)|0,n[ff>>2]=6,n[ff+4>>2]=0,n[c>>2]=n[ff>>2],n[c+4>>2]=n[ff+4>>2],xu(s,3796,c)|0,n[Af>>2]=7,n[Af+4>>2]=0,n[c>>2]=n[Af>>2],n[c+4>>2]=n[Af+4>>2],xu(s,3813,c)|0,n[uf>>2]=8,n[uf+4>>2]=0,n[c>>2]=n[uf>>2],n[c+4>>2]=n[uf+4>>2],xu(s,3825,c)|0,n[Fl>>2]=3,n[Fl+4>>2]=0,n[c>>2]=n[Fl>>2],n[c+4>>2]=n[Fl+4>>2],vg(s,3843,c)|0,n[Ys>>2]=4,n[Ys+4>>2]=0,n[c>>2]=n[Ys>>2],n[c+4>>2]=n[Ys+4>>2],vg(s,3853,c)|0,n[Rc>>2]=9,n[Rc+4>>2]=0,n[c>>2]=n[Rc>>2],n[c+4>>2]=n[Rc+4>>2],xu(s,3870,c)|0,n[cf>>2]=10,n[cf+4>>2]=0,n[c>>2]=n[cf>>2],n[c+4>>2]=n[cf+4>>2],xu(s,3884,c)|0,n[lf>>2]=11,n[lf+4>>2]=0,n[c>>2]=n[lf>>2],n[c+4>>2]=n[lf+4>>2],xu(s,3896,c)|0,n[Fc>>2]=1,n[Fc+4>>2]=0,n[c>>2]=n[Fc>>2],n[c+4>>2]=n[Fc+4>>2],Is(s,3907,c)|0,n[Co>>2]=2,n[Co+4>>2]=0,n[c>>2]=n[Co>>2],n[c+4>>2]=n[Co+4>>2],Is(s,3915,c)|0,n[Qc>>2]=3,n[Qc+4>>2]=0,n[c>>2]=n[Qc>>2],n[c+4>>2]=n[Qc+4>>2],Is(s,3928,c)|0,n[Eo>>2]=4,n[Eo+4>>2]=0,n[c>>2]=n[Eo>>2],n[c+4>>2]=n[Eo+4>>2],Is(s,3948,c)|0,n[af>>2]=5,n[af+4>>2]=0,n[c>>2]=n[af>>2],n[c+4>>2]=n[af+4>>2],Is(s,3960,c)|0,n[Rn>>2]=6,n[Rn+4>>2]=0,n[c>>2]=n[Rn>>2],n[c+4>>2]=n[Rn+4>>2],Is(s,3974,c)|0,n[Ql>>2]=7,n[Ql+4>>2]=0,n[c>>2]=n[Ql>>2],n[c+4>>2]=n[Ql+4>>2],Is(s,3983,c)|0,n[vs>>2]=20,n[vs+4>>2]=0,n[c>>2]=n[vs>>2],n[c+4>>2]=n[vs+4>>2],Fw(s,3999,c)|0,n[Gs>>2]=8,n[Gs+4>>2]=0,n[c>>2]=n[Gs>>2],n[c+4>>2]=n[Gs+4>>2],Is(s,4012,c)|0,n[of>>2]=9,n[of+4>>2]=0,n[c>>2]=n[of>>2],n[c+4>>2]=n[of+4>>2],Is(s,4022,c)|0,n[sf>>2]=21,n[sf+4>>2]=0,n[c>>2]=n[sf>>2],n[c+4>>2]=n[sf+4>>2],Fw(s,4039,c)|0,n[Lu>>2]=10,n[Lu+4>>2]=0,n[c>>2]=n[Lu>>2],n[c+4>>2]=n[Lu+4>>2],Is(s,4053,c)|0,n[nf>>2]=11,n[nf+4>>2]=0,n[c>>2]=n[nf>>2],n[c+4>>2]=n[nf+4>>2],Is(s,4065,c)|0,n[rf>>2]=12,n[rf+4>>2]=0,n[c>>2]=n[rf>>2],n[c+4>>2]=n[rf+4>>2],Is(s,4084,c)|0,n[kl>>2]=13,n[kl+4>>2]=0,n[c>>2]=n[kl>>2],n[c+4>>2]=n[kl+4>>2],Is(s,4097,c)|0,n[Wo>>2]=14,n[Wo+4>>2]=0,n[c>>2]=n[Wo>>2],n[c+4>>2]=n[Wo+4>>2],Is(s,4117,c)|0,n[Ja>>2]=15,n[Ja+4>>2]=0,n[c>>2]=n[Ja>>2],n[c+4>>2]=n[Ja+4>>2],Is(s,4129,c)|0,n[qs>>2]=16,n[qs+4>>2]=0,n[c>>2]=n[qs>>2],n[c+4>>2]=n[qs+4>>2],Is(s,4148,c)|0,n[kc>>2]=17,n[kc+4>>2]=0,n[c>>2]=n[kc>>2],n[c+4>>2]=n[kc+4>>2],Is(s,4161,c)|0,n[Nu>>2]=18,n[Nu+4>>2]=0,n[c>>2]=n[Nu>>2],n[c+4>>2]=n[Nu+4>>2],Is(s,4181,c)|0,n[Tu>>2]=5,n[Tu+4>>2]=0,n[c>>2]=n[Tu>>2],n[c+4>>2]=n[Tu+4>>2],vg(s,4196,c)|0,n[Mp>>2]=6,n[Mp+4>>2]=0,n[c>>2]=n[Mp>>2],n[c+4>>2]=n[Mp+4>>2],vg(s,4206,c)|0,n[Op>>2]=7,n[Op+4>>2]=0,n[c>>2]=n[Op>>2],n[c+4>>2]=n[Op+4>>2],vg(s,4217,c)|0,n[xc>>2]=3,n[xc+4>>2]=0,n[c>>2]=n[xc>>2],n[c+4>>2]=n[xc+4>>2],zA(s,4235,c)|0,n[Lp>>2]=1,n[Lp+4>>2]=0,n[c>>2]=n[Lp>>2],n[c+4>>2]=n[Lp+4>>2],xF(s,4251,c)|0,n[xl>>2]=4,n[xl+4>>2]=0,n[c>>2]=n[xl>>2],n[c+4>>2]=n[xl+4>>2],zA(s,4263,c)|0,n[Xr>>2]=5,n[Xr+4>>2]=0,n[c>>2]=n[Xr>>2],n[c+4>>2]=n[Xr+4>>2],zA(s,4279,c)|0,n[Np>>2]=6,n[Np+4>>2]=0,n[c>>2]=n[Np>>2],n[c+4>>2]=n[Np+4>>2],zA(s,4293,c)|0,n[Tp>>2]=7,n[Tp+4>>2]=0,n[c>>2]=n[Tp>>2],n[c+4>>2]=n[Tp+4>>2],zA(s,4306,c)|0,n[Rp>>2]=8,n[Rp+4>>2]=0,n[c>>2]=n[Rp>>2],n[c+4>>2]=n[Rp+4>>2],zA(s,4323,c)|0,n[Ru>>2]=9,n[Ru+4>>2]=0,n[c>>2]=n[Ru>>2],n[c+4>>2]=n[Ru+4>>2],zA(s,4335,c)|0,n[Fu>>2]=2,n[Fu+4>>2]=0,n[c>>2]=n[Fu>>2],n[c+4>>2]=n[Fu+4>>2],xF(s,4353,c)|0,n[Fp>>2]=12,n[Fp+4>>2]=0,n[c>>2]=n[Fp>>2],n[c+4>>2]=n[Fp+4>>2],Dg(s,4363,c)|0,n[bl>>2]=1,n[bl+4>>2]=0,n[c>>2]=n[bl>>2],n[c+4>>2]=n[bl+4>>2],JA(s,4376,c)|0,n[Qp>>2]=2,n[Qp+4>>2]=0,n[c>>2]=n[Qp>>2],n[c+4>>2]=n[Qp+4>>2],JA(s,4388,c)|0,n[kp>>2]=13,n[kp+4>>2]=0,n[c>>2]=n[kp>>2],n[c+4>>2]=n[kp+4>>2],Dg(s,4402,c)|0,n[ya>>2]=14,n[ya+4>>2]=0,n[c>>2]=n[ya>>2],n[c+4>>2]=n[ya+4>>2],Dg(s,4411,c)|0,n[yo>>2]=15,n[yo+4>>2]=0,n[c>>2]=n[yo>>2],n[c+4>>2]=n[yo+4>>2],Dg(s,4421,c)|0,n[mo>>2]=16,n[mo+4>>2]=0,n[c>>2]=n[mo>>2],n[c+4>>2]=n[mo+4>>2],Dg(s,4433,c)|0,n[go>>2]=17,n[go+4>>2]=0,n[c>>2]=n[go>>2],n[c+4>>2]=n[go+4>>2],Dg(s,4446,c)|0,n[xn>>2]=18,n[xn+4>>2]=0,n[c>>2]=n[xn>>2],n[c+4>>2]=n[xn+4>>2],Dg(s,4458,c)|0,n[ir>>2]=3,n[ir+4>>2]=0,n[c>>2]=n[ir>>2],n[c+4>>2]=n[ir+4>>2],JA(s,4471,c)|0,n[Nr>>2]=1,n[Nr+4>>2]=0,n[c>>2]=n[Nr>>2],n[c+4>>2]=n[Nr+4>>2],iD(s,4486,c)|0,n[Pr>>2]=10,n[Pr+4>>2]=0,n[c>>2]=n[Pr>>2],n[c+4>>2]=n[Pr+4>>2],zA(s,4496,c)|0,n[Xt>>2]=11,n[Xt+4>>2]=0,n[c>>2]=n[Xt>>2],n[c+4>>2]=n[Xt+4>>2],zA(s,4508,c)|0,n[or>>2]=3,n[or+4>>2]=0,n[c>>2]=n[or>>2],n[c+4>>2]=n[or+4>>2],xF(s,4519,c)|0,n[Mr>>2]=4,n[Mr+4>>2]=0,n[c>>2]=n[Mr>>2],n[c+4>>2]=n[Mr+4>>2],zve(s,4530,c)|0,n[Lt>>2]=19,n[Lt+4>>2]=0,n[c>>2]=n[Lt>>2],n[c+4>>2]=n[Lt+4>>2],Jve(s,4542,c)|0,n[qe>>2]=12,n[qe+4>>2]=0,n[c>>2]=n[qe>>2],n[c+4>>2]=n[qe+4>>2],Xve(s,4554,c)|0,n[Ue>>2]=13,n[Ue+4>>2]=0,n[c>>2]=n[Ue>>2],n[c+4>>2]=n[Ue+4>>2],Zve(s,4568,c)|0,n[at>>2]=2,n[at+4>>2]=0,n[c>>2]=n[at>>2],n[c+4>>2]=n[at+4>>2],$ve(s,4578,c)|0,n[Xe>>2]=20,n[Xe+4>>2]=0,n[c>>2]=n[Xe>>2],n[c+4>>2]=n[Xe+4>>2],eDe(s,4587,c)|0,n[et>>2]=22,n[et+4>>2]=0,n[c>>2]=n[et>>2],n[c+4>>2]=n[et+4>>2],Fw(s,4602,c)|0,n[Qe>>2]=23,n[Qe+4>>2]=0,n[c>>2]=n[Qe>>2],n[c+4>>2]=n[Qe+4>>2],Fw(s,4619,c)|0,n[Me>>2]=14,n[Me+4>>2]=0,n[c>>2]=n[Me>>2],n[c+4>>2]=n[Me+4>>2],tDe(s,4629,c)|0,n[Ge>>2]=1,n[Ge+4>>2]=0,n[c>>2]=n[Ge>>2],n[c+4>>2]=n[Ge+4>>2],rDe(s,4637,c)|0,n[se>>2]=4,n[se+4>>2]=0,n[c>>2]=n[se>>2],n[c+4>>2]=n[se+4>>2],JA(s,4653,c)|0,n[q>>2]=5,n[q+4>>2]=0,n[c>>2]=n[q>>2],n[c+4>>2]=n[q+4>>2],JA(s,4669,c)|0,n[O>>2]=6,n[O+4>>2]=0,n[c>>2]=n[O>>2],n[c+4>>2]=n[O+4>>2],JA(s,4686,c)|0,n[M>>2]=7,n[M+4>>2]=0,n[c>>2]=n[M>>2],n[c+4>>2]=n[M+4>>2],JA(s,4701,c)|0,n[Q>>2]=8,n[Q+4>>2]=0,n[c>>2]=n[Q>>2],n[c+4>>2]=n[Q+4>>2],JA(s,4719,c)|0,n[k>>2]=9,n[k+4>>2]=0,n[c>>2]=n[k>>2],n[c+4>>2]=n[k+4>>2],JA(s,4736,c)|0,n[B>>2]=21,n[B+4>>2]=0,n[c>>2]=n[B>>2],n[c+4>>2]=n[B+4>>2],nDe(s,4754,c)|0,n[m>>2]=2,n[m+4>>2]=0,n[c>>2]=n[m>>2],n[c+4>>2]=n[m+4>>2],iD(s,4772,c)|0,n[d>>2]=3,n[d+4>>2]=0,n[c>>2]=n[d>>2],n[c+4>>2]=n[d+4>>2],iD(s,4790,c)|0,n[f>>2]=4,n[f+4>>2]=0,n[c>>2]=n[f>>2],n[c+4>>2]=n[f+4>>2],iD(s,4808,c)|0,E=l}function Gve(s,l){s=s|0,l=l|0;var c=0;c=cFe()|0,n[s>>2]=c,uFe(c,l),Sp(n[s>>2]|0)}function Yve(s,l,c){return s=s|0,l=l|0,c=c|0,zQe(s,pn(l)|0,c,0),s|0}function Wve(s,l,c){return s=s|0,l=l|0,c=c|0,RQe(s,pn(l)|0,c,0),s|0}function Kve(s,l,c){return s=s|0,l=l|0,c=c|0,EQe(s,pn(l)|0,c,0),s|0}function Fw(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0,B=0;return f=E,E=E+16|0,d=f+8|0,m=f,B=n[c+4>>2]|0,n[m>>2]=n[c>>2],n[m+4>>2]=B,n[d>>2]=n[m>>2],n[d+4>>2]=n[m+4>>2],nQe(s,l,d),E=f,s|0}function Vve(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0,B=0;return f=E,E=E+16|0,d=f+8|0,m=f,B=n[c+4>>2]|0,n[m>>2]=n[c>>2],n[m+4>>2]=B,n[d>>2]=n[m>>2],n[d+4>>2]=n[m+4>>2],Mke(s,l,d),E=f,s|0}function xu(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0,B=0;return f=E,E=E+16|0,d=f+8|0,m=f,B=n[c+4>>2]|0,n[m>>2]=n[c>>2],n[m+4>>2]=B,n[d>>2]=n[m>>2],n[d+4>>2]=n[m+4>>2],Ike(s,l,d),E=f,s|0}function vg(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0,B=0;return f=E,E=E+16|0,d=f+8|0,m=f,B=n[c+4>>2]|0,n[m>>2]=n[c>>2],n[m+4>>2]=B,n[d>>2]=n[m>>2],n[d+4>>2]=n[m+4>>2],oke(s,l,d),E=f,s|0}function Is(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0,B=0;return f=E,E=E+16|0,d=f+8|0,m=f,B=n[c+4>>2]|0,n[m>>2]=n[c>>2],n[m+4>>2]=B,n[d>>2]=n[m>>2],n[d+4>>2]=n[m+4>>2],Gxe(s,l,d),E=f,s|0}function zA(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0,B=0;return f=E,E=E+16|0,d=f+8|0,m=f,B=n[c+4>>2]|0,n[m>>2]=n[c>>2],n[m+4>>2]=B,n[d>>2]=n[m>>2],n[d+4>>2]=n[m+4>>2],bxe(s,l,d),E=f,s|0}function xF(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0,B=0;return f=E,E=E+16|0,d=f+8|0,m=f,B=n[c+4>>2]|0,n[m>>2]=n[c>>2],n[m+4>>2]=B,n[d>>2]=n[m>>2],n[d+4>>2]=n[m+4>>2],fxe(s,l,d),E=f,s|0}function Dg(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0,B=0;return f=E,E=E+16|0,d=f+8|0,m=f,B=n[c+4>>2]|0,n[m>>2]=n[c>>2],n[m+4>>2]=B,n[d>>2]=n[m>>2],n[d+4>>2]=n[m+4>>2],Mbe(s,l,d),E=f,s|0}function JA(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0,B=0;return f=E,E=E+16|0,d=f+8|0,m=f,B=n[c+4>>2]|0,n[m>>2]=n[c>>2],n[m+4>>2]=B,n[d>>2]=n[m>>2],n[d+4>>2]=n[m+4>>2],Ibe(s,l,d),E=f,s|0}function iD(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0,B=0;return f=E,E=E+16|0,d=f+8|0,m=f,B=n[c+4>>2]|0,n[m>>2]=n[c>>2],n[m+4>>2]=B,n[d>>2]=n[m>>2],n[d+4>>2]=n[m+4>>2],obe(s,l,d),E=f,s|0}function zve(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0,B=0;return f=E,E=E+16|0,d=f+8|0,m=f,B=n[c+4>>2]|0,n[m>>2]=n[c>>2],n[m+4>>2]=B,n[d>>2]=n[m>>2],n[d+4>>2]=n[m+4>>2],GSe(s,l,d),E=f,s|0}function Jve(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0,B=0;return f=E,E=E+16|0,d=f+8|0,m=f,B=n[c+4>>2]|0,n[m>>2]=n[c>>2],n[m+4>>2]=B,n[d>>2]=n[m>>2],n[d+4>>2]=n[m+4>>2],bSe(s,l,d),E=f,s|0}function Xve(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0,B=0;return f=E,E=E+16|0,d=f+8|0,m=f,B=n[c+4>>2]|0,n[m>>2]=n[c>>2],n[m+4>>2]=B,n[d>>2]=n[m>>2],n[d+4>>2]=n[m+4>>2],pSe(s,l,d),E=f,s|0}function Zve(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0,B=0;return f=E,E=E+16|0,d=f+8|0,m=f,B=n[c+4>>2]|0,n[m>>2]=n[c>>2],n[m+4>>2]=B,n[d>>2]=n[m>>2],n[d+4>>2]=n[m+4>>2],ZPe(s,l,d),E=f,s|0}function $ve(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0,B=0;return f=E,E=E+16|0,d=f+8|0,m=f,B=n[c+4>>2]|0,n[m>>2]=n[c>>2],n[m+4>>2]=B,n[d>>2]=n[m>>2],n[d+4>>2]=n[m+4>>2],NPe(s,l,d),E=f,s|0}function eDe(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0,B=0;return f=E,E=E+16|0,d=f+8|0,m=f,B=n[c+4>>2]|0,n[m>>2]=n[c>>2],n[m+4>>2]=B,n[d>>2]=n[m>>2],n[d+4>>2]=n[m+4>>2],yPe(s,l,d),E=f,s|0}function tDe(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0,B=0;return f=E,E=E+16|0,d=f+8|0,m=f,B=n[c+4>>2]|0,n[m>>2]=n[c>>2],n[m+4>>2]=B,n[d>>2]=n[m>>2],n[d+4>>2]=n[m+4>>2],rPe(s,l,d),E=f,s|0}function rDe(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0,B=0;return f=E,E=E+16|0,d=f+8|0,m=f,B=n[c+4>>2]|0,n[m>>2]=n[c>>2],n[m+4>>2]=B,n[d>>2]=n[m>>2],n[d+4>>2]=n[m+4>>2],MDe(s,l,d),E=f,s|0}function nDe(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0,B=0;return f=E,E=E+16|0,d=f+8|0,m=f,B=n[c+4>>2]|0,n[m>>2]=n[c>>2],n[m+4>>2]=B,n[d>>2]=n[m>>2],n[d+4>>2]=n[m+4>>2],iDe(s,l,d),E=f,s|0}function iDe(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0,B=0,k=0;f=E,E=E+16|0,d=f+8|0,m=f,k=n[c>>2]|0,B=n[c+4>>2]|0,c=pn(l)|0,n[m>>2]=k,n[m+4>>2]=B,n[d>>2]=n[m>>2],n[d+4>>2]=n[m+4>>2],sDe(s,c,d,1),E=f}function pn(s){return s=s|0,s|0}function sDe(s,l,c,f){s=s|0,l=l|0,c=c|0,f=f|0;var d=0,m=0,B=0,k=0,Q=0,M=0,O=0;d=E,E=E+32|0,m=d+16|0,O=d+8|0,k=d,M=n[c>>2]|0,Q=n[c+4>>2]|0,B=n[s>>2]|0,s=kF()|0,n[O>>2]=M,n[O+4>>2]=Q,n[m>>2]=n[O>>2],n[m+4>>2]=n[O+4>>2],c=oDe(m)|0,n[k>>2]=M,n[k+4>>2]=Q,n[m>>2]=n[k>>2],n[m+4>>2]=n[k+4>>2],hn(B,l,s,c,aDe(m,f)|0,f),E=d}function kF(){var s=0,l=0;if(o[7616]|0||(s5(9136),tr(24,9136,U|0)|0,l=7616,n[l>>2]=1,n[l+4>>2]=0),!(Tr(9136)|0)){s=9136,l=s+36|0;do n[s>>2]=0,s=s+4|0;while((s|0)<(l|0));s5(9136)}return 9136}function oDe(s){return s=s|0,0}function aDe(s,l){s=s|0,l=l|0;var c=0,f=0,d=0,m=0,B=0,k=0,Q=0,M=0,O=0,q=0;return O=E,E=E+32|0,d=O+24|0,B=O+16|0,k=O,Q=O+8|0,m=n[s>>2]|0,f=n[s+4>>2]|0,n[k>>2]=m,n[k+4>>2]=f,q=kF()|0,M=q+24|0,s=gr(l,4)|0,n[Q>>2]=s,l=q+28|0,c=n[l>>2]|0,c>>>0<(n[q+32>>2]|0)>>>0?(n[B>>2]=m,n[B+4>>2]=f,n[d>>2]=n[B>>2],n[d+4>>2]=n[B+4>>2],i5(c,d,s),s=(n[l>>2]|0)+12|0,n[l>>2]=s):(uDe(M,k,Q),s=n[l>>2]|0),E=O,((s-(n[M>>2]|0)|0)/12|0)+-1|0}function hn(s,l,c,f,d,m){s=s|0,l=l|0,c=c|0,f=f|0,d=d|0,m=m|0;var B=0,k=0,Q=0,M=0,O=0,q=0,se=0,Ge=0;B=E,E=E+32|0,se=B+24|0,q=B+20|0,Q=B+16|0,O=B+12|0,M=B+8|0,k=B+4|0,Ge=B,n[q>>2]=l,n[Q>>2]=c,n[O>>2]=f,n[M>>2]=d,n[k>>2]=m,m=s+28|0,n[Ge>>2]=n[m>>2],n[se>>2]=n[Ge>>2],lDe(s+24|0,se,q,O,M,Q,k)|0,n[m>>2]=n[n[m>>2]>>2],E=B}function lDe(s,l,c,f,d,m,B){return s=s|0,l=l|0,c=c|0,f=f|0,d=d|0,m=m|0,B=B|0,s=cDe(l)|0,l=Kt(24)|0,n5(l+4|0,n[c>>2]|0,n[f>>2]|0,n[d>>2]|0,n[m>>2]|0,n[B>>2]|0),n[l>>2]=n[s>>2],n[s>>2]=l,l|0}function cDe(s){return s=s|0,n[s>>2]|0}function n5(s,l,c,f,d,m){s=s|0,l=l|0,c=c|0,f=f|0,d=d|0,m=m|0,n[s>>2]=l,n[s+4>>2]=c,n[s+8>>2]=f,n[s+12>>2]=d,n[s+16>>2]=m}function gr(s,l){return s=s|0,l=l|0,l|s|0}function i5(s,l,c){s=s|0,l=l|0,c=c|0;var f=0;f=n[l+4>>2]|0,n[s>>2]=n[l>>2],n[s+4>>2]=f,n[s+8>>2]=c}function uDe(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0,B=0,k=0,Q=0,M=0,O=0,q=0,se=0;if(M=E,E=E+48|0,f=M+32|0,B=M+24|0,k=M,Q=s+4|0,d=(((n[Q>>2]|0)-(n[s>>2]|0)|0)/12|0)+1|0,m=ADe(s)|0,m>>>0>>0)Jr(s);else{O=n[s>>2]|0,se=((n[s+8>>2]|0)-O|0)/12|0,q=se<<1,fDe(k,se>>>0>>1>>>0?q>>>0>>0?d:q:m,((n[Q>>2]|0)-O|0)/12|0,s+8|0),Q=k+8|0,m=n[Q>>2]|0,d=n[l+4>>2]|0,c=n[c>>2]|0,n[B>>2]=n[l>>2],n[B+4>>2]=d,n[f>>2]=n[B>>2],n[f+4>>2]=n[B+4>>2],i5(m,f,c),n[Q>>2]=(n[Q>>2]|0)+12,pDe(s,k),hDe(k),E=M;return}}function ADe(s){return s=s|0,357913941}function fDe(s,l,c,f){s=s|0,l=l|0,c=c|0,f=f|0;var d=0;n[s+12>>2]=0,n[s+16>>2]=f;do if(l)if(l>>>0>357913941)Rt();else{d=Kt(l*12|0)|0;break}else d=0;while(0);n[s>>2]=d,f=d+(c*12|0)|0,n[s+8>>2]=f,n[s+4>>2]=f,n[s+12>>2]=d+(l*12|0)}function pDe(s,l){s=s|0,l=l|0;var c=0,f=0,d=0,m=0,B=0;f=n[s>>2]|0,B=s+4|0,m=l+4|0,d=(n[B>>2]|0)-f|0,c=(n[m>>2]|0)+(((d|0)/-12|0)*12|0)|0,n[m>>2]=c,(d|0)>0?(Dr(c|0,f|0,d|0)|0,f=m,c=n[m>>2]|0):f=m,m=n[s>>2]|0,n[s>>2]=c,n[f>>2]=m,m=l+8|0,d=n[B>>2]|0,n[B>>2]=n[m>>2],n[m>>2]=d,m=s+8|0,B=l+12|0,s=n[m>>2]|0,n[m>>2]=n[B>>2],n[B>>2]=s,n[l>>2]=n[f>>2]}function hDe(s){s=s|0;var l=0,c=0,f=0;l=n[s+4>>2]|0,c=s+8|0,f=n[c>>2]|0,(f|0)!=(l|0)&&(n[c>>2]=f+(~(((f+-12-l|0)>>>0)/12|0)*12|0)),s=n[s>>2]|0,s|0&>(s)}function s5(s){s=s|0,mDe(s)}function gDe(s){s=s|0,dDe(s+24|0)}function Tr(s){return s=s|0,n[s>>2]|0}function dDe(s){s=s|0;var l=0,c=0,f=0;c=n[s>>2]|0,f=c,c|0&&(s=s+4|0,l=n[s>>2]|0,(l|0)!=(c|0)&&(n[s>>2]=l+(~(((l+-12-f|0)>>>0)/12|0)*12|0)),gt(c))}function mDe(s){s=s|0;var l=0;l=Kr()|0,Vr(s,2,3,l,yDe()|0,0),n[s+24>>2]=0,n[s+28>>2]=0,n[s+32>>2]=0}function Kr(){return 9228}function yDe(){return 1140}function EDe(s,l){s=s|0,l=l|0;var c=0,f=0,d=0,m=0;return c=E,E=E+16|0,f=c+8|0,d=c,m=CDe(s)|0,s=n[m+4>>2]|0,n[d>>2]=n[m>>2],n[d+4>>2]=s,n[f>>2]=n[d>>2],n[f+4>>2]=n[d+4>>2],l=wDe(l,f)|0,E=c,l|0}function Vr(s,l,c,f,d,m){s=s|0,l=l|0,c=c|0,f=f|0,d=d|0,m=m|0,n[s>>2]=l,n[s+4>>2]=c,n[s+8>>2]=f,n[s+12>>2]=d,n[s+16>>2]=m}function CDe(s){return s=s|0,(n[(kF()|0)+24>>2]|0)+(s*12|0)|0}function wDe(s,l){s=s|0,l=l|0;var c=0,f=0,d=0;return d=E,E=E+48|0,f=d,c=n[l>>2]|0,l=n[l+4>>2]|0,s=s+(l>>1)|0,l&1&&(c=n[(n[s>>2]|0)+c>>2]|0),tf[c&31](f,s),f=IDe(f)|0,E=d,f|0}function IDe(s){s=s|0;var l=0,c=0,f=0,d=0;return d=E,E=E+32|0,l=d+12|0,c=d,f=QF(o5()|0)|0,f?(FF(l,f),RF(c,l),BDe(s,c),s=TF(l)|0):s=vDe(s)|0,E=d,s|0}function o5(){var s=0;return o[7632]|0||(TDe(9184),tr(25,9184,U|0)|0,s=7632,n[s>>2]=1,n[s+4>>2]=0),9184}function QF(s){return s=s|0,n[s+36>>2]|0}function FF(s,l){s=s|0,l=l|0,n[s>>2]=l,n[s+4>>2]=s,n[s+8>>2]=0}function RF(s,l){s=s|0,l=l|0,n[s>>2]=n[l>>2],n[s+4>>2]=n[l+4>>2],n[s+8>>2]=0}function BDe(s,l){s=s|0,l=l|0,bDe(l,s,s+8|0,s+16|0,s+24|0,s+32|0,s+40|0)|0}function TF(s){return s=s|0,n[(n[s+4>>2]|0)+8>>2]|0}function vDe(s){s=s|0;var l=0,c=0,f=0,d=0,m=0,B=0,k=0,Q=0;Q=E,E=E+16|0,c=Q+4|0,f=Q,d=Wa(8)|0,m=d,B=Kt(48)|0,k=B,l=k+48|0;do n[k>>2]=n[s>>2],k=k+4|0,s=s+4|0;while((k|0)<(l|0));return l=m+4|0,n[l>>2]=B,k=Kt(8)|0,B=n[l>>2]|0,n[f>>2]=0,n[c>>2]=n[f>>2],a5(k,B,c),n[d>>2]=k,E=Q,m|0}function a5(s,l,c){s=s|0,l=l|0,c=c|0,n[s>>2]=l,c=Kt(16)|0,n[c+4>>2]=0,n[c+8>>2]=0,n[c>>2]=1092,n[c+12>>2]=l,n[s+4>>2]=c}function DDe(s){s=s|0,Vm(s),gt(s)}function PDe(s){s=s|0,s=n[s+12>>2]|0,s|0&>(s)}function SDe(s){s=s|0,gt(s)}function bDe(s,l,c,f,d,m,B){return s=s|0,l=l|0,c=c|0,f=f|0,d=d|0,m=m|0,B=B|0,m=xDe(n[s>>2]|0,l,c,f,d,m,B)|0,B=s+4|0,n[(n[B>>2]|0)+8>>2]=m,n[(n[B>>2]|0)+8>>2]|0}function xDe(s,l,c,f,d,m,B){s=s|0,l=l|0,c=c|0,f=f|0,d=d|0,m=m|0,B=B|0;var k=0,Q=0;return k=E,E=E+16|0,Q=k,Ka(Q),s=da(s)|0,B=kDe(s,+C[l>>3],+C[c>>3],+C[f>>3],+C[d>>3],+C[m>>3],+C[B>>3])|0,Va(Q),E=k,B|0}function kDe(s,l,c,f,d,m,B){s=s|0,l=+l,c=+c,f=+f,d=+d,m=+m,B=+B;var k=0;return k=Pl(QDe()|0)|0,l=+VA(l),c=+VA(c),f=+VA(f),d=+VA(d),m=+VA(m),Ms(0,k|0,s|0,+l,+c,+f,+d,+m,+ +VA(B))|0}function QDe(){var s=0;return o[7624]|0||(FDe(9172),s=7624,n[s>>2]=1,n[s+4>>2]=0),9172}function FDe(s){s=s|0,Sl(s,RDe()|0,6)}function RDe(){return 1112}function TDe(s){s=s|0,Ip(s)}function NDe(s){s=s|0,l5(s+24|0),c5(s+16|0)}function l5(s){s=s|0,ODe(s)}function c5(s){s=s|0,LDe(s)}function LDe(s){s=s|0;var l=0,c=0;if(l=n[s>>2]|0,l|0)do c=l,l=n[l>>2]|0,gt(c);while((l|0)!=0);n[s>>2]=0}function ODe(s){s=s|0;var l=0,c=0;if(l=n[s>>2]|0,l|0)do c=l,l=n[l>>2]|0,gt(c);while((l|0)!=0);n[s>>2]=0}function Ip(s){s=s|0;var l=0;n[s+16>>2]=0,n[s+20>>2]=0,l=s+24|0,n[l>>2]=0,n[s+28>>2]=l,n[s+36>>2]=0,o[s+40>>0]=0,o[s+41>>0]=0}function MDe(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0,B=0,k=0;f=E,E=E+16|0,d=f+8|0,m=f,k=n[c>>2]|0,B=n[c+4>>2]|0,c=pn(l)|0,n[m>>2]=k,n[m+4>>2]=B,n[d>>2]=n[m>>2],n[d+4>>2]=n[m+4>>2],UDe(s,c,d,0),E=f}function UDe(s,l,c,f){s=s|0,l=l|0,c=c|0,f=f|0;var d=0,m=0,B=0,k=0,Q=0,M=0,O=0;d=E,E=E+32|0,m=d+16|0,O=d+8|0,k=d,M=n[c>>2]|0,Q=n[c+4>>2]|0,B=n[s>>2]|0,s=NF()|0,n[O>>2]=M,n[O+4>>2]=Q,n[m>>2]=n[O>>2],n[m+4>>2]=n[O+4>>2],c=_De(m)|0,n[k>>2]=M,n[k+4>>2]=Q,n[m>>2]=n[k>>2],n[m+4>>2]=n[k+4>>2],hn(B,l,s,c,HDe(m,f)|0,f),E=d}function NF(){var s=0,l=0;if(o[7640]|0||(A5(9232),tr(26,9232,U|0)|0,l=7640,n[l>>2]=1,n[l+4>>2]=0),!(Tr(9232)|0)){s=9232,l=s+36|0;do n[s>>2]=0,s=s+4|0;while((s|0)<(l|0));A5(9232)}return 9232}function _De(s){return s=s|0,0}function HDe(s,l){s=s|0,l=l|0;var c=0,f=0,d=0,m=0,B=0,k=0,Q=0,M=0,O=0,q=0;return O=E,E=E+32|0,d=O+24|0,B=O+16|0,k=O,Q=O+8|0,m=n[s>>2]|0,f=n[s+4>>2]|0,n[k>>2]=m,n[k+4>>2]=f,q=NF()|0,M=q+24|0,s=gr(l,4)|0,n[Q>>2]=s,l=q+28|0,c=n[l>>2]|0,c>>>0<(n[q+32>>2]|0)>>>0?(n[B>>2]=m,n[B+4>>2]=f,n[d>>2]=n[B>>2],n[d+4>>2]=n[B+4>>2],u5(c,d,s),s=(n[l>>2]|0)+12|0,n[l>>2]=s):(jDe(M,k,Q),s=n[l>>2]|0),E=O,((s-(n[M>>2]|0)|0)/12|0)+-1|0}function u5(s,l,c){s=s|0,l=l|0,c=c|0;var f=0;f=n[l+4>>2]|0,n[s>>2]=n[l>>2],n[s+4>>2]=f,n[s+8>>2]=c}function jDe(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0,B=0,k=0,Q=0,M=0,O=0,q=0,se=0;if(M=E,E=E+48|0,f=M+32|0,B=M+24|0,k=M,Q=s+4|0,d=(((n[Q>>2]|0)-(n[s>>2]|0)|0)/12|0)+1|0,m=qDe(s)|0,m>>>0>>0)Jr(s);else{O=n[s>>2]|0,se=((n[s+8>>2]|0)-O|0)/12|0,q=se<<1,GDe(k,se>>>0>>1>>>0?q>>>0>>0?d:q:m,((n[Q>>2]|0)-O|0)/12|0,s+8|0),Q=k+8|0,m=n[Q>>2]|0,d=n[l+4>>2]|0,c=n[c>>2]|0,n[B>>2]=n[l>>2],n[B+4>>2]=d,n[f>>2]=n[B>>2],n[f+4>>2]=n[B+4>>2],u5(m,f,c),n[Q>>2]=(n[Q>>2]|0)+12,YDe(s,k),WDe(k),E=M;return}}function qDe(s){return s=s|0,357913941}function GDe(s,l,c,f){s=s|0,l=l|0,c=c|0,f=f|0;var d=0;n[s+12>>2]=0,n[s+16>>2]=f;do if(l)if(l>>>0>357913941)Rt();else{d=Kt(l*12|0)|0;break}else d=0;while(0);n[s>>2]=d,f=d+(c*12|0)|0,n[s+8>>2]=f,n[s+4>>2]=f,n[s+12>>2]=d+(l*12|0)}function YDe(s,l){s=s|0,l=l|0;var c=0,f=0,d=0,m=0,B=0;f=n[s>>2]|0,B=s+4|0,m=l+4|0,d=(n[B>>2]|0)-f|0,c=(n[m>>2]|0)+(((d|0)/-12|0)*12|0)|0,n[m>>2]=c,(d|0)>0?(Dr(c|0,f|0,d|0)|0,f=m,c=n[m>>2]|0):f=m,m=n[s>>2]|0,n[s>>2]=c,n[f>>2]=m,m=l+8|0,d=n[B>>2]|0,n[B>>2]=n[m>>2],n[m>>2]=d,m=s+8|0,B=l+12|0,s=n[m>>2]|0,n[m>>2]=n[B>>2],n[B>>2]=s,n[l>>2]=n[f>>2]}function WDe(s){s=s|0;var l=0,c=0,f=0;l=n[s+4>>2]|0,c=s+8|0,f=n[c>>2]|0,(f|0)!=(l|0)&&(n[c>>2]=f+(~(((f+-12-l|0)>>>0)/12|0)*12|0)),s=n[s>>2]|0,s|0&>(s)}function A5(s){s=s|0,zDe(s)}function KDe(s){s=s|0,VDe(s+24|0)}function VDe(s){s=s|0;var l=0,c=0,f=0;c=n[s>>2]|0,f=c,c|0&&(s=s+4|0,l=n[s>>2]|0,(l|0)!=(c|0)&&(n[s>>2]=l+(~(((l+-12-f|0)>>>0)/12|0)*12|0)),gt(c))}function zDe(s){s=s|0;var l=0;l=Kr()|0,Vr(s,2,1,l,JDe()|0,3),n[s+24>>2]=0,n[s+28>>2]=0,n[s+32>>2]=0}function JDe(){return 1144}function XDe(s,l,c,f,d){s=s|0,l=l|0,c=+c,f=+f,d=d|0;var m=0,B=0,k=0,Q=0;m=E,E=E+16|0,B=m+8|0,k=m,Q=ZDe(s)|0,s=n[Q+4>>2]|0,n[k>>2]=n[Q>>2],n[k+4>>2]=s,n[B>>2]=n[k>>2],n[B+4>>2]=n[k+4>>2],$De(l,B,c,f,d),E=m}function ZDe(s){return s=s|0,(n[(NF()|0)+24>>2]|0)+(s*12|0)|0}function $De(s,l,c,f,d){s=s|0,l=l|0,c=+c,f=+f,d=d|0;var m=0,B=0,k=0,Q=0,M=0;M=E,E=E+16|0,B=M+2|0,k=M+1|0,Q=M,m=n[l>>2]|0,l=n[l+4>>2]|0,s=s+(l>>1)|0,l&1&&(m=n[(n[s>>2]|0)+m>>2]|0),ku(B,c),c=+Qu(B,c),ku(k,f),f=+Qu(k,f),XA(Q,d),Q=ZA(Q,d)|0,P7[m&1](s,c,f,Q),E=M}function ku(s,l){s=s|0,l=+l}function Qu(s,l){return s=s|0,l=+l,+ +tPe(l)}function XA(s,l){s=s|0,l=l|0}function ZA(s,l){return s=s|0,l=l|0,ePe(l)|0}function ePe(s){return s=s|0,s|0}function tPe(s){return s=+s,+s}function rPe(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0,B=0,k=0;f=E,E=E+16|0,d=f+8|0,m=f,k=n[c>>2]|0,B=n[c+4>>2]|0,c=pn(l)|0,n[m>>2]=k,n[m+4>>2]=B,n[d>>2]=n[m>>2],n[d+4>>2]=n[m+4>>2],nPe(s,c,d,1),E=f}function nPe(s,l,c,f){s=s|0,l=l|0,c=c|0,f=f|0;var d=0,m=0,B=0,k=0,Q=0,M=0,O=0;d=E,E=E+32|0,m=d+16|0,O=d+8|0,k=d,M=n[c>>2]|0,Q=n[c+4>>2]|0,B=n[s>>2]|0,s=LF()|0,n[O>>2]=M,n[O+4>>2]=Q,n[m>>2]=n[O>>2],n[m+4>>2]=n[O+4>>2],c=iPe(m)|0,n[k>>2]=M,n[k+4>>2]=Q,n[m>>2]=n[k>>2],n[m+4>>2]=n[k+4>>2],hn(B,l,s,c,sPe(m,f)|0,f),E=d}function LF(){var s=0,l=0;if(o[7648]|0||(p5(9268),tr(27,9268,U|0)|0,l=7648,n[l>>2]=1,n[l+4>>2]=0),!(Tr(9268)|0)){s=9268,l=s+36|0;do n[s>>2]=0,s=s+4|0;while((s|0)<(l|0));p5(9268)}return 9268}function iPe(s){return s=s|0,0}function sPe(s,l){s=s|0,l=l|0;var c=0,f=0,d=0,m=0,B=0,k=0,Q=0,M=0,O=0,q=0;return O=E,E=E+32|0,d=O+24|0,B=O+16|0,k=O,Q=O+8|0,m=n[s>>2]|0,f=n[s+4>>2]|0,n[k>>2]=m,n[k+4>>2]=f,q=LF()|0,M=q+24|0,s=gr(l,4)|0,n[Q>>2]=s,l=q+28|0,c=n[l>>2]|0,c>>>0<(n[q+32>>2]|0)>>>0?(n[B>>2]=m,n[B+4>>2]=f,n[d>>2]=n[B>>2],n[d+4>>2]=n[B+4>>2],f5(c,d,s),s=(n[l>>2]|0)+12|0,n[l>>2]=s):(oPe(M,k,Q),s=n[l>>2]|0),E=O,((s-(n[M>>2]|0)|0)/12|0)+-1|0}function f5(s,l,c){s=s|0,l=l|0,c=c|0;var f=0;f=n[l+4>>2]|0,n[s>>2]=n[l>>2],n[s+4>>2]=f,n[s+8>>2]=c}function oPe(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0,B=0,k=0,Q=0,M=0,O=0,q=0,se=0;if(M=E,E=E+48|0,f=M+32|0,B=M+24|0,k=M,Q=s+4|0,d=(((n[Q>>2]|0)-(n[s>>2]|0)|0)/12|0)+1|0,m=aPe(s)|0,m>>>0>>0)Jr(s);else{O=n[s>>2]|0,se=((n[s+8>>2]|0)-O|0)/12|0,q=se<<1,lPe(k,se>>>0>>1>>>0?q>>>0>>0?d:q:m,((n[Q>>2]|0)-O|0)/12|0,s+8|0),Q=k+8|0,m=n[Q>>2]|0,d=n[l+4>>2]|0,c=n[c>>2]|0,n[B>>2]=n[l>>2],n[B+4>>2]=d,n[f>>2]=n[B>>2],n[f+4>>2]=n[B+4>>2],f5(m,f,c),n[Q>>2]=(n[Q>>2]|0)+12,cPe(s,k),uPe(k),E=M;return}}function aPe(s){return s=s|0,357913941}function lPe(s,l,c,f){s=s|0,l=l|0,c=c|0,f=f|0;var d=0;n[s+12>>2]=0,n[s+16>>2]=f;do if(l)if(l>>>0>357913941)Rt();else{d=Kt(l*12|0)|0;break}else d=0;while(0);n[s>>2]=d,f=d+(c*12|0)|0,n[s+8>>2]=f,n[s+4>>2]=f,n[s+12>>2]=d+(l*12|0)}function cPe(s,l){s=s|0,l=l|0;var c=0,f=0,d=0,m=0,B=0;f=n[s>>2]|0,B=s+4|0,m=l+4|0,d=(n[B>>2]|0)-f|0,c=(n[m>>2]|0)+(((d|0)/-12|0)*12|0)|0,n[m>>2]=c,(d|0)>0?(Dr(c|0,f|0,d|0)|0,f=m,c=n[m>>2]|0):f=m,m=n[s>>2]|0,n[s>>2]=c,n[f>>2]=m,m=l+8|0,d=n[B>>2]|0,n[B>>2]=n[m>>2],n[m>>2]=d,m=s+8|0,B=l+12|0,s=n[m>>2]|0,n[m>>2]=n[B>>2],n[B>>2]=s,n[l>>2]=n[f>>2]}function uPe(s){s=s|0;var l=0,c=0,f=0;l=n[s+4>>2]|0,c=s+8|0,f=n[c>>2]|0,(f|0)!=(l|0)&&(n[c>>2]=f+(~(((f+-12-l|0)>>>0)/12|0)*12|0)),s=n[s>>2]|0,s|0&>(s)}function p5(s){s=s|0,pPe(s)}function APe(s){s=s|0,fPe(s+24|0)}function fPe(s){s=s|0;var l=0,c=0,f=0;c=n[s>>2]|0,f=c,c|0&&(s=s+4|0,l=n[s>>2]|0,(l|0)!=(c|0)&&(n[s>>2]=l+(~(((l+-12-f|0)>>>0)/12|0)*12|0)),gt(c))}function pPe(s){s=s|0;var l=0;l=Kr()|0,Vr(s,2,4,l,hPe()|0,0),n[s+24>>2]=0,n[s+28>>2]=0,n[s+32>>2]=0}function hPe(){return 1160}function gPe(s,l){s=s|0,l=l|0;var c=0,f=0,d=0,m=0;return c=E,E=E+16|0,f=c+8|0,d=c,m=dPe(s)|0,s=n[m+4>>2]|0,n[d>>2]=n[m>>2],n[d+4>>2]=s,n[f>>2]=n[d>>2],n[f+4>>2]=n[d+4>>2],l=mPe(l,f)|0,E=c,l|0}function dPe(s){return s=s|0,(n[(LF()|0)+24>>2]|0)+(s*12|0)|0}function mPe(s,l){s=s|0,l=l|0;var c=0;return c=n[l>>2]|0,l=n[l+4>>2]|0,s=s+(l>>1)|0,l&1&&(c=n[(n[s>>2]|0)+c>>2]|0),h5(Tg[c&31](s)|0)|0}function h5(s){return s=s|0,s&1|0}function yPe(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0,B=0,k=0;f=E,E=E+16|0,d=f+8|0,m=f,k=n[c>>2]|0,B=n[c+4>>2]|0,c=pn(l)|0,n[m>>2]=k,n[m+4>>2]=B,n[d>>2]=n[m>>2],n[d+4>>2]=n[m+4>>2],EPe(s,c,d,0),E=f}function EPe(s,l,c,f){s=s|0,l=l|0,c=c|0,f=f|0;var d=0,m=0,B=0,k=0,Q=0,M=0,O=0;d=E,E=E+32|0,m=d+16|0,O=d+8|0,k=d,M=n[c>>2]|0,Q=n[c+4>>2]|0,B=n[s>>2]|0,s=OF()|0,n[O>>2]=M,n[O+4>>2]=Q,n[m>>2]=n[O>>2],n[m+4>>2]=n[O+4>>2],c=CPe(m)|0,n[k>>2]=M,n[k+4>>2]=Q,n[m>>2]=n[k>>2],n[m+4>>2]=n[k+4>>2],hn(B,l,s,c,wPe(m,f)|0,f),E=d}function OF(){var s=0,l=0;if(o[7656]|0||(d5(9304),tr(28,9304,U|0)|0,l=7656,n[l>>2]=1,n[l+4>>2]=0),!(Tr(9304)|0)){s=9304,l=s+36|0;do n[s>>2]=0,s=s+4|0;while((s|0)<(l|0));d5(9304)}return 9304}function CPe(s){return s=s|0,0}function wPe(s,l){s=s|0,l=l|0;var c=0,f=0,d=0,m=0,B=0,k=0,Q=0,M=0,O=0,q=0;return O=E,E=E+32|0,d=O+24|0,B=O+16|0,k=O,Q=O+8|0,m=n[s>>2]|0,f=n[s+4>>2]|0,n[k>>2]=m,n[k+4>>2]=f,q=OF()|0,M=q+24|0,s=gr(l,4)|0,n[Q>>2]=s,l=q+28|0,c=n[l>>2]|0,c>>>0<(n[q+32>>2]|0)>>>0?(n[B>>2]=m,n[B+4>>2]=f,n[d>>2]=n[B>>2],n[d+4>>2]=n[B+4>>2],g5(c,d,s),s=(n[l>>2]|0)+12|0,n[l>>2]=s):(IPe(M,k,Q),s=n[l>>2]|0),E=O,((s-(n[M>>2]|0)|0)/12|0)+-1|0}function g5(s,l,c){s=s|0,l=l|0,c=c|0;var f=0;f=n[l+4>>2]|0,n[s>>2]=n[l>>2],n[s+4>>2]=f,n[s+8>>2]=c}function IPe(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0,B=0,k=0,Q=0,M=0,O=0,q=0,se=0;if(M=E,E=E+48|0,f=M+32|0,B=M+24|0,k=M,Q=s+4|0,d=(((n[Q>>2]|0)-(n[s>>2]|0)|0)/12|0)+1|0,m=BPe(s)|0,m>>>0>>0)Jr(s);else{O=n[s>>2]|0,se=((n[s+8>>2]|0)-O|0)/12|0,q=se<<1,vPe(k,se>>>0>>1>>>0?q>>>0>>0?d:q:m,((n[Q>>2]|0)-O|0)/12|0,s+8|0),Q=k+8|0,m=n[Q>>2]|0,d=n[l+4>>2]|0,c=n[c>>2]|0,n[B>>2]=n[l>>2],n[B+4>>2]=d,n[f>>2]=n[B>>2],n[f+4>>2]=n[B+4>>2],g5(m,f,c),n[Q>>2]=(n[Q>>2]|0)+12,DPe(s,k),PPe(k),E=M;return}}function BPe(s){return s=s|0,357913941}function vPe(s,l,c,f){s=s|0,l=l|0,c=c|0,f=f|0;var d=0;n[s+12>>2]=0,n[s+16>>2]=f;do if(l)if(l>>>0>357913941)Rt();else{d=Kt(l*12|0)|0;break}else d=0;while(0);n[s>>2]=d,f=d+(c*12|0)|0,n[s+8>>2]=f,n[s+4>>2]=f,n[s+12>>2]=d+(l*12|0)}function DPe(s,l){s=s|0,l=l|0;var c=0,f=0,d=0,m=0,B=0;f=n[s>>2]|0,B=s+4|0,m=l+4|0,d=(n[B>>2]|0)-f|0,c=(n[m>>2]|0)+(((d|0)/-12|0)*12|0)|0,n[m>>2]=c,(d|0)>0?(Dr(c|0,f|0,d|0)|0,f=m,c=n[m>>2]|0):f=m,m=n[s>>2]|0,n[s>>2]=c,n[f>>2]=m,m=l+8|0,d=n[B>>2]|0,n[B>>2]=n[m>>2],n[m>>2]=d,m=s+8|0,B=l+12|0,s=n[m>>2]|0,n[m>>2]=n[B>>2],n[B>>2]=s,n[l>>2]=n[f>>2]}function PPe(s){s=s|0;var l=0,c=0,f=0;l=n[s+4>>2]|0,c=s+8|0,f=n[c>>2]|0,(f|0)!=(l|0)&&(n[c>>2]=f+(~(((f+-12-l|0)>>>0)/12|0)*12|0)),s=n[s>>2]|0,s|0&>(s)}function d5(s){s=s|0,xPe(s)}function SPe(s){s=s|0,bPe(s+24|0)}function bPe(s){s=s|0;var l=0,c=0,f=0;c=n[s>>2]|0,f=c,c|0&&(s=s+4|0,l=n[s>>2]|0,(l|0)!=(c|0)&&(n[s>>2]=l+(~(((l+-12-f|0)>>>0)/12|0)*12|0)),gt(c))}function xPe(s){s=s|0;var l=0;l=Kr()|0,Vr(s,2,5,l,kPe()|0,1),n[s+24>>2]=0,n[s+28>>2]=0,n[s+32>>2]=0}function kPe(){return 1164}function QPe(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0,B=0;f=E,E=E+16|0,d=f+8|0,m=f,B=FPe(s)|0,s=n[B+4>>2]|0,n[m>>2]=n[B>>2],n[m+4>>2]=s,n[d>>2]=n[m>>2],n[d+4>>2]=n[m+4>>2],RPe(l,d,c),E=f}function FPe(s){return s=s|0,(n[(OF()|0)+24>>2]|0)+(s*12|0)|0}function RPe(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0;m=E,E=E+16|0,d=m,f=n[l>>2]|0,l=n[l+4>>2]|0,s=s+(l>>1)|0,l&1&&(f=n[(n[s>>2]|0)+f>>2]|0),Bp(d,c),c=vp(d,c)|0,tf[f&31](s,c),Dp(d),E=m}function Bp(s,l){s=s|0,l=l|0,TPe(s,l)}function vp(s,l){return s=s|0,l=l|0,s|0}function Dp(s){s=s|0,jA(s)}function TPe(s,l){s=s|0,l=l|0,MF(s,l)}function MF(s,l){s=s|0,l=l|0,n[s>>2]=l}function NPe(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0,B=0,k=0;f=E,E=E+16|0,d=f+8|0,m=f,k=n[c>>2]|0,B=n[c+4>>2]|0,c=pn(l)|0,n[m>>2]=k,n[m+4>>2]=B,n[d>>2]=n[m>>2],n[d+4>>2]=n[m+4>>2],LPe(s,c,d,0),E=f}function LPe(s,l,c,f){s=s|0,l=l|0,c=c|0,f=f|0;var d=0,m=0,B=0,k=0,Q=0,M=0,O=0;d=E,E=E+32|0,m=d+16|0,O=d+8|0,k=d,M=n[c>>2]|0,Q=n[c+4>>2]|0,B=n[s>>2]|0,s=UF()|0,n[O>>2]=M,n[O+4>>2]=Q,n[m>>2]=n[O>>2],n[m+4>>2]=n[O+4>>2],c=OPe(m)|0,n[k>>2]=M,n[k+4>>2]=Q,n[m>>2]=n[k>>2],n[m+4>>2]=n[k+4>>2],hn(B,l,s,c,MPe(m,f)|0,f),E=d}function UF(){var s=0,l=0;if(o[7664]|0||(y5(9340),tr(29,9340,U|0)|0,l=7664,n[l>>2]=1,n[l+4>>2]=0),!(Tr(9340)|0)){s=9340,l=s+36|0;do n[s>>2]=0,s=s+4|0;while((s|0)<(l|0));y5(9340)}return 9340}function OPe(s){return s=s|0,0}function MPe(s,l){s=s|0,l=l|0;var c=0,f=0,d=0,m=0,B=0,k=0,Q=0,M=0,O=0,q=0;return O=E,E=E+32|0,d=O+24|0,B=O+16|0,k=O,Q=O+8|0,m=n[s>>2]|0,f=n[s+4>>2]|0,n[k>>2]=m,n[k+4>>2]=f,q=UF()|0,M=q+24|0,s=gr(l,4)|0,n[Q>>2]=s,l=q+28|0,c=n[l>>2]|0,c>>>0<(n[q+32>>2]|0)>>>0?(n[B>>2]=m,n[B+4>>2]=f,n[d>>2]=n[B>>2],n[d+4>>2]=n[B+4>>2],m5(c,d,s),s=(n[l>>2]|0)+12|0,n[l>>2]=s):(UPe(M,k,Q),s=n[l>>2]|0),E=O,((s-(n[M>>2]|0)|0)/12|0)+-1|0}function m5(s,l,c){s=s|0,l=l|0,c=c|0;var f=0;f=n[l+4>>2]|0,n[s>>2]=n[l>>2],n[s+4>>2]=f,n[s+8>>2]=c}function UPe(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0,B=0,k=0,Q=0,M=0,O=0,q=0,se=0;if(M=E,E=E+48|0,f=M+32|0,B=M+24|0,k=M,Q=s+4|0,d=(((n[Q>>2]|0)-(n[s>>2]|0)|0)/12|0)+1|0,m=_Pe(s)|0,m>>>0>>0)Jr(s);else{O=n[s>>2]|0,se=((n[s+8>>2]|0)-O|0)/12|0,q=se<<1,HPe(k,se>>>0>>1>>>0?q>>>0>>0?d:q:m,((n[Q>>2]|0)-O|0)/12|0,s+8|0),Q=k+8|0,m=n[Q>>2]|0,d=n[l+4>>2]|0,c=n[c>>2]|0,n[B>>2]=n[l>>2],n[B+4>>2]=d,n[f>>2]=n[B>>2],n[f+4>>2]=n[B+4>>2],m5(m,f,c),n[Q>>2]=(n[Q>>2]|0)+12,jPe(s,k),qPe(k),E=M;return}}function _Pe(s){return s=s|0,357913941}function HPe(s,l,c,f){s=s|0,l=l|0,c=c|0,f=f|0;var d=0;n[s+12>>2]=0,n[s+16>>2]=f;do if(l)if(l>>>0>357913941)Rt();else{d=Kt(l*12|0)|0;break}else d=0;while(0);n[s>>2]=d,f=d+(c*12|0)|0,n[s+8>>2]=f,n[s+4>>2]=f,n[s+12>>2]=d+(l*12|0)}function jPe(s,l){s=s|0,l=l|0;var c=0,f=0,d=0,m=0,B=0;f=n[s>>2]|0,B=s+4|0,m=l+4|0,d=(n[B>>2]|0)-f|0,c=(n[m>>2]|0)+(((d|0)/-12|0)*12|0)|0,n[m>>2]=c,(d|0)>0?(Dr(c|0,f|0,d|0)|0,f=m,c=n[m>>2]|0):f=m,m=n[s>>2]|0,n[s>>2]=c,n[f>>2]=m,m=l+8|0,d=n[B>>2]|0,n[B>>2]=n[m>>2],n[m>>2]=d,m=s+8|0,B=l+12|0,s=n[m>>2]|0,n[m>>2]=n[B>>2],n[B>>2]=s,n[l>>2]=n[f>>2]}function qPe(s){s=s|0;var l=0,c=0,f=0;l=n[s+4>>2]|0,c=s+8|0,f=n[c>>2]|0,(f|0)!=(l|0)&&(n[c>>2]=f+(~(((f+-12-l|0)>>>0)/12|0)*12|0)),s=n[s>>2]|0,s|0&>(s)}function y5(s){s=s|0,WPe(s)}function GPe(s){s=s|0,YPe(s+24|0)}function YPe(s){s=s|0;var l=0,c=0,f=0;c=n[s>>2]|0,f=c,c|0&&(s=s+4|0,l=n[s>>2]|0,(l|0)!=(c|0)&&(n[s>>2]=l+(~(((l+-12-f|0)>>>0)/12|0)*12|0)),gt(c))}function WPe(s){s=s|0;var l=0;l=Kr()|0,Vr(s,2,4,l,KPe()|0,1),n[s+24>>2]=0,n[s+28>>2]=0,n[s+32>>2]=0}function KPe(){return 1180}function VPe(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0,B=0;return f=E,E=E+16|0,d=f+8|0,m=f,B=zPe(s)|0,s=n[B+4>>2]|0,n[m>>2]=n[B>>2],n[m+4>>2]=s,n[d>>2]=n[m>>2],n[d+4>>2]=n[m+4>>2],c=JPe(l,d,c)|0,E=f,c|0}function zPe(s){return s=s|0,(n[(UF()|0)+24>>2]|0)+(s*12|0)|0}function JPe(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0;return m=E,E=E+16|0,d=m,f=n[l>>2]|0,l=n[l+4>>2]|0,s=s+(l>>1)|0,l&1&&(f=n[(n[s>>2]|0)+f>>2]|0),Pg(d,c),d=Sg(d,c)|0,d=sD(NR[f&15](s,d)|0)|0,E=m,d|0}function Pg(s,l){s=s|0,l=l|0}function Sg(s,l){return s=s|0,l=l|0,XPe(l)|0}function sD(s){return s=s|0,s|0}function XPe(s){return s=s|0,s|0}function ZPe(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0,B=0,k=0;f=E,E=E+16|0,d=f+8|0,m=f,k=n[c>>2]|0,B=n[c+4>>2]|0,c=pn(l)|0,n[m>>2]=k,n[m+4>>2]=B,n[d>>2]=n[m>>2],n[d+4>>2]=n[m+4>>2],$Pe(s,c,d,0),E=f}function $Pe(s,l,c,f){s=s|0,l=l|0,c=c|0,f=f|0;var d=0,m=0,B=0,k=0,Q=0,M=0,O=0;d=E,E=E+32|0,m=d+16|0,O=d+8|0,k=d,M=n[c>>2]|0,Q=n[c+4>>2]|0,B=n[s>>2]|0,s=_F()|0,n[O>>2]=M,n[O+4>>2]=Q,n[m>>2]=n[O>>2],n[m+4>>2]=n[O+4>>2],c=eSe(m)|0,n[k>>2]=M,n[k+4>>2]=Q,n[m>>2]=n[k>>2],n[m+4>>2]=n[k+4>>2],hn(B,l,s,c,tSe(m,f)|0,f),E=d}function _F(){var s=0,l=0;if(o[7672]|0||(C5(9376),tr(30,9376,U|0)|0,l=7672,n[l>>2]=1,n[l+4>>2]=0),!(Tr(9376)|0)){s=9376,l=s+36|0;do n[s>>2]=0,s=s+4|0;while((s|0)<(l|0));C5(9376)}return 9376}function eSe(s){return s=s|0,0}function tSe(s,l){s=s|0,l=l|0;var c=0,f=0,d=0,m=0,B=0,k=0,Q=0,M=0,O=0,q=0;return O=E,E=E+32|0,d=O+24|0,B=O+16|0,k=O,Q=O+8|0,m=n[s>>2]|0,f=n[s+4>>2]|0,n[k>>2]=m,n[k+4>>2]=f,q=_F()|0,M=q+24|0,s=gr(l,4)|0,n[Q>>2]=s,l=q+28|0,c=n[l>>2]|0,c>>>0<(n[q+32>>2]|0)>>>0?(n[B>>2]=m,n[B+4>>2]=f,n[d>>2]=n[B>>2],n[d+4>>2]=n[B+4>>2],E5(c,d,s),s=(n[l>>2]|0)+12|0,n[l>>2]=s):(rSe(M,k,Q),s=n[l>>2]|0),E=O,((s-(n[M>>2]|0)|0)/12|0)+-1|0}function E5(s,l,c){s=s|0,l=l|0,c=c|0;var f=0;f=n[l+4>>2]|0,n[s>>2]=n[l>>2],n[s+4>>2]=f,n[s+8>>2]=c}function rSe(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0,B=0,k=0,Q=0,M=0,O=0,q=0,se=0;if(M=E,E=E+48|0,f=M+32|0,B=M+24|0,k=M,Q=s+4|0,d=(((n[Q>>2]|0)-(n[s>>2]|0)|0)/12|0)+1|0,m=nSe(s)|0,m>>>0>>0)Jr(s);else{O=n[s>>2]|0,se=((n[s+8>>2]|0)-O|0)/12|0,q=se<<1,iSe(k,se>>>0>>1>>>0?q>>>0>>0?d:q:m,((n[Q>>2]|0)-O|0)/12|0,s+8|0),Q=k+8|0,m=n[Q>>2]|0,d=n[l+4>>2]|0,c=n[c>>2]|0,n[B>>2]=n[l>>2],n[B+4>>2]=d,n[f>>2]=n[B>>2],n[f+4>>2]=n[B+4>>2],E5(m,f,c),n[Q>>2]=(n[Q>>2]|0)+12,sSe(s,k),oSe(k),E=M;return}}function nSe(s){return s=s|0,357913941}function iSe(s,l,c,f){s=s|0,l=l|0,c=c|0,f=f|0;var d=0;n[s+12>>2]=0,n[s+16>>2]=f;do if(l)if(l>>>0>357913941)Rt();else{d=Kt(l*12|0)|0;break}else d=0;while(0);n[s>>2]=d,f=d+(c*12|0)|0,n[s+8>>2]=f,n[s+4>>2]=f,n[s+12>>2]=d+(l*12|0)}function sSe(s,l){s=s|0,l=l|0;var c=0,f=0,d=0,m=0,B=0;f=n[s>>2]|0,B=s+4|0,m=l+4|0,d=(n[B>>2]|0)-f|0,c=(n[m>>2]|0)+(((d|0)/-12|0)*12|0)|0,n[m>>2]=c,(d|0)>0?(Dr(c|0,f|0,d|0)|0,f=m,c=n[m>>2]|0):f=m,m=n[s>>2]|0,n[s>>2]=c,n[f>>2]=m,m=l+8|0,d=n[B>>2]|0,n[B>>2]=n[m>>2],n[m>>2]=d,m=s+8|0,B=l+12|0,s=n[m>>2]|0,n[m>>2]=n[B>>2],n[B>>2]=s,n[l>>2]=n[f>>2]}function oSe(s){s=s|0;var l=0,c=0,f=0;l=n[s+4>>2]|0,c=s+8|0,f=n[c>>2]|0,(f|0)!=(l|0)&&(n[c>>2]=f+(~(((f+-12-l|0)>>>0)/12|0)*12|0)),s=n[s>>2]|0,s|0&>(s)}function C5(s){s=s|0,cSe(s)}function aSe(s){s=s|0,lSe(s+24|0)}function lSe(s){s=s|0;var l=0,c=0,f=0;c=n[s>>2]|0,f=c,c|0&&(s=s+4|0,l=n[s>>2]|0,(l|0)!=(c|0)&&(n[s>>2]=l+(~(((l+-12-f|0)>>>0)/12|0)*12|0)),gt(c))}function cSe(s){s=s|0;var l=0;l=Kr()|0,Vr(s,2,5,l,w5()|0,0),n[s+24>>2]=0,n[s+28>>2]=0,n[s+32>>2]=0}function w5(){return 1196}function uSe(s,l){s=s|0,l=l|0;var c=0,f=0,d=0,m=0;return c=E,E=E+16|0,f=c+8|0,d=c,m=ASe(s)|0,s=n[m+4>>2]|0,n[d>>2]=n[m>>2],n[d+4>>2]=s,n[f>>2]=n[d>>2],n[f+4>>2]=n[d+4>>2],l=fSe(l,f)|0,E=c,l|0}function ASe(s){return s=s|0,(n[(_F()|0)+24>>2]|0)+(s*12|0)|0}function fSe(s,l){s=s|0,l=l|0;var c=0;return c=n[l>>2]|0,l=n[l+4>>2]|0,s=s+(l>>1)|0,l&1&&(c=n[(n[s>>2]|0)+c>>2]|0),sD(Tg[c&31](s)|0)|0}function pSe(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0,B=0,k=0;f=E,E=E+16|0,d=f+8|0,m=f,k=n[c>>2]|0,B=n[c+4>>2]|0,c=pn(l)|0,n[m>>2]=k,n[m+4>>2]=B,n[d>>2]=n[m>>2],n[d+4>>2]=n[m+4>>2],hSe(s,c,d,1),E=f}function hSe(s,l,c,f){s=s|0,l=l|0,c=c|0,f=f|0;var d=0,m=0,B=0,k=0,Q=0,M=0,O=0;d=E,E=E+32|0,m=d+16|0,O=d+8|0,k=d,M=n[c>>2]|0,Q=n[c+4>>2]|0,B=n[s>>2]|0,s=HF()|0,n[O>>2]=M,n[O+4>>2]=Q,n[m>>2]=n[O>>2],n[m+4>>2]=n[O+4>>2],c=gSe(m)|0,n[k>>2]=M,n[k+4>>2]=Q,n[m>>2]=n[k>>2],n[m+4>>2]=n[k+4>>2],hn(B,l,s,c,dSe(m,f)|0,f),E=d}function HF(){var s=0,l=0;if(o[7680]|0||(B5(9412),tr(31,9412,U|0)|0,l=7680,n[l>>2]=1,n[l+4>>2]=0),!(Tr(9412)|0)){s=9412,l=s+36|0;do n[s>>2]=0,s=s+4|0;while((s|0)<(l|0));B5(9412)}return 9412}function gSe(s){return s=s|0,0}function dSe(s,l){s=s|0,l=l|0;var c=0,f=0,d=0,m=0,B=0,k=0,Q=0,M=0,O=0,q=0;return O=E,E=E+32|0,d=O+24|0,B=O+16|0,k=O,Q=O+8|0,m=n[s>>2]|0,f=n[s+4>>2]|0,n[k>>2]=m,n[k+4>>2]=f,q=HF()|0,M=q+24|0,s=gr(l,4)|0,n[Q>>2]=s,l=q+28|0,c=n[l>>2]|0,c>>>0<(n[q+32>>2]|0)>>>0?(n[B>>2]=m,n[B+4>>2]=f,n[d>>2]=n[B>>2],n[d+4>>2]=n[B+4>>2],I5(c,d,s),s=(n[l>>2]|0)+12|0,n[l>>2]=s):(mSe(M,k,Q),s=n[l>>2]|0),E=O,((s-(n[M>>2]|0)|0)/12|0)+-1|0}function I5(s,l,c){s=s|0,l=l|0,c=c|0;var f=0;f=n[l+4>>2]|0,n[s>>2]=n[l>>2],n[s+4>>2]=f,n[s+8>>2]=c}function mSe(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0,B=0,k=0,Q=0,M=0,O=0,q=0,se=0;if(M=E,E=E+48|0,f=M+32|0,B=M+24|0,k=M,Q=s+4|0,d=(((n[Q>>2]|0)-(n[s>>2]|0)|0)/12|0)+1|0,m=ySe(s)|0,m>>>0>>0)Jr(s);else{O=n[s>>2]|0,se=((n[s+8>>2]|0)-O|0)/12|0,q=se<<1,ESe(k,se>>>0>>1>>>0?q>>>0>>0?d:q:m,((n[Q>>2]|0)-O|0)/12|0,s+8|0),Q=k+8|0,m=n[Q>>2]|0,d=n[l+4>>2]|0,c=n[c>>2]|0,n[B>>2]=n[l>>2],n[B+4>>2]=d,n[f>>2]=n[B>>2],n[f+4>>2]=n[B+4>>2],I5(m,f,c),n[Q>>2]=(n[Q>>2]|0)+12,CSe(s,k),wSe(k),E=M;return}}function ySe(s){return s=s|0,357913941}function ESe(s,l,c,f){s=s|0,l=l|0,c=c|0,f=f|0;var d=0;n[s+12>>2]=0,n[s+16>>2]=f;do if(l)if(l>>>0>357913941)Rt();else{d=Kt(l*12|0)|0;break}else d=0;while(0);n[s>>2]=d,f=d+(c*12|0)|0,n[s+8>>2]=f,n[s+4>>2]=f,n[s+12>>2]=d+(l*12|0)}function CSe(s,l){s=s|0,l=l|0;var c=0,f=0,d=0,m=0,B=0;f=n[s>>2]|0,B=s+4|0,m=l+4|0,d=(n[B>>2]|0)-f|0,c=(n[m>>2]|0)+(((d|0)/-12|0)*12|0)|0,n[m>>2]=c,(d|0)>0?(Dr(c|0,f|0,d|0)|0,f=m,c=n[m>>2]|0):f=m,m=n[s>>2]|0,n[s>>2]=c,n[f>>2]=m,m=l+8|0,d=n[B>>2]|0,n[B>>2]=n[m>>2],n[m>>2]=d,m=s+8|0,B=l+12|0,s=n[m>>2]|0,n[m>>2]=n[B>>2],n[B>>2]=s,n[l>>2]=n[f>>2]}function wSe(s){s=s|0;var l=0,c=0,f=0;l=n[s+4>>2]|0,c=s+8|0,f=n[c>>2]|0,(f|0)!=(l|0)&&(n[c>>2]=f+(~(((f+-12-l|0)>>>0)/12|0)*12|0)),s=n[s>>2]|0,s|0&>(s)}function B5(s){s=s|0,vSe(s)}function ISe(s){s=s|0,BSe(s+24|0)}function BSe(s){s=s|0;var l=0,c=0,f=0;c=n[s>>2]|0,f=c,c|0&&(s=s+4|0,l=n[s>>2]|0,(l|0)!=(c|0)&&(n[s>>2]=l+(~(((l+-12-f|0)>>>0)/12|0)*12|0)),gt(c))}function vSe(s){s=s|0;var l=0;l=Kr()|0,Vr(s,2,6,l,v5()|0,0),n[s+24>>2]=0,n[s+28>>2]=0,n[s+32>>2]=0}function v5(){return 1200}function DSe(s,l){s=s|0,l=l|0;var c=0,f=0,d=0,m=0;return c=E,E=E+16|0,f=c+8|0,d=c,m=PSe(s)|0,s=n[m+4>>2]|0,n[d>>2]=n[m>>2],n[d+4>>2]=s,n[f>>2]=n[d>>2],n[f+4>>2]=n[d+4>>2],l=SSe(l,f)|0,E=c,l|0}function PSe(s){return s=s|0,(n[(HF()|0)+24>>2]|0)+(s*12|0)|0}function SSe(s,l){s=s|0,l=l|0;var c=0;return c=n[l>>2]|0,l=n[l+4>>2]|0,s=s+(l>>1)|0,l&1&&(c=n[(n[s>>2]|0)+c>>2]|0),oD(Tg[c&31](s)|0)|0}function oD(s){return s=s|0,s|0}function bSe(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0,B=0,k=0;f=E,E=E+16|0,d=f+8|0,m=f,k=n[c>>2]|0,B=n[c+4>>2]|0,c=pn(l)|0,n[m>>2]=k,n[m+4>>2]=B,n[d>>2]=n[m>>2],n[d+4>>2]=n[m+4>>2],xSe(s,c,d,0),E=f}function xSe(s,l,c,f){s=s|0,l=l|0,c=c|0,f=f|0;var d=0,m=0,B=0,k=0,Q=0,M=0,O=0;d=E,E=E+32|0,m=d+16|0,O=d+8|0,k=d,M=n[c>>2]|0,Q=n[c+4>>2]|0,B=n[s>>2]|0,s=jF()|0,n[O>>2]=M,n[O+4>>2]=Q,n[m>>2]=n[O>>2],n[m+4>>2]=n[O+4>>2],c=kSe(m)|0,n[k>>2]=M,n[k+4>>2]=Q,n[m>>2]=n[k>>2],n[m+4>>2]=n[k+4>>2],hn(B,l,s,c,QSe(m,f)|0,f),E=d}function jF(){var s=0,l=0;if(o[7688]|0||(P5(9448),tr(32,9448,U|0)|0,l=7688,n[l>>2]=1,n[l+4>>2]=0),!(Tr(9448)|0)){s=9448,l=s+36|0;do n[s>>2]=0,s=s+4|0;while((s|0)<(l|0));P5(9448)}return 9448}function kSe(s){return s=s|0,0}function QSe(s,l){s=s|0,l=l|0;var c=0,f=0,d=0,m=0,B=0,k=0,Q=0,M=0,O=0,q=0;return O=E,E=E+32|0,d=O+24|0,B=O+16|0,k=O,Q=O+8|0,m=n[s>>2]|0,f=n[s+4>>2]|0,n[k>>2]=m,n[k+4>>2]=f,q=jF()|0,M=q+24|0,s=gr(l,4)|0,n[Q>>2]=s,l=q+28|0,c=n[l>>2]|0,c>>>0<(n[q+32>>2]|0)>>>0?(n[B>>2]=m,n[B+4>>2]=f,n[d>>2]=n[B>>2],n[d+4>>2]=n[B+4>>2],D5(c,d,s),s=(n[l>>2]|0)+12|0,n[l>>2]=s):(FSe(M,k,Q),s=n[l>>2]|0),E=O,((s-(n[M>>2]|0)|0)/12|0)+-1|0}function D5(s,l,c){s=s|0,l=l|0,c=c|0;var f=0;f=n[l+4>>2]|0,n[s>>2]=n[l>>2],n[s+4>>2]=f,n[s+8>>2]=c}function FSe(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0,B=0,k=0,Q=0,M=0,O=0,q=0,se=0;if(M=E,E=E+48|0,f=M+32|0,B=M+24|0,k=M,Q=s+4|0,d=(((n[Q>>2]|0)-(n[s>>2]|0)|0)/12|0)+1|0,m=RSe(s)|0,m>>>0>>0)Jr(s);else{O=n[s>>2]|0,se=((n[s+8>>2]|0)-O|0)/12|0,q=se<<1,TSe(k,se>>>0>>1>>>0?q>>>0>>0?d:q:m,((n[Q>>2]|0)-O|0)/12|0,s+8|0),Q=k+8|0,m=n[Q>>2]|0,d=n[l+4>>2]|0,c=n[c>>2]|0,n[B>>2]=n[l>>2],n[B+4>>2]=d,n[f>>2]=n[B>>2],n[f+4>>2]=n[B+4>>2],D5(m,f,c),n[Q>>2]=(n[Q>>2]|0)+12,NSe(s,k),LSe(k),E=M;return}}function RSe(s){return s=s|0,357913941}function TSe(s,l,c,f){s=s|0,l=l|0,c=c|0,f=f|0;var d=0;n[s+12>>2]=0,n[s+16>>2]=f;do if(l)if(l>>>0>357913941)Rt();else{d=Kt(l*12|0)|0;break}else d=0;while(0);n[s>>2]=d,f=d+(c*12|0)|0,n[s+8>>2]=f,n[s+4>>2]=f,n[s+12>>2]=d+(l*12|0)}function NSe(s,l){s=s|0,l=l|0;var c=0,f=0,d=0,m=0,B=0;f=n[s>>2]|0,B=s+4|0,m=l+4|0,d=(n[B>>2]|0)-f|0,c=(n[m>>2]|0)+(((d|0)/-12|0)*12|0)|0,n[m>>2]=c,(d|0)>0?(Dr(c|0,f|0,d|0)|0,f=m,c=n[m>>2]|0):f=m,m=n[s>>2]|0,n[s>>2]=c,n[f>>2]=m,m=l+8|0,d=n[B>>2]|0,n[B>>2]=n[m>>2],n[m>>2]=d,m=s+8|0,B=l+12|0,s=n[m>>2]|0,n[m>>2]=n[B>>2],n[B>>2]=s,n[l>>2]=n[f>>2]}function LSe(s){s=s|0;var l=0,c=0,f=0;l=n[s+4>>2]|0,c=s+8|0,f=n[c>>2]|0,(f|0)!=(l|0)&&(n[c>>2]=f+(~(((f+-12-l|0)>>>0)/12|0)*12|0)),s=n[s>>2]|0,s|0&>(s)}function P5(s){s=s|0,USe(s)}function OSe(s){s=s|0,MSe(s+24|0)}function MSe(s){s=s|0;var l=0,c=0,f=0;c=n[s>>2]|0,f=c,c|0&&(s=s+4|0,l=n[s>>2]|0,(l|0)!=(c|0)&&(n[s>>2]=l+(~(((l+-12-f|0)>>>0)/12|0)*12|0)),gt(c))}function USe(s){s=s|0;var l=0;l=Kr()|0,Vr(s,2,6,l,S5()|0,1),n[s+24>>2]=0,n[s+28>>2]=0,n[s+32>>2]=0}function S5(){return 1204}function _Se(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0,B=0;f=E,E=E+16|0,d=f+8|0,m=f,B=HSe(s)|0,s=n[B+4>>2]|0,n[m>>2]=n[B>>2],n[m+4>>2]=s,n[d>>2]=n[m>>2],n[d+4>>2]=n[m+4>>2],jSe(l,d,c),E=f}function HSe(s){return s=s|0,(n[(jF()|0)+24>>2]|0)+(s*12|0)|0}function jSe(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0;m=E,E=E+16|0,d=m,f=n[l>>2]|0,l=n[l+4>>2]|0,s=s+(l>>1)|0,l&1&&(f=n[(n[s>>2]|0)+f>>2]|0),qF(d,c),d=GF(d,c)|0,tf[f&31](s,d),E=m}function qF(s,l){s=s|0,l=l|0}function GF(s,l){return s=s|0,l=l|0,qSe(l)|0}function qSe(s){return s=s|0,s|0}function GSe(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0,B=0,k=0;f=E,E=E+16|0,d=f+8|0,m=f,k=n[c>>2]|0,B=n[c+4>>2]|0,c=pn(l)|0,n[m>>2]=k,n[m+4>>2]=B,n[d>>2]=n[m>>2],n[d+4>>2]=n[m+4>>2],YSe(s,c,d,0),E=f}function YSe(s,l,c,f){s=s|0,l=l|0,c=c|0,f=f|0;var d=0,m=0,B=0,k=0,Q=0,M=0,O=0;d=E,E=E+32|0,m=d+16|0,O=d+8|0,k=d,M=n[c>>2]|0,Q=n[c+4>>2]|0,B=n[s>>2]|0,s=YF()|0,n[O>>2]=M,n[O+4>>2]=Q,n[m>>2]=n[O>>2],n[m+4>>2]=n[O+4>>2],c=WSe(m)|0,n[k>>2]=M,n[k+4>>2]=Q,n[m>>2]=n[k>>2],n[m+4>>2]=n[k+4>>2],hn(B,l,s,c,KSe(m,f)|0,f),E=d}function YF(){var s=0,l=0;if(o[7696]|0||(x5(9484),tr(33,9484,U|0)|0,l=7696,n[l>>2]=1,n[l+4>>2]=0),!(Tr(9484)|0)){s=9484,l=s+36|0;do n[s>>2]=0,s=s+4|0;while((s|0)<(l|0));x5(9484)}return 9484}function WSe(s){return s=s|0,0}function KSe(s,l){s=s|0,l=l|0;var c=0,f=0,d=0,m=0,B=0,k=0,Q=0,M=0,O=0,q=0;return O=E,E=E+32|0,d=O+24|0,B=O+16|0,k=O,Q=O+8|0,m=n[s>>2]|0,f=n[s+4>>2]|0,n[k>>2]=m,n[k+4>>2]=f,q=YF()|0,M=q+24|0,s=gr(l,4)|0,n[Q>>2]=s,l=q+28|0,c=n[l>>2]|0,c>>>0<(n[q+32>>2]|0)>>>0?(n[B>>2]=m,n[B+4>>2]=f,n[d>>2]=n[B>>2],n[d+4>>2]=n[B+4>>2],b5(c,d,s),s=(n[l>>2]|0)+12|0,n[l>>2]=s):(VSe(M,k,Q),s=n[l>>2]|0),E=O,((s-(n[M>>2]|0)|0)/12|0)+-1|0}function b5(s,l,c){s=s|0,l=l|0,c=c|0;var f=0;f=n[l+4>>2]|0,n[s>>2]=n[l>>2],n[s+4>>2]=f,n[s+8>>2]=c}function VSe(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0,B=0,k=0,Q=0,M=0,O=0,q=0,se=0;if(M=E,E=E+48|0,f=M+32|0,B=M+24|0,k=M,Q=s+4|0,d=(((n[Q>>2]|0)-(n[s>>2]|0)|0)/12|0)+1|0,m=zSe(s)|0,m>>>0>>0)Jr(s);else{O=n[s>>2]|0,se=((n[s+8>>2]|0)-O|0)/12|0,q=se<<1,JSe(k,se>>>0>>1>>>0?q>>>0>>0?d:q:m,((n[Q>>2]|0)-O|0)/12|0,s+8|0),Q=k+8|0,m=n[Q>>2]|0,d=n[l+4>>2]|0,c=n[c>>2]|0,n[B>>2]=n[l>>2],n[B+4>>2]=d,n[f>>2]=n[B>>2],n[f+4>>2]=n[B+4>>2],b5(m,f,c),n[Q>>2]=(n[Q>>2]|0)+12,XSe(s,k),ZSe(k),E=M;return}}function zSe(s){return s=s|0,357913941}function JSe(s,l,c,f){s=s|0,l=l|0,c=c|0,f=f|0;var d=0;n[s+12>>2]=0,n[s+16>>2]=f;do if(l)if(l>>>0>357913941)Rt();else{d=Kt(l*12|0)|0;break}else d=0;while(0);n[s>>2]=d,f=d+(c*12|0)|0,n[s+8>>2]=f,n[s+4>>2]=f,n[s+12>>2]=d+(l*12|0)}function XSe(s,l){s=s|0,l=l|0;var c=0,f=0,d=0,m=0,B=0;f=n[s>>2]|0,B=s+4|0,m=l+4|0,d=(n[B>>2]|0)-f|0,c=(n[m>>2]|0)+(((d|0)/-12|0)*12|0)|0,n[m>>2]=c,(d|0)>0?(Dr(c|0,f|0,d|0)|0,f=m,c=n[m>>2]|0):f=m,m=n[s>>2]|0,n[s>>2]=c,n[f>>2]=m,m=l+8|0,d=n[B>>2]|0,n[B>>2]=n[m>>2],n[m>>2]=d,m=s+8|0,B=l+12|0,s=n[m>>2]|0,n[m>>2]=n[B>>2],n[B>>2]=s,n[l>>2]=n[f>>2]}function ZSe(s){s=s|0;var l=0,c=0,f=0;l=n[s+4>>2]|0,c=s+8|0,f=n[c>>2]|0,(f|0)!=(l|0)&&(n[c>>2]=f+(~(((f+-12-l|0)>>>0)/12|0)*12|0)),s=n[s>>2]|0,s|0&>(s)}function x5(s){s=s|0,tbe(s)}function $Se(s){s=s|0,ebe(s+24|0)}function ebe(s){s=s|0;var l=0,c=0,f=0;c=n[s>>2]|0,f=c,c|0&&(s=s+4|0,l=n[s>>2]|0,(l|0)!=(c|0)&&(n[s>>2]=l+(~(((l+-12-f|0)>>>0)/12|0)*12|0)),gt(c))}function tbe(s){s=s|0;var l=0;l=Kr()|0,Vr(s,2,1,l,rbe()|0,2),n[s+24>>2]=0,n[s+28>>2]=0,n[s+32>>2]=0}function rbe(){return 1212}function nbe(s,l,c,f){s=s|0,l=l|0,c=c|0,f=f|0;var d=0,m=0,B=0,k=0;d=E,E=E+16|0,m=d+8|0,B=d,k=ibe(s)|0,s=n[k+4>>2]|0,n[B>>2]=n[k>>2],n[B+4>>2]=s,n[m>>2]=n[B>>2],n[m+4>>2]=n[B+4>>2],sbe(l,m,c,f),E=d}function ibe(s){return s=s|0,(n[(YF()|0)+24>>2]|0)+(s*12|0)|0}function sbe(s,l,c,f){s=s|0,l=l|0,c=c|0,f=f|0;var d=0,m=0,B=0,k=0;k=E,E=E+16|0,m=k+1|0,B=k,d=n[l>>2]|0,l=n[l+4>>2]|0,s=s+(l>>1)|0,l&1&&(d=n[(n[s>>2]|0)+d>>2]|0),qF(m,c),m=GF(m,c)|0,Pg(B,f),B=Sg(B,f)|0,Uw[d&15](s,m,B),E=k}function obe(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0,B=0,k=0;f=E,E=E+16|0,d=f+8|0,m=f,k=n[c>>2]|0,B=n[c+4>>2]|0,c=pn(l)|0,n[m>>2]=k,n[m+4>>2]=B,n[d>>2]=n[m>>2],n[d+4>>2]=n[m+4>>2],abe(s,c,d,1),E=f}function abe(s,l,c,f){s=s|0,l=l|0,c=c|0,f=f|0;var d=0,m=0,B=0,k=0,Q=0,M=0,O=0;d=E,E=E+32|0,m=d+16|0,O=d+8|0,k=d,M=n[c>>2]|0,Q=n[c+4>>2]|0,B=n[s>>2]|0,s=WF()|0,n[O>>2]=M,n[O+4>>2]=Q,n[m>>2]=n[O>>2],n[m+4>>2]=n[O+4>>2],c=lbe(m)|0,n[k>>2]=M,n[k+4>>2]=Q,n[m>>2]=n[k>>2],n[m+4>>2]=n[k+4>>2],hn(B,l,s,c,cbe(m,f)|0,f),E=d}function WF(){var s=0,l=0;if(o[7704]|0||(Q5(9520),tr(34,9520,U|0)|0,l=7704,n[l>>2]=1,n[l+4>>2]=0),!(Tr(9520)|0)){s=9520,l=s+36|0;do n[s>>2]=0,s=s+4|0;while((s|0)<(l|0));Q5(9520)}return 9520}function lbe(s){return s=s|0,0}function cbe(s,l){s=s|0,l=l|0;var c=0,f=0,d=0,m=0,B=0,k=0,Q=0,M=0,O=0,q=0;return O=E,E=E+32|0,d=O+24|0,B=O+16|0,k=O,Q=O+8|0,m=n[s>>2]|0,f=n[s+4>>2]|0,n[k>>2]=m,n[k+4>>2]=f,q=WF()|0,M=q+24|0,s=gr(l,4)|0,n[Q>>2]=s,l=q+28|0,c=n[l>>2]|0,c>>>0<(n[q+32>>2]|0)>>>0?(n[B>>2]=m,n[B+4>>2]=f,n[d>>2]=n[B>>2],n[d+4>>2]=n[B+4>>2],k5(c,d,s),s=(n[l>>2]|0)+12|0,n[l>>2]=s):(ube(M,k,Q),s=n[l>>2]|0),E=O,((s-(n[M>>2]|0)|0)/12|0)+-1|0}function k5(s,l,c){s=s|0,l=l|0,c=c|0;var f=0;f=n[l+4>>2]|0,n[s>>2]=n[l>>2],n[s+4>>2]=f,n[s+8>>2]=c}function ube(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0,B=0,k=0,Q=0,M=0,O=0,q=0,se=0;if(M=E,E=E+48|0,f=M+32|0,B=M+24|0,k=M,Q=s+4|0,d=(((n[Q>>2]|0)-(n[s>>2]|0)|0)/12|0)+1|0,m=Abe(s)|0,m>>>0>>0)Jr(s);else{O=n[s>>2]|0,se=((n[s+8>>2]|0)-O|0)/12|0,q=se<<1,fbe(k,se>>>0>>1>>>0?q>>>0>>0?d:q:m,((n[Q>>2]|0)-O|0)/12|0,s+8|0),Q=k+8|0,m=n[Q>>2]|0,d=n[l+4>>2]|0,c=n[c>>2]|0,n[B>>2]=n[l>>2],n[B+4>>2]=d,n[f>>2]=n[B>>2],n[f+4>>2]=n[B+4>>2],k5(m,f,c),n[Q>>2]=(n[Q>>2]|0)+12,pbe(s,k),hbe(k),E=M;return}}function Abe(s){return s=s|0,357913941}function fbe(s,l,c,f){s=s|0,l=l|0,c=c|0,f=f|0;var d=0;n[s+12>>2]=0,n[s+16>>2]=f;do if(l)if(l>>>0>357913941)Rt();else{d=Kt(l*12|0)|0;break}else d=0;while(0);n[s>>2]=d,f=d+(c*12|0)|0,n[s+8>>2]=f,n[s+4>>2]=f,n[s+12>>2]=d+(l*12|0)}function pbe(s,l){s=s|0,l=l|0;var c=0,f=0,d=0,m=0,B=0;f=n[s>>2]|0,B=s+4|0,m=l+4|0,d=(n[B>>2]|0)-f|0,c=(n[m>>2]|0)+(((d|0)/-12|0)*12|0)|0,n[m>>2]=c,(d|0)>0?(Dr(c|0,f|0,d|0)|0,f=m,c=n[m>>2]|0):f=m,m=n[s>>2]|0,n[s>>2]=c,n[f>>2]=m,m=l+8|0,d=n[B>>2]|0,n[B>>2]=n[m>>2],n[m>>2]=d,m=s+8|0,B=l+12|0,s=n[m>>2]|0,n[m>>2]=n[B>>2],n[B>>2]=s,n[l>>2]=n[f>>2]}function hbe(s){s=s|0;var l=0,c=0,f=0;l=n[s+4>>2]|0,c=s+8|0,f=n[c>>2]|0,(f|0)!=(l|0)&&(n[c>>2]=f+(~(((f+-12-l|0)>>>0)/12|0)*12|0)),s=n[s>>2]|0,s|0&>(s)}function Q5(s){s=s|0,mbe(s)}function gbe(s){s=s|0,dbe(s+24|0)}function dbe(s){s=s|0;var l=0,c=0,f=0;c=n[s>>2]|0,f=c,c|0&&(s=s+4|0,l=n[s>>2]|0,(l|0)!=(c|0)&&(n[s>>2]=l+(~(((l+-12-f|0)>>>0)/12|0)*12|0)),gt(c))}function mbe(s){s=s|0;var l=0;l=Kr()|0,Vr(s,2,1,l,ybe()|0,1),n[s+24>>2]=0,n[s+28>>2]=0,n[s+32>>2]=0}function ybe(){return 1224}function Ebe(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0,B=0,k=0;return d=E,E=E+16|0,m=d+8|0,B=d,k=Cbe(s)|0,s=n[k+4>>2]|0,n[B>>2]=n[k>>2],n[B+4>>2]=s,n[m>>2]=n[B>>2],n[m+4>>2]=n[B+4>>2],f=+wbe(l,m,c),E=d,+f}function Cbe(s){return s=s|0,(n[(WF()|0)+24>>2]|0)+(s*12|0)|0}function wbe(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0,B=0;return m=E,E=E+16|0,d=m,f=n[l>>2]|0,l=n[l+4>>2]|0,s=s+(l>>1)|0,l&1&&(f=n[(n[s>>2]|0)+f>>2]|0),XA(d,c),d=ZA(d,c)|0,B=+bF(+b7[f&7](s,d)),E=m,+B}function Ibe(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0,B=0,k=0;f=E,E=E+16|0,d=f+8|0,m=f,k=n[c>>2]|0,B=n[c+4>>2]|0,c=pn(l)|0,n[m>>2]=k,n[m+4>>2]=B,n[d>>2]=n[m>>2],n[d+4>>2]=n[m+4>>2],Bbe(s,c,d,1),E=f}function Bbe(s,l,c,f){s=s|0,l=l|0,c=c|0,f=f|0;var d=0,m=0,B=0,k=0,Q=0,M=0,O=0;d=E,E=E+32|0,m=d+16|0,O=d+8|0,k=d,M=n[c>>2]|0,Q=n[c+4>>2]|0,B=n[s>>2]|0,s=KF()|0,n[O>>2]=M,n[O+4>>2]=Q,n[m>>2]=n[O>>2],n[m+4>>2]=n[O+4>>2],c=vbe(m)|0,n[k>>2]=M,n[k+4>>2]=Q,n[m>>2]=n[k>>2],n[m+4>>2]=n[k+4>>2],hn(B,l,s,c,Dbe(m,f)|0,f),E=d}function KF(){var s=0,l=0;if(o[7712]|0||(R5(9556),tr(35,9556,U|0)|0,l=7712,n[l>>2]=1,n[l+4>>2]=0),!(Tr(9556)|0)){s=9556,l=s+36|0;do n[s>>2]=0,s=s+4|0;while((s|0)<(l|0));R5(9556)}return 9556}function vbe(s){return s=s|0,0}function Dbe(s,l){s=s|0,l=l|0;var c=0,f=0,d=0,m=0,B=0,k=0,Q=0,M=0,O=0,q=0;return O=E,E=E+32|0,d=O+24|0,B=O+16|0,k=O,Q=O+8|0,m=n[s>>2]|0,f=n[s+4>>2]|0,n[k>>2]=m,n[k+4>>2]=f,q=KF()|0,M=q+24|0,s=gr(l,4)|0,n[Q>>2]=s,l=q+28|0,c=n[l>>2]|0,c>>>0<(n[q+32>>2]|0)>>>0?(n[B>>2]=m,n[B+4>>2]=f,n[d>>2]=n[B>>2],n[d+4>>2]=n[B+4>>2],F5(c,d,s),s=(n[l>>2]|0)+12|0,n[l>>2]=s):(Pbe(M,k,Q),s=n[l>>2]|0),E=O,((s-(n[M>>2]|0)|0)/12|0)+-1|0}function F5(s,l,c){s=s|0,l=l|0,c=c|0;var f=0;f=n[l+4>>2]|0,n[s>>2]=n[l>>2],n[s+4>>2]=f,n[s+8>>2]=c}function Pbe(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0,B=0,k=0,Q=0,M=0,O=0,q=0,se=0;if(M=E,E=E+48|0,f=M+32|0,B=M+24|0,k=M,Q=s+4|0,d=(((n[Q>>2]|0)-(n[s>>2]|0)|0)/12|0)+1|0,m=Sbe(s)|0,m>>>0>>0)Jr(s);else{O=n[s>>2]|0,se=((n[s+8>>2]|0)-O|0)/12|0,q=se<<1,bbe(k,se>>>0>>1>>>0?q>>>0>>0?d:q:m,((n[Q>>2]|0)-O|0)/12|0,s+8|0),Q=k+8|0,m=n[Q>>2]|0,d=n[l+4>>2]|0,c=n[c>>2]|0,n[B>>2]=n[l>>2],n[B+4>>2]=d,n[f>>2]=n[B>>2],n[f+4>>2]=n[B+4>>2],F5(m,f,c),n[Q>>2]=(n[Q>>2]|0)+12,xbe(s,k),kbe(k),E=M;return}}function Sbe(s){return s=s|0,357913941}function bbe(s,l,c,f){s=s|0,l=l|0,c=c|0,f=f|0;var d=0;n[s+12>>2]=0,n[s+16>>2]=f;do if(l)if(l>>>0>357913941)Rt();else{d=Kt(l*12|0)|0;break}else d=0;while(0);n[s>>2]=d,f=d+(c*12|0)|0,n[s+8>>2]=f,n[s+4>>2]=f,n[s+12>>2]=d+(l*12|0)}function xbe(s,l){s=s|0,l=l|0;var c=0,f=0,d=0,m=0,B=0;f=n[s>>2]|0,B=s+4|0,m=l+4|0,d=(n[B>>2]|0)-f|0,c=(n[m>>2]|0)+(((d|0)/-12|0)*12|0)|0,n[m>>2]=c,(d|0)>0?(Dr(c|0,f|0,d|0)|0,f=m,c=n[m>>2]|0):f=m,m=n[s>>2]|0,n[s>>2]=c,n[f>>2]=m,m=l+8|0,d=n[B>>2]|0,n[B>>2]=n[m>>2],n[m>>2]=d,m=s+8|0,B=l+12|0,s=n[m>>2]|0,n[m>>2]=n[B>>2],n[B>>2]=s,n[l>>2]=n[f>>2]}function kbe(s){s=s|0;var l=0,c=0,f=0;l=n[s+4>>2]|0,c=s+8|0,f=n[c>>2]|0,(f|0)!=(l|0)&&(n[c>>2]=f+(~(((f+-12-l|0)>>>0)/12|0)*12|0)),s=n[s>>2]|0,s|0&>(s)}function R5(s){s=s|0,Rbe(s)}function Qbe(s){s=s|0,Fbe(s+24|0)}function Fbe(s){s=s|0;var l=0,c=0,f=0;c=n[s>>2]|0,f=c,c|0&&(s=s+4|0,l=n[s>>2]|0,(l|0)!=(c|0)&&(n[s>>2]=l+(~(((l+-12-f|0)>>>0)/12|0)*12|0)),gt(c))}function Rbe(s){s=s|0;var l=0;l=Kr()|0,Vr(s,2,5,l,Tbe()|0,0),n[s+24>>2]=0,n[s+28>>2]=0,n[s+32>>2]=0}function Tbe(){return 1232}function Nbe(s,l){s=s|0,l=l|0;var c=0,f=0,d=0,m=0,B=0;return f=E,E=E+16|0,d=f+8|0,m=f,B=Lbe(s)|0,s=n[B+4>>2]|0,n[m>>2]=n[B>>2],n[m+4>>2]=s,n[d>>2]=n[m>>2],n[d+4>>2]=n[m+4>>2],c=+Obe(l,d),E=f,+c}function Lbe(s){return s=s|0,(n[(KF()|0)+24>>2]|0)+(s*12|0)|0}function Obe(s,l){s=s|0,l=l|0;var c=0;return c=n[l>>2]|0,l=n[l+4>>2]|0,s=s+(l>>1)|0,l&1&&(c=n[(n[s>>2]|0)+c>>2]|0),+ +bF(+S7[c&15](s))}function Mbe(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0,B=0,k=0;f=E,E=E+16|0,d=f+8|0,m=f,k=n[c>>2]|0,B=n[c+4>>2]|0,c=pn(l)|0,n[m>>2]=k,n[m+4>>2]=B,n[d>>2]=n[m>>2],n[d+4>>2]=n[m+4>>2],Ube(s,c,d,1),E=f}function Ube(s,l,c,f){s=s|0,l=l|0,c=c|0,f=f|0;var d=0,m=0,B=0,k=0,Q=0,M=0,O=0;d=E,E=E+32|0,m=d+16|0,O=d+8|0,k=d,M=n[c>>2]|0,Q=n[c+4>>2]|0,B=n[s>>2]|0,s=VF()|0,n[O>>2]=M,n[O+4>>2]=Q,n[m>>2]=n[O>>2],n[m+4>>2]=n[O+4>>2],c=_be(m)|0,n[k>>2]=M,n[k+4>>2]=Q,n[m>>2]=n[k>>2],n[m+4>>2]=n[k+4>>2],hn(B,l,s,c,Hbe(m,f)|0,f),E=d}function VF(){var s=0,l=0;if(o[7720]|0||(N5(9592),tr(36,9592,U|0)|0,l=7720,n[l>>2]=1,n[l+4>>2]=0),!(Tr(9592)|0)){s=9592,l=s+36|0;do n[s>>2]=0,s=s+4|0;while((s|0)<(l|0));N5(9592)}return 9592}function _be(s){return s=s|0,0}function Hbe(s,l){s=s|0,l=l|0;var c=0,f=0,d=0,m=0,B=0,k=0,Q=0,M=0,O=0,q=0;return O=E,E=E+32|0,d=O+24|0,B=O+16|0,k=O,Q=O+8|0,m=n[s>>2]|0,f=n[s+4>>2]|0,n[k>>2]=m,n[k+4>>2]=f,q=VF()|0,M=q+24|0,s=gr(l,4)|0,n[Q>>2]=s,l=q+28|0,c=n[l>>2]|0,c>>>0<(n[q+32>>2]|0)>>>0?(n[B>>2]=m,n[B+4>>2]=f,n[d>>2]=n[B>>2],n[d+4>>2]=n[B+4>>2],T5(c,d,s),s=(n[l>>2]|0)+12|0,n[l>>2]=s):(jbe(M,k,Q),s=n[l>>2]|0),E=O,((s-(n[M>>2]|0)|0)/12|0)+-1|0}function T5(s,l,c){s=s|0,l=l|0,c=c|0;var f=0;f=n[l+4>>2]|0,n[s>>2]=n[l>>2],n[s+4>>2]=f,n[s+8>>2]=c}function jbe(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0,B=0,k=0,Q=0,M=0,O=0,q=0,se=0;if(M=E,E=E+48|0,f=M+32|0,B=M+24|0,k=M,Q=s+4|0,d=(((n[Q>>2]|0)-(n[s>>2]|0)|0)/12|0)+1|0,m=qbe(s)|0,m>>>0>>0)Jr(s);else{O=n[s>>2]|0,se=((n[s+8>>2]|0)-O|0)/12|0,q=se<<1,Gbe(k,se>>>0>>1>>>0?q>>>0>>0?d:q:m,((n[Q>>2]|0)-O|0)/12|0,s+8|0),Q=k+8|0,m=n[Q>>2]|0,d=n[l+4>>2]|0,c=n[c>>2]|0,n[B>>2]=n[l>>2],n[B+4>>2]=d,n[f>>2]=n[B>>2],n[f+4>>2]=n[B+4>>2],T5(m,f,c),n[Q>>2]=(n[Q>>2]|0)+12,Ybe(s,k),Wbe(k),E=M;return}}function qbe(s){return s=s|0,357913941}function Gbe(s,l,c,f){s=s|0,l=l|0,c=c|0,f=f|0;var d=0;n[s+12>>2]=0,n[s+16>>2]=f;do if(l)if(l>>>0>357913941)Rt();else{d=Kt(l*12|0)|0;break}else d=0;while(0);n[s>>2]=d,f=d+(c*12|0)|0,n[s+8>>2]=f,n[s+4>>2]=f,n[s+12>>2]=d+(l*12|0)}function Ybe(s,l){s=s|0,l=l|0;var c=0,f=0,d=0,m=0,B=0;f=n[s>>2]|0,B=s+4|0,m=l+4|0,d=(n[B>>2]|0)-f|0,c=(n[m>>2]|0)+(((d|0)/-12|0)*12|0)|0,n[m>>2]=c,(d|0)>0?(Dr(c|0,f|0,d|0)|0,f=m,c=n[m>>2]|0):f=m,m=n[s>>2]|0,n[s>>2]=c,n[f>>2]=m,m=l+8|0,d=n[B>>2]|0,n[B>>2]=n[m>>2],n[m>>2]=d,m=s+8|0,B=l+12|0,s=n[m>>2]|0,n[m>>2]=n[B>>2],n[B>>2]=s,n[l>>2]=n[f>>2]}function Wbe(s){s=s|0;var l=0,c=0,f=0;l=n[s+4>>2]|0,c=s+8|0,f=n[c>>2]|0,(f|0)!=(l|0)&&(n[c>>2]=f+(~(((f+-12-l|0)>>>0)/12|0)*12|0)),s=n[s>>2]|0,s|0&>(s)}function N5(s){s=s|0,zbe(s)}function Kbe(s){s=s|0,Vbe(s+24|0)}function Vbe(s){s=s|0;var l=0,c=0,f=0;c=n[s>>2]|0,f=c,c|0&&(s=s+4|0,l=n[s>>2]|0,(l|0)!=(c|0)&&(n[s>>2]=l+(~(((l+-12-f|0)>>>0)/12|0)*12|0)),gt(c))}function zbe(s){s=s|0;var l=0;l=Kr()|0,Vr(s,2,7,l,Jbe()|0,0),n[s+24>>2]=0,n[s+28>>2]=0,n[s+32>>2]=0}function Jbe(){return 1276}function Xbe(s,l){s=s|0,l=l|0;var c=0,f=0,d=0,m=0;return c=E,E=E+16|0,f=c+8|0,d=c,m=Zbe(s)|0,s=n[m+4>>2]|0,n[d>>2]=n[m>>2],n[d+4>>2]=s,n[f>>2]=n[d>>2],n[f+4>>2]=n[d+4>>2],l=$be(l,f)|0,E=c,l|0}function Zbe(s){return s=s|0,(n[(VF()|0)+24>>2]|0)+(s*12|0)|0}function $be(s,l){s=s|0,l=l|0;var c=0,f=0,d=0;return d=E,E=E+16|0,f=d,c=n[l>>2]|0,l=n[l+4>>2]|0,s=s+(l>>1)|0,l&1&&(c=n[(n[s>>2]|0)+c>>2]|0),tf[c&31](f,s),f=L5(f)|0,E=d,f|0}function L5(s){s=s|0;var l=0,c=0,f=0,d=0;return d=E,E=E+32|0,l=d+12|0,c=d,f=QF(O5()|0)|0,f?(FF(l,f),RF(c,l),exe(s,c),s=TF(l)|0):s=txe(s)|0,E=d,s|0}function O5(){var s=0;return o[7736]|0||(Axe(9640),tr(25,9640,U|0)|0,s=7736,n[s>>2]=1,n[s+4>>2]=0),9640}function exe(s,l){s=s|0,l=l|0,sxe(l,s,s+8|0)|0}function txe(s){s=s|0;var l=0,c=0,f=0,d=0,m=0,B=0,k=0;return c=E,E=E+16|0,d=c+4|0,B=c,f=Wa(8)|0,l=f,k=Kt(16)|0,n[k>>2]=n[s>>2],n[k+4>>2]=n[s+4>>2],n[k+8>>2]=n[s+8>>2],n[k+12>>2]=n[s+12>>2],m=l+4|0,n[m>>2]=k,s=Kt(8)|0,m=n[m>>2]|0,n[B>>2]=0,n[d>>2]=n[B>>2],zF(s,m,d),n[f>>2]=s,E=c,l|0}function zF(s,l,c){s=s|0,l=l|0,c=c|0,n[s>>2]=l,c=Kt(16)|0,n[c+4>>2]=0,n[c+8>>2]=0,n[c>>2]=1244,n[c+12>>2]=l,n[s+4>>2]=c}function rxe(s){s=s|0,Vm(s),gt(s)}function nxe(s){s=s|0,s=n[s+12>>2]|0,s|0&>(s)}function ixe(s){s=s|0,gt(s)}function sxe(s,l,c){return s=s|0,l=l|0,c=c|0,l=oxe(n[s>>2]|0,l,c)|0,c=s+4|0,n[(n[c>>2]|0)+8>>2]=l,n[(n[c>>2]|0)+8>>2]|0}function oxe(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0;return f=E,E=E+16|0,d=f,Ka(d),s=da(s)|0,c=axe(s,n[l>>2]|0,+C[c>>3])|0,Va(d),E=f,c|0}function axe(s,l,c){s=s|0,l=l|0,c=+c;var f=0;return f=Pl(lxe()|0)|0,l=SF(l)|0,ml(0,f|0,s|0,l|0,+ +VA(c))|0}function lxe(){var s=0;return o[7728]|0||(cxe(9628),s=7728,n[s>>2]=1,n[s+4>>2]=0),9628}function cxe(s){s=s|0,Sl(s,uxe()|0,2)}function uxe(){return 1264}function Axe(s){s=s|0,Ip(s)}function fxe(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0,B=0,k=0;f=E,E=E+16|0,d=f+8|0,m=f,k=n[c>>2]|0,B=n[c+4>>2]|0,c=pn(l)|0,n[m>>2]=k,n[m+4>>2]=B,n[d>>2]=n[m>>2],n[d+4>>2]=n[m+4>>2],pxe(s,c,d,1),E=f}function pxe(s,l,c,f){s=s|0,l=l|0,c=c|0,f=f|0;var d=0,m=0,B=0,k=0,Q=0,M=0,O=0;d=E,E=E+32|0,m=d+16|0,O=d+8|0,k=d,M=n[c>>2]|0,Q=n[c+4>>2]|0,B=n[s>>2]|0,s=JF()|0,n[O>>2]=M,n[O+4>>2]=Q,n[m>>2]=n[O>>2],n[m+4>>2]=n[O+4>>2],c=hxe(m)|0,n[k>>2]=M,n[k+4>>2]=Q,n[m>>2]=n[k>>2],n[m+4>>2]=n[k+4>>2],hn(B,l,s,c,gxe(m,f)|0,f),E=d}function JF(){var s=0,l=0;if(o[7744]|0||(U5(9684),tr(37,9684,U|0)|0,l=7744,n[l>>2]=1,n[l+4>>2]=0),!(Tr(9684)|0)){s=9684,l=s+36|0;do n[s>>2]=0,s=s+4|0;while((s|0)<(l|0));U5(9684)}return 9684}function hxe(s){return s=s|0,0}function gxe(s,l){s=s|0,l=l|0;var c=0,f=0,d=0,m=0,B=0,k=0,Q=0,M=0,O=0,q=0;return O=E,E=E+32|0,d=O+24|0,B=O+16|0,k=O,Q=O+8|0,m=n[s>>2]|0,f=n[s+4>>2]|0,n[k>>2]=m,n[k+4>>2]=f,q=JF()|0,M=q+24|0,s=gr(l,4)|0,n[Q>>2]=s,l=q+28|0,c=n[l>>2]|0,c>>>0<(n[q+32>>2]|0)>>>0?(n[B>>2]=m,n[B+4>>2]=f,n[d>>2]=n[B>>2],n[d+4>>2]=n[B+4>>2],M5(c,d,s),s=(n[l>>2]|0)+12|0,n[l>>2]=s):(dxe(M,k,Q),s=n[l>>2]|0),E=O,((s-(n[M>>2]|0)|0)/12|0)+-1|0}function M5(s,l,c){s=s|0,l=l|0,c=c|0;var f=0;f=n[l+4>>2]|0,n[s>>2]=n[l>>2],n[s+4>>2]=f,n[s+8>>2]=c}function dxe(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0,B=0,k=0,Q=0,M=0,O=0,q=0,se=0;if(M=E,E=E+48|0,f=M+32|0,B=M+24|0,k=M,Q=s+4|0,d=(((n[Q>>2]|0)-(n[s>>2]|0)|0)/12|0)+1|0,m=mxe(s)|0,m>>>0>>0)Jr(s);else{O=n[s>>2]|0,se=((n[s+8>>2]|0)-O|0)/12|0,q=se<<1,yxe(k,se>>>0>>1>>>0?q>>>0>>0?d:q:m,((n[Q>>2]|0)-O|0)/12|0,s+8|0),Q=k+8|0,m=n[Q>>2]|0,d=n[l+4>>2]|0,c=n[c>>2]|0,n[B>>2]=n[l>>2],n[B+4>>2]=d,n[f>>2]=n[B>>2],n[f+4>>2]=n[B+4>>2],M5(m,f,c),n[Q>>2]=(n[Q>>2]|0)+12,Exe(s,k),Cxe(k),E=M;return}}function mxe(s){return s=s|0,357913941}function yxe(s,l,c,f){s=s|0,l=l|0,c=c|0,f=f|0;var d=0;n[s+12>>2]=0,n[s+16>>2]=f;do if(l)if(l>>>0>357913941)Rt();else{d=Kt(l*12|0)|0;break}else d=0;while(0);n[s>>2]=d,f=d+(c*12|0)|0,n[s+8>>2]=f,n[s+4>>2]=f,n[s+12>>2]=d+(l*12|0)}function Exe(s,l){s=s|0,l=l|0;var c=0,f=0,d=0,m=0,B=0;f=n[s>>2]|0,B=s+4|0,m=l+4|0,d=(n[B>>2]|0)-f|0,c=(n[m>>2]|0)+(((d|0)/-12|0)*12|0)|0,n[m>>2]=c,(d|0)>0?(Dr(c|0,f|0,d|0)|0,f=m,c=n[m>>2]|0):f=m,m=n[s>>2]|0,n[s>>2]=c,n[f>>2]=m,m=l+8|0,d=n[B>>2]|0,n[B>>2]=n[m>>2],n[m>>2]=d,m=s+8|0,B=l+12|0,s=n[m>>2]|0,n[m>>2]=n[B>>2],n[B>>2]=s,n[l>>2]=n[f>>2]}function Cxe(s){s=s|0;var l=0,c=0,f=0;l=n[s+4>>2]|0,c=s+8|0,f=n[c>>2]|0,(f|0)!=(l|0)&&(n[c>>2]=f+(~(((f+-12-l|0)>>>0)/12|0)*12|0)),s=n[s>>2]|0,s|0&>(s)}function U5(s){s=s|0,Bxe(s)}function wxe(s){s=s|0,Ixe(s+24|0)}function Ixe(s){s=s|0;var l=0,c=0,f=0;c=n[s>>2]|0,f=c,c|0&&(s=s+4|0,l=n[s>>2]|0,(l|0)!=(c|0)&&(n[s>>2]=l+(~(((l+-12-f|0)>>>0)/12|0)*12|0)),gt(c))}function Bxe(s){s=s|0;var l=0;l=Kr()|0,Vr(s,2,5,l,vxe()|0,1),n[s+24>>2]=0,n[s+28>>2]=0,n[s+32>>2]=0}function vxe(){return 1280}function Dxe(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0,B=0;return f=E,E=E+16|0,d=f+8|0,m=f,B=Pxe(s)|0,s=n[B+4>>2]|0,n[m>>2]=n[B>>2],n[m+4>>2]=s,n[d>>2]=n[m>>2],n[d+4>>2]=n[m+4>>2],c=Sxe(l,d,c)|0,E=f,c|0}function Pxe(s){return s=s|0,(n[(JF()|0)+24>>2]|0)+(s*12|0)|0}function Sxe(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0,B=0;return B=E,E=E+32|0,d=B,m=B+16|0,f=n[l>>2]|0,l=n[l+4>>2]|0,s=s+(l>>1)|0,l&1&&(f=n[(n[s>>2]|0)+f>>2]|0),XA(m,c),m=ZA(m,c)|0,Uw[f&15](d,s,m),m=L5(d)|0,E=B,m|0}function bxe(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0,B=0,k=0;f=E,E=E+16|0,d=f+8|0,m=f,k=n[c>>2]|0,B=n[c+4>>2]|0,c=pn(l)|0,n[m>>2]=k,n[m+4>>2]=B,n[d>>2]=n[m>>2],n[d+4>>2]=n[m+4>>2],xxe(s,c,d,1),E=f}function xxe(s,l,c,f){s=s|0,l=l|0,c=c|0,f=f|0;var d=0,m=0,B=0,k=0,Q=0,M=0,O=0;d=E,E=E+32|0,m=d+16|0,O=d+8|0,k=d,M=n[c>>2]|0,Q=n[c+4>>2]|0,B=n[s>>2]|0,s=XF()|0,n[O>>2]=M,n[O+4>>2]=Q,n[m>>2]=n[O>>2],n[m+4>>2]=n[O+4>>2],c=kxe(m)|0,n[k>>2]=M,n[k+4>>2]=Q,n[m>>2]=n[k>>2],n[m+4>>2]=n[k+4>>2],hn(B,l,s,c,Qxe(m,f)|0,f),E=d}function XF(){var s=0,l=0;if(o[7752]|0||(H5(9720),tr(38,9720,U|0)|0,l=7752,n[l>>2]=1,n[l+4>>2]=0),!(Tr(9720)|0)){s=9720,l=s+36|0;do n[s>>2]=0,s=s+4|0;while((s|0)<(l|0));H5(9720)}return 9720}function kxe(s){return s=s|0,0}function Qxe(s,l){s=s|0,l=l|0;var c=0,f=0,d=0,m=0,B=0,k=0,Q=0,M=0,O=0,q=0;return O=E,E=E+32|0,d=O+24|0,B=O+16|0,k=O,Q=O+8|0,m=n[s>>2]|0,f=n[s+4>>2]|0,n[k>>2]=m,n[k+4>>2]=f,q=XF()|0,M=q+24|0,s=gr(l,4)|0,n[Q>>2]=s,l=q+28|0,c=n[l>>2]|0,c>>>0<(n[q+32>>2]|0)>>>0?(n[B>>2]=m,n[B+4>>2]=f,n[d>>2]=n[B>>2],n[d+4>>2]=n[B+4>>2],_5(c,d,s),s=(n[l>>2]|0)+12|0,n[l>>2]=s):(Fxe(M,k,Q),s=n[l>>2]|0),E=O,((s-(n[M>>2]|0)|0)/12|0)+-1|0}function _5(s,l,c){s=s|0,l=l|0,c=c|0;var f=0;f=n[l+4>>2]|0,n[s>>2]=n[l>>2],n[s+4>>2]=f,n[s+8>>2]=c}function Fxe(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0,B=0,k=0,Q=0,M=0,O=0,q=0,se=0;if(M=E,E=E+48|0,f=M+32|0,B=M+24|0,k=M,Q=s+4|0,d=(((n[Q>>2]|0)-(n[s>>2]|0)|0)/12|0)+1|0,m=Rxe(s)|0,m>>>0>>0)Jr(s);else{O=n[s>>2]|0,se=((n[s+8>>2]|0)-O|0)/12|0,q=se<<1,Txe(k,se>>>0>>1>>>0?q>>>0>>0?d:q:m,((n[Q>>2]|0)-O|0)/12|0,s+8|0),Q=k+8|0,m=n[Q>>2]|0,d=n[l+4>>2]|0,c=n[c>>2]|0,n[B>>2]=n[l>>2],n[B+4>>2]=d,n[f>>2]=n[B>>2],n[f+4>>2]=n[B+4>>2],_5(m,f,c),n[Q>>2]=(n[Q>>2]|0)+12,Nxe(s,k),Lxe(k),E=M;return}}function Rxe(s){return s=s|0,357913941}function Txe(s,l,c,f){s=s|0,l=l|0,c=c|0,f=f|0;var d=0;n[s+12>>2]=0,n[s+16>>2]=f;do if(l)if(l>>>0>357913941)Rt();else{d=Kt(l*12|0)|0;break}else d=0;while(0);n[s>>2]=d,f=d+(c*12|0)|0,n[s+8>>2]=f,n[s+4>>2]=f,n[s+12>>2]=d+(l*12|0)}function Nxe(s,l){s=s|0,l=l|0;var c=0,f=0,d=0,m=0,B=0;f=n[s>>2]|0,B=s+4|0,m=l+4|0,d=(n[B>>2]|0)-f|0,c=(n[m>>2]|0)+(((d|0)/-12|0)*12|0)|0,n[m>>2]=c,(d|0)>0?(Dr(c|0,f|0,d|0)|0,f=m,c=n[m>>2]|0):f=m,m=n[s>>2]|0,n[s>>2]=c,n[f>>2]=m,m=l+8|0,d=n[B>>2]|0,n[B>>2]=n[m>>2],n[m>>2]=d,m=s+8|0,B=l+12|0,s=n[m>>2]|0,n[m>>2]=n[B>>2],n[B>>2]=s,n[l>>2]=n[f>>2]}function Lxe(s){s=s|0;var l=0,c=0,f=0;l=n[s+4>>2]|0,c=s+8|0,f=n[c>>2]|0,(f|0)!=(l|0)&&(n[c>>2]=f+(~(((f+-12-l|0)>>>0)/12|0)*12|0)),s=n[s>>2]|0,s|0&>(s)}function H5(s){s=s|0,Uxe(s)}function Oxe(s){s=s|0,Mxe(s+24|0)}function Mxe(s){s=s|0;var l=0,c=0,f=0;c=n[s>>2]|0,f=c,c|0&&(s=s+4|0,l=n[s>>2]|0,(l|0)!=(c|0)&&(n[s>>2]=l+(~(((l+-12-f|0)>>>0)/12|0)*12|0)),gt(c))}function Uxe(s){s=s|0;var l=0;l=Kr()|0,Vr(s,2,8,l,_xe()|0,0),n[s+24>>2]=0,n[s+28>>2]=0,n[s+32>>2]=0}function _xe(){return 1288}function Hxe(s,l){s=s|0,l=l|0;var c=0,f=0,d=0,m=0;return c=E,E=E+16|0,f=c+8|0,d=c,m=jxe(s)|0,s=n[m+4>>2]|0,n[d>>2]=n[m>>2],n[d+4>>2]=s,n[f>>2]=n[d>>2],n[f+4>>2]=n[d+4>>2],l=qxe(l,f)|0,E=c,l|0}function jxe(s){return s=s|0,(n[(XF()|0)+24>>2]|0)+(s*12|0)|0}function qxe(s,l){s=s|0,l=l|0;var c=0;return c=n[l>>2]|0,l=n[l+4>>2]|0,s=s+(l>>1)|0,l&1&&(c=n[(n[s>>2]|0)+c>>2]|0),r5(Tg[c&31](s)|0)|0}function Gxe(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0,B=0,k=0;f=E,E=E+16|0,d=f+8|0,m=f,k=n[c>>2]|0,B=n[c+4>>2]|0,c=pn(l)|0,n[m>>2]=k,n[m+4>>2]=B,n[d>>2]=n[m>>2],n[d+4>>2]=n[m+4>>2],Yxe(s,c,d,0),E=f}function Yxe(s,l,c,f){s=s|0,l=l|0,c=c|0,f=f|0;var d=0,m=0,B=0,k=0,Q=0,M=0,O=0;d=E,E=E+32|0,m=d+16|0,O=d+8|0,k=d,M=n[c>>2]|0,Q=n[c+4>>2]|0,B=n[s>>2]|0,s=ZF()|0,n[O>>2]=M,n[O+4>>2]=Q,n[m>>2]=n[O>>2],n[m+4>>2]=n[O+4>>2],c=Wxe(m)|0,n[k>>2]=M,n[k+4>>2]=Q,n[m>>2]=n[k>>2],n[m+4>>2]=n[k+4>>2],hn(B,l,s,c,Kxe(m,f)|0,f),E=d}function ZF(){var s=0,l=0;if(o[7760]|0||(q5(9756),tr(39,9756,U|0)|0,l=7760,n[l>>2]=1,n[l+4>>2]=0),!(Tr(9756)|0)){s=9756,l=s+36|0;do n[s>>2]=0,s=s+4|0;while((s|0)<(l|0));q5(9756)}return 9756}function Wxe(s){return s=s|0,0}function Kxe(s,l){s=s|0,l=l|0;var c=0,f=0,d=0,m=0,B=0,k=0,Q=0,M=0,O=0,q=0;return O=E,E=E+32|0,d=O+24|0,B=O+16|0,k=O,Q=O+8|0,m=n[s>>2]|0,f=n[s+4>>2]|0,n[k>>2]=m,n[k+4>>2]=f,q=ZF()|0,M=q+24|0,s=gr(l,4)|0,n[Q>>2]=s,l=q+28|0,c=n[l>>2]|0,c>>>0<(n[q+32>>2]|0)>>>0?(n[B>>2]=m,n[B+4>>2]=f,n[d>>2]=n[B>>2],n[d+4>>2]=n[B+4>>2],j5(c,d,s),s=(n[l>>2]|0)+12|0,n[l>>2]=s):(Vxe(M,k,Q),s=n[l>>2]|0),E=O,((s-(n[M>>2]|0)|0)/12|0)+-1|0}function j5(s,l,c){s=s|0,l=l|0,c=c|0;var f=0;f=n[l+4>>2]|0,n[s>>2]=n[l>>2],n[s+4>>2]=f,n[s+8>>2]=c}function Vxe(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0,B=0,k=0,Q=0,M=0,O=0,q=0,se=0;if(M=E,E=E+48|0,f=M+32|0,B=M+24|0,k=M,Q=s+4|0,d=(((n[Q>>2]|0)-(n[s>>2]|0)|0)/12|0)+1|0,m=zxe(s)|0,m>>>0>>0)Jr(s);else{O=n[s>>2]|0,se=((n[s+8>>2]|0)-O|0)/12|0,q=se<<1,Jxe(k,se>>>0>>1>>>0?q>>>0>>0?d:q:m,((n[Q>>2]|0)-O|0)/12|0,s+8|0),Q=k+8|0,m=n[Q>>2]|0,d=n[l+4>>2]|0,c=n[c>>2]|0,n[B>>2]=n[l>>2],n[B+4>>2]=d,n[f>>2]=n[B>>2],n[f+4>>2]=n[B+4>>2],j5(m,f,c),n[Q>>2]=(n[Q>>2]|0)+12,Xxe(s,k),Zxe(k),E=M;return}}function zxe(s){return s=s|0,357913941}function Jxe(s,l,c,f){s=s|0,l=l|0,c=c|0,f=f|0;var d=0;n[s+12>>2]=0,n[s+16>>2]=f;do if(l)if(l>>>0>357913941)Rt();else{d=Kt(l*12|0)|0;break}else d=0;while(0);n[s>>2]=d,f=d+(c*12|0)|0,n[s+8>>2]=f,n[s+4>>2]=f,n[s+12>>2]=d+(l*12|0)}function Xxe(s,l){s=s|0,l=l|0;var c=0,f=0,d=0,m=0,B=0;f=n[s>>2]|0,B=s+4|0,m=l+4|0,d=(n[B>>2]|0)-f|0,c=(n[m>>2]|0)+(((d|0)/-12|0)*12|0)|0,n[m>>2]=c,(d|0)>0?(Dr(c|0,f|0,d|0)|0,f=m,c=n[m>>2]|0):f=m,m=n[s>>2]|0,n[s>>2]=c,n[f>>2]=m,m=l+8|0,d=n[B>>2]|0,n[B>>2]=n[m>>2],n[m>>2]=d,m=s+8|0,B=l+12|0,s=n[m>>2]|0,n[m>>2]=n[B>>2],n[B>>2]=s,n[l>>2]=n[f>>2]}function Zxe(s){s=s|0;var l=0,c=0,f=0;l=n[s+4>>2]|0,c=s+8|0,f=n[c>>2]|0,(f|0)!=(l|0)&&(n[c>>2]=f+(~(((f+-12-l|0)>>>0)/12|0)*12|0)),s=n[s>>2]|0,s|0&>(s)}function q5(s){s=s|0,tke(s)}function $xe(s){s=s|0,eke(s+24|0)}function eke(s){s=s|0;var l=0,c=0,f=0;c=n[s>>2]|0,f=c,c|0&&(s=s+4|0,l=n[s>>2]|0,(l|0)!=(c|0)&&(n[s>>2]=l+(~(((l+-12-f|0)>>>0)/12|0)*12|0)),gt(c))}function tke(s){s=s|0;var l=0;l=Kr()|0,Vr(s,2,8,l,rke()|0,1),n[s+24>>2]=0,n[s+28>>2]=0,n[s+32>>2]=0}function rke(){return 1292}function nke(s,l,c){s=s|0,l=l|0,c=+c;var f=0,d=0,m=0,B=0;f=E,E=E+16|0,d=f+8|0,m=f,B=ike(s)|0,s=n[B+4>>2]|0,n[m>>2]=n[B>>2],n[m+4>>2]=s,n[d>>2]=n[m>>2],n[d+4>>2]=n[m+4>>2],ske(l,d,c),E=f}function ike(s){return s=s|0,(n[(ZF()|0)+24>>2]|0)+(s*12|0)|0}function ske(s,l,c){s=s|0,l=l|0,c=+c;var f=0,d=0,m=0;m=E,E=E+16|0,d=m,f=n[l>>2]|0,l=n[l+4>>2]|0,s=s+(l>>1)|0,l&1&&(f=n[(n[s>>2]|0)+f>>2]|0),ku(d,c),c=+Qu(d,c),v7[f&31](s,c),E=m}function oke(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0,B=0,k=0;f=E,E=E+16|0,d=f+8|0,m=f,k=n[c>>2]|0,B=n[c+4>>2]|0,c=pn(l)|0,n[m>>2]=k,n[m+4>>2]=B,n[d>>2]=n[m>>2],n[d+4>>2]=n[m+4>>2],ake(s,c,d,0),E=f}function ake(s,l,c,f){s=s|0,l=l|0,c=c|0,f=f|0;var d=0,m=0,B=0,k=0,Q=0,M=0,O=0;d=E,E=E+32|0,m=d+16|0,O=d+8|0,k=d,M=n[c>>2]|0,Q=n[c+4>>2]|0,B=n[s>>2]|0,s=$F()|0,n[O>>2]=M,n[O+4>>2]=Q,n[m>>2]=n[O>>2],n[m+4>>2]=n[O+4>>2],c=lke(m)|0,n[k>>2]=M,n[k+4>>2]=Q,n[m>>2]=n[k>>2],n[m+4>>2]=n[k+4>>2],hn(B,l,s,c,cke(m,f)|0,f),E=d}function $F(){var s=0,l=0;if(o[7768]|0||(Y5(9792),tr(40,9792,U|0)|0,l=7768,n[l>>2]=1,n[l+4>>2]=0),!(Tr(9792)|0)){s=9792,l=s+36|0;do n[s>>2]=0,s=s+4|0;while((s|0)<(l|0));Y5(9792)}return 9792}function lke(s){return s=s|0,0}function cke(s,l){s=s|0,l=l|0;var c=0,f=0,d=0,m=0,B=0,k=0,Q=0,M=0,O=0,q=0;return O=E,E=E+32|0,d=O+24|0,B=O+16|0,k=O,Q=O+8|0,m=n[s>>2]|0,f=n[s+4>>2]|0,n[k>>2]=m,n[k+4>>2]=f,q=$F()|0,M=q+24|0,s=gr(l,4)|0,n[Q>>2]=s,l=q+28|0,c=n[l>>2]|0,c>>>0<(n[q+32>>2]|0)>>>0?(n[B>>2]=m,n[B+4>>2]=f,n[d>>2]=n[B>>2],n[d+4>>2]=n[B+4>>2],G5(c,d,s),s=(n[l>>2]|0)+12|0,n[l>>2]=s):(uke(M,k,Q),s=n[l>>2]|0),E=O,((s-(n[M>>2]|0)|0)/12|0)+-1|0}function G5(s,l,c){s=s|0,l=l|0,c=c|0;var f=0;f=n[l+4>>2]|0,n[s>>2]=n[l>>2],n[s+4>>2]=f,n[s+8>>2]=c}function uke(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0,B=0,k=0,Q=0,M=0,O=0,q=0,se=0;if(M=E,E=E+48|0,f=M+32|0,B=M+24|0,k=M,Q=s+4|0,d=(((n[Q>>2]|0)-(n[s>>2]|0)|0)/12|0)+1|0,m=Ake(s)|0,m>>>0>>0)Jr(s);else{O=n[s>>2]|0,se=((n[s+8>>2]|0)-O|0)/12|0,q=se<<1,fke(k,se>>>0>>1>>>0?q>>>0>>0?d:q:m,((n[Q>>2]|0)-O|0)/12|0,s+8|0),Q=k+8|0,m=n[Q>>2]|0,d=n[l+4>>2]|0,c=n[c>>2]|0,n[B>>2]=n[l>>2],n[B+4>>2]=d,n[f>>2]=n[B>>2],n[f+4>>2]=n[B+4>>2],G5(m,f,c),n[Q>>2]=(n[Q>>2]|0)+12,pke(s,k),hke(k),E=M;return}}function Ake(s){return s=s|0,357913941}function fke(s,l,c,f){s=s|0,l=l|0,c=c|0,f=f|0;var d=0;n[s+12>>2]=0,n[s+16>>2]=f;do if(l)if(l>>>0>357913941)Rt();else{d=Kt(l*12|0)|0;break}else d=0;while(0);n[s>>2]=d,f=d+(c*12|0)|0,n[s+8>>2]=f,n[s+4>>2]=f,n[s+12>>2]=d+(l*12|0)}function pke(s,l){s=s|0,l=l|0;var c=0,f=0,d=0,m=0,B=0;f=n[s>>2]|0,B=s+4|0,m=l+4|0,d=(n[B>>2]|0)-f|0,c=(n[m>>2]|0)+(((d|0)/-12|0)*12|0)|0,n[m>>2]=c,(d|0)>0?(Dr(c|0,f|0,d|0)|0,f=m,c=n[m>>2]|0):f=m,m=n[s>>2]|0,n[s>>2]=c,n[f>>2]=m,m=l+8|0,d=n[B>>2]|0,n[B>>2]=n[m>>2],n[m>>2]=d,m=s+8|0,B=l+12|0,s=n[m>>2]|0,n[m>>2]=n[B>>2],n[B>>2]=s,n[l>>2]=n[f>>2]}function hke(s){s=s|0;var l=0,c=0,f=0;l=n[s+4>>2]|0,c=s+8|0,f=n[c>>2]|0,(f|0)!=(l|0)&&(n[c>>2]=f+(~(((f+-12-l|0)>>>0)/12|0)*12|0)),s=n[s>>2]|0,s|0&>(s)}function Y5(s){s=s|0,mke(s)}function gke(s){s=s|0,dke(s+24|0)}function dke(s){s=s|0;var l=0,c=0,f=0;c=n[s>>2]|0,f=c,c|0&&(s=s+4|0,l=n[s>>2]|0,(l|0)!=(c|0)&&(n[s>>2]=l+(~(((l+-12-f|0)>>>0)/12|0)*12|0)),gt(c))}function mke(s){s=s|0;var l=0;l=Kr()|0,Vr(s,2,1,l,yke()|0,2),n[s+24>>2]=0,n[s+28>>2]=0,n[s+32>>2]=0}function yke(){return 1300}function Eke(s,l,c,f){s=s|0,l=l|0,c=c|0,f=+f;var d=0,m=0,B=0,k=0;d=E,E=E+16|0,m=d+8|0,B=d,k=Cke(s)|0,s=n[k+4>>2]|0,n[B>>2]=n[k>>2],n[B+4>>2]=s,n[m>>2]=n[B>>2],n[m+4>>2]=n[B+4>>2],wke(l,m,c,f),E=d}function Cke(s){return s=s|0,(n[($F()|0)+24>>2]|0)+(s*12|0)|0}function wke(s,l,c,f){s=s|0,l=l|0,c=c|0,f=+f;var d=0,m=0,B=0,k=0;k=E,E=E+16|0,m=k+1|0,B=k,d=n[l>>2]|0,l=n[l+4>>2]|0,s=s+(l>>1)|0,l&1&&(d=n[(n[s>>2]|0)+d>>2]|0),XA(m,c),m=ZA(m,c)|0,ku(B,f),f=+Qu(B,f),F7[d&15](s,m,f),E=k}function Ike(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0,B=0,k=0;f=E,E=E+16|0,d=f+8|0,m=f,k=n[c>>2]|0,B=n[c+4>>2]|0,c=pn(l)|0,n[m>>2]=k,n[m+4>>2]=B,n[d>>2]=n[m>>2],n[d+4>>2]=n[m+4>>2],Bke(s,c,d,0),E=f}function Bke(s,l,c,f){s=s|0,l=l|0,c=c|0,f=f|0;var d=0,m=0,B=0,k=0,Q=0,M=0,O=0;d=E,E=E+32|0,m=d+16|0,O=d+8|0,k=d,M=n[c>>2]|0,Q=n[c+4>>2]|0,B=n[s>>2]|0,s=eR()|0,n[O>>2]=M,n[O+4>>2]=Q,n[m>>2]=n[O>>2],n[m+4>>2]=n[O+4>>2],c=vke(m)|0,n[k>>2]=M,n[k+4>>2]=Q,n[m>>2]=n[k>>2],n[m+4>>2]=n[k+4>>2],hn(B,l,s,c,Dke(m,f)|0,f),E=d}function eR(){var s=0,l=0;if(o[7776]|0||(K5(9828),tr(41,9828,U|0)|0,l=7776,n[l>>2]=1,n[l+4>>2]=0),!(Tr(9828)|0)){s=9828,l=s+36|0;do n[s>>2]=0,s=s+4|0;while((s|0)<(l|0));K5(9828)}return 9828}function vke(s){return s=s|0,0}function Dke(s,l){s=s|0,l=l|0;var c=0,f=0,d=0,m=0,B=0,k=0,Q=0,M=0,O=0,q=0;return O=E,E=E+32|0,d=O+24|0,B=O+16|0,k=O,Q=O+8|0,m=n[s>>2]|0,f=n[s+4>>2]|0,n[k>>2]=m,n[k+4>>2]=f,q=eR()|0,M=q+24|0,s=gr(l,4)|0,n[Q>>2]=s,l=q+28|0,c=n[l>>2]|0,c>>>0<(n[q+32>>2]|0)>>>0?(n[B>>2]=m,n[B+4>>2]=f,n[d>>2]=n[B>>2],n[d+4>>2]=n[B+4>>2],W5(c,d,s),s=(n[l>>2]|0)+12|0,n[l>>2]=s):(Pke(M,k,Q),s=n[l>>2]|0),E=O,((s-(n[M>>2]|0)|0)/12|0)+-1|0}function W5(s,l,c){s=s|0,l=l|0,c=c|0;var f=0;f=n[l+4>>2]|0,n[s>>2]=n[l>>2],n[s+4>>2]=f,n[s+8>>2]=c}function Pke(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0,B=0,k=0,Q=0,M=0,O=0,q=0,se=0;if(M=E,E=E+48|0,f=M+32|0,B=M+24|0,k=M,Q=s+4|0,d=(((n[Q>>2]|0)-(n[s>>2]|0)|0)/12|0)+1|0,m=Ske(s)|0,m>>>0>>0)Jr(s);else{O=n[s>>2]|0,se=((n[s+8>>2]|0)-O|0)/12|0,q=se<<1,bke(k,se>>>0>>1>>>0?q>>>0>>0?d:q:m,((n[Q>>2]|0)-O|0)/12|0,s+8|0),Q=k+8|0,m=n[Q>>2]|0,d=n[l+4>>2]|0,c=n[c>>2]|0,n[B>>2]=n[l>>2],n[B+4>>2]=d,n[f>>2]=n[B>>2],n[f+4>>2]=n[B+4>>2],W5(m,f,c),n[Q>>2]=(n[Q>>2]|0)+12,xke(s,k),kke(k),E=M;return}}function Ske(s){return s=s|0,357913941}function bke(s,l,c,f){s=s|0,l=l|0,c=c|0,f=f|0;var d=0;n[s+12>>2]=0,n[s+16>>2]=f;do if(l)if(l>>>0>357913941)Rt();else{d=Kt(l*12|0)|0;break}else d=0;while(0);n[s>>2]=d,f=d+(c*12|0)|0,n[s+8>>2]=f,n[s+4>>2]=f,n[s+12>>2]=d+(l*12|0)}function xke(s,l){s=s|0,l=l|0;var c=0,f=0,d=0,m=0,B=0;f=n[s>>2]|0,B=s+4|0,m=l+4|0,d=(n[B>>2]|0)-f|0,c=(n[m>>2]|0)+(((d|0)/-12|0)*12|0)|0,n[m>>2]=c,(d|0)>0?(Dr(c|0,f|0,d|0)|0,f=m,c=n[m>>2]|0):f=m,m=n[s>>2]|0,n[s>>2]=c,n[f>>2]=m,m=l+8|0,d=n[B>>2]|0,n[B>>2]=n[m>>2],n[m>>2]=d,m=s+8|0,B=l+12|0,s=n[m>>2]|0,n[m>>2]=n[B>>2],n[B>>2]=s,n[l>>2]=n[f>>2]}function kke(s){s=s|0;var l=0,c=0,f=0;l=n[s+4>>2]|0,c=s+8|0,f=n[c>>2]|0,(f|0)!=(l|0)&&(n[c>>2]=f+(~(((f+-12-l|0)>>>0)/12|0)*12|0)),s=n[s>>2]|0,s|0&>(s)}function K5(s){s=s|0,Rke(s)}function Qke(s){s=s|0,Fke(s+24|0)}function Fke(s){s=s|0;var l=0,c=0,f=0;c=n[s>>2]|0,f=c,c|0&&(s=s+4|0,l=n[s>>2]|0,(l|0)!=(c|0)&&(n[s>>2]=l+(~(((l+-12-f|0)>>>0)/12|0)*12|0)),gt(c))}function Rke(s){s=s|0;var l=0;l=Kr()|0,Vr(s,2,7,l,Tke()|0,1),n[s+24>>2]=0,n[s+28>>2]=0,n[s+32>>2]=0}function Tke(){return 1312}function Nke(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0,B=0;f=E,E=E+16|0,d=f+8|0,m=f,B=Lke(s)|0,s=n[B+4>>2]|0,n[m>>2]=n[B>>2],n[m+4>>2]=s,n[d>>2]=n[m>>2],n[d+4>>2]=n[m+4>>2],Oke(l,d,c),E=f}function Lke(s){return s=s|0,(n[(eR()|0)+24>>2]|0)+(s*12|0)|0}function Oke(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0;m=E,E=E+16|0,d=m,f=n[l>>2]|0,l=n[l+4>>2]|0,s=s+(l>>1)|0,l&1&&(f=n[(n[s>>2]|0)+f>>2]|0),XA(d,c),d=ZA(d,c)|0,tf[f&31](s,d),E=m}function Mke(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0,B=0,k=0;f=E,E=E+16|0,d=f+8|0,m=f,k=n[c>>2]|0,B=n[c+4>>2]|0,c=pn(l)|0,n[m>>2]=k,n[m+4>>2]=B,n[d>>2]=n[m>>2],n[d+4>>2]=n[m+4>>2],Uke(s,c,d,0),E=f}function Uke(s,l,c,f){s=s|0,l=l|0,c=c|0,f=f|0;var d=0,m=0,B=0,k=0,Q=0,M=0,O=0;d=E,E=E+32|0,m=d+16|0,O=d+8|0,k=d,M=n[c>>2]|0,Q=n[c+4>>2]|0,B=n[s>>2]|0,s=tR()|0,n[O>>2]=M,n[O+4>>2]=Q,n[m>>2]=n[O>>2],n[m+4>>2]=n[O+4>>2],c=_ke(m)|0,n[k>>2]=M,n[k+4>>2]=Q,n[m>>2]=n[k>>2],n[m+4>>2]=n[k+4>>2],hn(B,l,s,c,Hke(m,f)|0,f),E=d}function tR(){var s=0,l=0;if(o[7784]|0||(z5(9864),tr(42,9864,U|0)|0,l=7784,n[l>>2]=1,n[l+4>>2]=0),!(Tr(9864)|0)){s=9864,l=s+36|0;do n[s>>2]=0,s=s+4|0;while((s|0)<(l|0));z5(9864)}return 9864}function _ke(s){return s=s|0,0}function Hke(s,l){s=s|0,l=l|0;var c=0,f=0,d=0,m=0,B=0,k=0,Q=0,M=0,O=0,q=0;return O=E,E=E+32|0,d=O+24|0,B=O+16|0,k=O,Q=O+8|0,m=n[s>>2]|0,f=n[s+4>>2]|0,n[k>>2]=m,n[k+4>>2]=f,q=tR()|0,M=q+24|0,s=gr(l,4)|0,n[Q>>2]=s,l=q+28|0,c=n[l>>2]|0,c>>>0<(n[q+32>>2]|0)>>>0?(n[B>>2]=m,n[B+4>>2]=f,n[d>>2]=n[B>>2],n[d+4>>2]=n[B+4>>2],V5(c,d,s),s=(n[l>>2]|0)+12|0,n[l>>2]=s):(jke(M,k,Q),s=n[l>>2]|0),E=O,((s-(n[M>>2]|0)|0)/12|0)+-1|0}function V5(s,l,c){s=s|0,l=l|0,c=c|0;var f=0;f=n[l+4>>2]|0,n[s>>2]=n[l>>2],n[s+4>>2]=f,n[s+8>>2]=c}function jke(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0,B=0,k=0,Q=0,M=0,O=0,q=0,se=0;if(M=E,E=E+48|0,f=M+32|0,B=M+24|0,k=M,Q=s+4|0,d=(((n[Q>>2]|0)-(n[s>>2]|0)|0)/12|0)+1|0,m=qke(s)|0,m>>>0>>0)Jr(s);else{O=n[s>>2]|0,se=((n[s+8>>2]|0)-O|0)/12|0,q=se<<1,Gke(k,se>>>0>>1>>>0?q>>>0>>0?d:q:m,((n[Q>>2]|0)-O|0)/12|0,s+8|0),Q=k+8|0,m=n[Q>>2]|0,d=n[l+4>>2]|0,c=n[c>>2]|0,n[B>>2]=n[l>>2],n[B+4>>2]=d,n[f>>2]=n[B>>2],n[f+4>>2]=n[B+4>>2],V5(m,f,c),n[Q>>2]=(n[Q>>2]|0)+12,Yke(s,k),Wke(k),E=M;return}}function qke(s){return s=s|0,357913941}function Gke(s,l,c,f){s=s|0,l=l|0,c=c|0,f=f|0;var d=0;n[s+12>>2]=0,n[s+16>>2]=f;do if(l)if(l>>>0>357913941)Rt();else{d=Kt(l*12|0)|0;break}else d=0;while(0);n[s>>2]=d,f=d+(c*12|0)|0,n[s+8>>2]=f,n[s+4>>2]=f,n[s+12>>2]=d+(l*12|0)}function Yke(s,l){s=s|0,l=l|0;var c=0,f=0,d=0,m=0,B=0;f=n[s>>2]|0,B=s+4|0,m=l+4|0,d=(n[B>>2]|0)-f|0,c=(n[m>>2]|0)+(((d|0)/-12|0)*12|0)|0,n[m>>2]=c,(d|0)>0?(Dr(c|0,f|0,d|0)|0,f=m,c=n[m>>2]|0):f=m,m=n[s>>2]|0,n[s>>2]=c,n[f>>2]=m,m=l+8|0,d=n[B>>2]|0,n[B>>2]=n[m>>2],n[m>>2]=d,m=s+8|0,B=l+12|0,s=n[m>>2]|0,n[m>>2]=n[B>>2],n[B>>2]=s,n[l>>2]=n[f>>2]}function Wke(s){s=s|0;var l=0,c=0,f=0;l=n[s+4>>2]|0,c=s+8|0,f=n[c>>2]|0,(f|0)!=(l|0)&&(n[c>>2]=f+(~(((f+-12-l|0)>>>0)/12|0)*12|0)),s=n[s>>2]|0,s|0&>(s)}function z5(s){s=s|0,zke(s)}function Kke(s){s=s|0,Vke(s+24|0)}function Vke(s){s=s|0;var l=0,c=0,f=0;c=n[s>>2]|0,f=c,c|0&&(s=s+4|0,l=n[s>>2]|0,(l|0)!=(c|0)&&(n[s>>2]=l+(~(((l+-12-f|0)>>>0)/12|0)*12|0)),gt(c))}function zke(s){s=s|0;var l=0;l=Kr()|0,Vr(s,2,8,l,Jke()|0,1),n[s+24>>2]=0,n[s+28>>2]=0,n[s+32>>2]=0}function Jke(){return 1320}function Xke(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0,B=0;f=E,E=E+16|0,d=f+8|0,m=f,B=Zke(s)|0,s=n[B+4>>2]|0,n[m>>2]=n[B>>2],n[m+4>>2]=s,n[d>>2]=n[m>>2],n[d+4>>2]=n[m+4>>2],$ke(l,d,c),E=f}function Zke(s){return s=s|0,(n[(tR()|0)+24>>2]|0)+(s*12|0)|0}function $ke(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0;m=E,E=E+16|0,d=m,f=n[l>>2]|0,l=n[l+4>>2]|0,s=s+(l>>1)|0,l&1&&(f=n[(n[s>>2]|0)+f>>2]|0),eQe(d,c),d=tQe(d,c)|0,tf[f&31](s,d),E=m}function eQe(s,l){s=s|0,l=l|0}function tQe(s,l){return s=s|0,l=l|0,rQe(l)|0}function rQe(s){return s=s|0,s|0}function nQe(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0,B=0,k=0;f=E,E=E+16|0,d=f+8|0,m=f,k=n[c>>2]|0,B=n[c+4>>2]|0,c=pn(l)|0,n[m>>2]=k,n[m+4>>2]=B,n[d>>2]=n[m>>2],n[d+4>>2]=n[m+4>>2],iQe(s,c,d,0),E=f}function iQe(s,l,c,f){s=s|0,l=l|0,c=c|0,f=f|0;var d=0,m=0,B=0,k=0,Q=0,M=0,O=0;d=E,E=E+32|0,m=d+16|0,O=d+8|0,k=d,M=n[c>>2]|0,Q=n[c+4>>2]|0,B=n[s>>2]|0,s=rR()|0,n[O>>2]=M,n[O+4>>2]=Q,n[m>>2]=n[O>>2],n[m+4>>2]=n[O+4>>2],c=sQe(m)|0,n[k>>2]=M,n[k+4>>2]=Q,n[m>>2]=n[k>>2],n[m+4>>2]=n[k+4>>2],hn(B,l,s,c,oQe(m,f)|0,f),E=d}function rR(){var s=0,l=0;if(o[7792]|0||(X5(9900),tr(43,9900,U|0)|0,l=7792,n[l>>2]=1,n[l+4>>2]=0),!(Tr(9900)|0)){s=9900,l=s+36|0;do n[s>>2]=0,s=s+4|0;while((s|0)<(l|0));X5(9900)}return 9900}function sQe(s){return s=s|0,0}function oQe(s,l){s=s|0,l=l|0;var c=0,f=0,d=0,m=0,B=0,k=0,Q=0,M=0,O=0,q=0;return O=E,E=E+32|0,d=O+24|0,B=O+16|0,k=O,Q=O+8|0,m=n[s>>2]|0,f=n[s+4>>2]|0,n[k>>2]=m,n[k+4>>2]=f,q=rR()|0,M=q+24|0,s=gr(l,4)|0,n[Q>>2]=s,l=q+28|0,c=n[l>>2]|0,c>>>0<(n[q+32>>2]|0)>>>0?(n[B>>2]=m,n[B+4>>2]=f,n[d>>2]=n[B>>2],n[d+4>>2]=n[B+4>>2],J5(c,d,s),s=(n[l>>2]|0)+12|0,n[l>>2]=s):(aQe(M,k,Q),s=n[l>>2]|0),E=O,((s-(n[M>>2]|0)|0)/12|0)+-1|0}function J5(s,l,c){s=s|0,l=l|0,c=c|0;var f=0;f=n[l+4>>2]|0,n[s>>2]=n[l>>2],n[s+4>>2]=f,n[s+8>>2]=c}function aQe(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0,B=0,k=0,Q=0,M=0,O=0,q=0,se=0;if(M=E,E=E+48|0,f=M+32|0,B=M+24|0,k=M,Q=s+4|0,d=(((n[Q>>2]|0)-(n[s>>2]|0)|0)/12|0)+1|0,m=lQe(s)|0,m>>>0>>0)Jr(s);else{O=n[s>>2]|0,se=((n[s+8>>2]|0)-O|0)/12|0,q=se<<1,cQe(k,se>>>0>>1>>>0?q>>>0>>0?d:q:m,((n[Q>>2]|0)-O|0)/12|0,s+8|0),Q=k+8|0,m=n[Q>>2]|0,d=n[l+4>>2]|0,c=n[c>>2]|0,n[B>>2]=n[l>>2],n[B+4>>2]=d,n[f>>2]=n[B>>2],n[f+4>>2]=n[B+4>>2],J5(m,f,c),n[Q>>2]=(n[Q>>2]|0)+12,uQe(s,k),AQe(k),E=M;return}}function lQe(s){return s=s|0,357913941}function cQe(s,l,c,f){s=s|0,l=l|0,c=c|0,f=f|0;var d=0;n[s+12>>2]=0,n[s+16>>2]=f;do if(l)if(l>>>0>357913941)Rt();else{d=Kt(l*12|0)|0;break}else d=0;while(0);n[s>>2]=d,f=d+(c*12|0)|0,n[s+8>>2]=f,n[s+4>>2]=f,n[s+12>>2]=d+(l*12|0)}function uQe(s,l){s=s|0,l=l|0;var c=0,f=0,d=0,m=0,B=0;f=n[s>>2]|0,B=s+4|0,m=l+4|0,d=(n[B>>2]|0)-f|0,c=(n[m>>2]|0)+(((d|0)/-12|0)*12|0)|0,n[m>>2]=c,(d|0)>0?(Dr(c|0,f|0,d|0)|0,f=m,c=n[m>>2]|0):f=m,m=n[s>>2]|0,n[s>>2]=c,n[f>>2]=m,m=l+8|0,d=n[B>>2]|0,n[B>>2]=n[m>>2],n[m>>2]=d,m=s+8|0,B=l+12|0,s=n[m>>2]|0,n[m>>2]=n[B>>2],n[B>>2]=s,n[l>>2]=n[f>>2]}function AQe(s){s=s|0;var l=0,c=0,f=0;l=n[s+4>>2]|0,c=s+8|0,f=n[c>>2]|0,(f|0)!=(l|0)&&(n[c>>2]=f+(~(((f+-12-l|0)>>>0)/12|0)*12|0)),s=n[s>>2]|0,s|0&>(s)}function X5(s){s=s|0,hQe(s)}function fQe(s){s=s|0,pQe(s+24|0)}function pQe(s){s=s|0;var l=0,c=0,f=0;c=n[s>>2]|0,f=c,c|0&&(s=s+4|0,l=n[s>>2]|0,(l|0)!=(c|0)&&(n[s>>2]=l+(~(((l+-12-f|0)>>>0)/12|0)*12|0)),gt(c))}function hQe(s){s=s|0;var l=0;l=Kr()|0,Vr(s,2,22,l,gQe()|0,0),n[s+24>>2]=0,n[s+28>>2]=0,n[s+32>>2]=0}function gQe(){return 1344}function dQe(s,l){s=s|0,l=l|0;var c=0,f=0,d=0,m=0;c=E,E=E+16|0,f=c+8|0,d=c,m=mQe(s)|0,s=n[m+4>>2]|0,n[d>>2]=n[m>>2],n[d+4>>2]=s,n[f>>2]=n[d>>2],n[f+4>>2]=n[d+4>>2],yQe(l,f),E=c}function mQe(s){return s=s|0,(n[(rR()|0)+24>>2]|0)+(s*12|0)|0}function yQe(s,l){s=s|0,l=l|0;var c=0;c=n[l>>2]|0,l=n[l+4>>2]|0,s=s+(l>>1)|0,l&1&&(c=n[(n[s>>2]|0)+c>>2]|0),ef[c&127](s)}function EQe(s,l,c,f){s=s|0,l=l|0,c=c|0,f=f|0;var d=0,m=0;m=n[s>>2]|0,d=nR()|0,s=CQe(c)|0,hn(m,l,d,s,wQe(c,f)|0,f)}function nR(){var s=0,l=0;if(o[7800]|0||($5(9936),tr(44,9936,U|0)|0,l=7800,n[l>>2]=1,n[l+4>>2]=0),!(Tr(9936)|0)){s=9936,l=s+36|0;do n[s>>2]=0,s=s+4|0;while((s|0)<(l|0));$5(9936)}return 9936}function CQe(s){return s=s|0,s|0}function wQe(s,l){s=s|0,l=l|0;var c=0,f=0,d=0,m=0,B=0,k=0,Q=0;return k=E,E=E+16|0,d=k,m=k+4|0,n[d>>2]=s,Q=nR()|0,B=Q+24|0,l=gr(l,4)|0,n[m>>2]=l,c=Q+28|0,f=n[c>>2]|0,f>>>0<(n[Q+32>>2]|0)>>>0?(Z5(f,s,l),l=(n[c>>2]|0)+8|0,n[c>>2]=l):(IQe(B,d,m),l=n[c>>2]|0),E=k,(l-(n[B>>2]|0)>>3)+-1|0}function Z5(s,l,c){s=s|0,l=l|0,c=c|0,n[s>>2]=l,n[s+4>>2]=c}function IQe(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0,B=0,k=0,Q=0,M=0,O=0;if(k=E,E=E+32|0,d=k,m=s+4|0,B=((n[m>>2]|0)-(n[s>>2]|0)>>3)+1|0,f=BQe(s)|0,f>>>0>>0)Jr(s);else{Q=n[s>>2]|0,O=(n[s+8>>2]|0)-Q|0,M=O>>2,vQe(d,O>>3>>>0>>1>>>0?M>>>0>>0?B:M:f,(n[m>>2]|0)-Q>>3,s+8|0),B=d+8|0,Z5(n[B>>2]|0,n[l>>2]|0,n[c>>2]|0),n[B>>2]=(n[B>>2]|0)+8,DQe(s,d),PQe(d),E=k;return}}function BQe(s){return s=s|0,536870911}function vQe(s,l,c,f){s=s|0,l=l|0,c=c|0,f=f|0;var d=0;n[s+12>>2]=0,n[s+16>>2]=f;do if(l)if(l>>>0>536870911)Rt();else{d=Kt(l<<3)|0;break}else d=0;while(0);n[s>>2]=d,f=d+(c<<3)|0,n[s+8>>2]=f,n[s+4>>2]=f,n[s+12>>2]=d+(l<<3)}function DQe(s,l){s=s|0,l=l|0;var c=0,f=0,d=0,m=0,B=0;f=n[s>>2]|0,B=s+4|0,m=l+4|0,d=(n[B>>2]|0)-f|0,c=(n[m>>2]|0)+(0-(d>>3)<<3)|0,n[m>>2]=c,(d|0)>0?(Dr(c|0,f|0,d|0)|0,f=m,c=n[m>>2]|0):f=m,m=n[s>>2]|0,n[s>>2]=c,n[f>>2]=m,m=l+8|0,d=n[B>>2]|0,n[B>>2]=n[m>>2],n[m>>2]=d,m=s+8|0,B=l+12|0,s=n[m>>2]|0,n[m>>2]=n[B>>2],n[B>>2]=s,n[l>>2]=n[f>>2]}function PQe(s){s=s|0;var l=0,c=0,f=0;l=n[s+4>>2]|0,c=s+8|0,f=n[c>>2]|0,(f|0)!=(l|0)&&(n[c>>2]=f+(~((f+-8-l|0)>>>3)<<3)),s=n[s>>2]|0,s|0&>(s)}function $5(s){s=s|0,xQe(s)}function SQe(s){s=s|0,bQe(s+24|0)}function bQe(s){s=s|0;var l=0,c=0,f=0;c=n[s>>2]|0,f=c,c|0&&(s=s+4|0,l=n[s>>2]|0,(l|0)!=(c|0)&&(n[s>>2]=l+(~((l+-8-f|0)>>>3)<<3)),gt(c))}function xQe(s){s=s|0;var l=0;l=Kr()|0,Vr(s,1,23,l,S5()|0,1),n[s+24>>2]=0,n[s+28>>2]=0,n[s+32>>2]=0}function kQe(s,l){s=s|0,l=l|0,FQe(n[(QQe(s)|0)>>2]|0,l)}function QQe(s){return s=s|0,(n[(nR()|0)+24>>2]|0)+(s<<3)|0}function FQe(s,l){s=s|0,l=l|0;var c=0,f=0;c=E,E=E+16|0,f=c,qF(f,l),l=GF(f,l)|0,ef[s&127](l),E=c}function RQe(s,l,c,f){s=s|0,l=l|0,c=c|0,f=f|0;var d=0,m=0;m=n[s>>2]|0,d=iR()|0,s=TQe(c)|0,hn(m,l,d,s,NQe(c,f)|0,f)}function iR(){var s=0,l=0;if(o[7808]|0||(t9(9972),tr(45,9972,U|0)|0,l=7808,n[l>>2]=1,n[l+4>>2]=0),!(Tr(9972)|0)){s=9972,l=s+36|0;do n[s>>2]=0,s=s+4|0;while((s|0)<(l|0));t9(9972)}return 9972}function TQe(s){return s=s|0,s|0}function NQe(s,l){s=s|0,l=l|0;var c=0,f=0,d=0,m=0,B=0,k=0,Q=0;return k=E,E=E+16|0,d=k,m=k+4|0,n[d>>2]=s,Q=iR()|0,B=Q+24|0,l=gr(l,4)|0,n[m>>2]=l,c=Q+28|0,f=n[c>>2]|0,f>>>0<(n[Q+32>>2]|0)>>>0?(e9(f,s,l),l=(n[c>>2]|0)+8|0,n[c>>2]=l):(LQe(B,d,m),l=n[c>>2]|0),E=k,(l-(n[B>>2]|0)>>3)+-1|0}function e9(s,l,c){s=s|0,l=l|0,c=c|0,n[s>>2]=l,n[s+4>>2]=c}function LQe(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0,B=0,k=0,Q=0,M=0,O=0;if(k=E,E=E+32|0,d=k,m=s+4|0,B=((n[m>>2]|0)-(n[s>>2]|0)>>3)+1|0,f=OQe(s)|0,f>>>0>>0)Jr(s);else{Q=n[s>>2]|0,O=(n[s+8>>2]|0)-Q|0,M=O>>2,MQe(d,O>>3>>>0>>1>>>0?M>>>0>>0?B:M:f,(n[m>>2]|0)-Q>>3,s+8|0),B=d+8|0,e9(n[B>>2]|0,n[l>>2]|0,n[c>>2]|0),n[B>>2]=(n[B>>2]|0)+8,UQe(s,d),_Qe(d),E=k;return}}function OQe(s){return s=s|0,536870911}function MQe(s,l,c,f){s=s|0,l=l|0,c=c|0,f=f|0;var d=0;n[s+12>>2]=0,n[s+16>>2]=f;do if(l)if(l>>>0>536870911)Rt();else{d=Kt(l<<3)|0;break}else d=0;while(0);n[s>>2]=d,f=d+(c<<3)|0,n[s+8>>2]=f,n[s+4>>2]=f,n[s+12>>2]=d+(l<<3)}function UQe(s,l){s=s|0,l=l|0;var c=0,f=0,d=0,m=0,B=0;f=n[s>>2]|0,B=s+4|0,m=l+4|0,d=(n[B>>2]|0)-f|0,c=(n[m>>2]|0)+(0-(d>>3)<<3)|0,n[m>>2]=c,(d|0)>0?(Dr(c|0,f|0,d|0)|0,f=m,c=n[m>>2]|0):f=m,m=n[s>>2]|0,n[s>>2]=c,n[f>>2]=m,m=l+8|0,d=n[B>>2]|0,n[B>>2]=n[m>>2],n[m>>2]=d,m=s+8|0,B=l+12|0,s=n[m>>2]|0,n[m>>2]=n[B>>2],n[B>>2]=s,n[l>>2]=n[f>>2]}function _Qe(s){s=s|0;var l=0,c=0,f=0;l=n[s+4>>2]|0,c=s+8|0,f=n[c>>2]|0,(f|0)!=(l|0)&&(n[c>>2]=f+(~((f+-8-l|0)>>>3)<<3)),s=n[s>>2]|0,s|0&>(s)}function t9(s){s=s|0,qQe(s)}function HQe(s){s=s|0,jQe(s+24|0)}function jQe(s){s=s|0;var l=0,c=0,f=0;c=n[s>>2]|0,f=c,c|0&&(s=s+4|0,l=n[s>>2]|0,(l|0)!=(c|0)&&(n[s>>2]=l+(~((l+-8-f|0)>>>3)<<3)),gt(c))}function qQe(s){s=s|0;var l=0;l=Kr()|0,Vr(s,1,9,l,GQe()|0,1),n[s+24>>2]=0,n[s+28>>2]=0,n[s+32>>2]=0}function GQe(){return 1348}function YQe(s,l){return s=s|0,l=l|0,KQe(n[(WQe(s)|0)>>2]|0,l)|0}function WQe(s){return s=s|0,(n[(iR()|0)+24>>2]|0)+(s<<3)|0}function KQe(s,l){s=s|0,l=l|0;var c=0,f=0;return c=E,E=E+16|0,f=c,r9(f,l),l=n9(f,l)|0,l=sD(Tg[s&31](l)|0)|0,E=c,l|0}function r9(s,l){s=s|0,l=l|0}function n9(s,l){return s=s|0,l=l|0,VQe(l)|0}function VQe(s){return s=s|0,s|0}function zQe(s,l,c,f){s=s|0,l=l|0,c=c|0,f=f|0;var d=0,m=0;m=n[s>>2]|0,d=sR()|0,s=JQe(c)|0,hn(m,l,d,s,XQe(c,f)|0,f)}function sR(){var s=0,l=0;if(o[7816]|0||(s9(10008),tr(46,10008,U|0)|0,l=7816,n[l>>2]=1,n[l+4>>2]=0),!(Tr(10008)|0)){s=10008,l=s+36|0;do n[s>>2]=0,s=s+4|0;while((s|0)<(l|0));s9(10008)}return 10008}function JQe(s){return s=s|0,s|0}function XQe(s,l){s=s|0,l=l|0;var c=0,f=0,d=0,m=0,B=0,k=0,Q=0;return k=E,E=E+16|0,d=k,m=k+4|0,n[d>>2]=s,Q=sR()|0,B=Q+24|0,l=gr(l,4)|0,n[m>>2]=l,c=Q+28|0,f=n[c>>2]|0,f>>>0<(n[Q+32>>2]|0)>>>0?(i9(f,s,l),l=(n[c>>2]|0)+8|0,n[c>>2]=l):(ZQe(B,d,m),l=n[c>>2]|0),E=k,(l-(n[B>>2]|0)>>3)+-1|0}function i9(s,l,c){s=s|0,l=l|0,c=c|0,n[s>>2]=l,n[s+4>>2]=c}function ZQe(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0,B=0,k=0,Q=0,M=0,O=0;if(k=E,E=E+32|0,d=k,m=s+4|0,B=((n[m>>2]|0)-(n[s>>2]|0)>>3)+1|0,f=$Qe(s)|0,f>>>0>>0)Jr(s);else{Q=n[s>>2]|0,O=(n[s+8>>2]|0)-Q|0,M=O>>2,eFe(d,O>>3>>>0>>1>>>0?M>>>0>>0?B:M:f,(n[m>>2]|0)-Q>>3,s+8|0),B=d+8|0,i9(n[B>>2]|0,n[l>>2]|0,n[c>>2]|0),n[B>>2]=(n[B>>2]|0)+8,tFe(s,d),rFe(d),E=k;return}}function $Qe(s){return s=s|0,536870911}function eFe(s,l,c,f){s=s|0,l=l|0,c=c|0,f=f|0;var d=0;n[s+12>>2]=0,n[s+16>>2]=f;do if(l)if(l>>>0>536870911)Rt();else{d=Kt(l<<3)|0;break}else d=0;while(0);n[s>>2]=d,f=d+(c<<3)|0,n[s+8>>2]=f,n[s+4>>2]=f,n[s+12>>2]=d+(l<<3)}function tFe(s,l){s=s|0,l=l|0;var c=0,f=0,d=0,m=0,B=0;f=n[s>>2]|0,B=s+4|0,m=l+4|0,d=(n[B>>2]|0)-f|0,c=(n[m>>2]|0)+(0-(d>>3)<<3)|0,n[m>>2]=c,(d|0)>0?(Dr(c|0,f|0,d|0)|0,f=m,c=n[m>>2]|0):f=m,m=n[s>>2]|0,n[s>>2]=c,n[f>>2]=m,m=l+8|0,d=n[B>>2]|0,n[B>>2]=n[m>>2],n[m>>2]=d,m=s+8|0,B=l+12|0,s=n[m>>2]|0,n[m>>2]=n[B>>2],n[B>>2]=s,n[l>>2]=n[f>>2]}function rFe(s){s=s|0;var l=0,c=0,f=0;l=n[s+4>>2]|0,c=s+8|0,f=n[c>>2]|0,(f|0)!=(l|0)&&(n[c>>2]=f+(~((f+-8-l|0)>>>3)<<3)),s=n[s>>2]|0,s|0&>(s)}function s9(s){s=s|0,sFe(s)}function nFe(s){s=s|0,iFe(s+24|0)}function iFe(s){s=s|0;var l=0,c=0,f=0;c=n[s>>2]|0,f=c,c|0&&(s=s+4|0,l=n[s>>2]|0,(l|0)!=(c|0)&&(n[s>>2]=l+(~((l+-8-f|0)>>>3)<<3)),gt(c))}function sFe(s){s=s|0;var l=0;l=Kr()|0,Vr(s,1,15,l,w5()|0,0),n[s+24>>2]=0,n[s+28>>2]=0,n[s+32>>2]=0}function oFe(s){return s=s|0,lFe(n[(aFe(s)|0)>>2]|0)|0}function aFe(s){return s=s|0,(n[(sR()|0)+24>>2]|0)+(s<<3)|0}function lFe(s){return s=s|0,sD(CD[s&7]()|0)|0}function cFe(){var s=0;return o[7832]|0||(mFe(10052),tr(25,10052,U|0)|0,s=7832,n[s>>2]=1,n[s+4>>2]=0),10052}function uFe(s,l){s=s|0,l=l|0,n[s>>2]=AFe()|0,n[s+4>>2]=fFe()|0,n[s+12>>2]=l,n[s+8>>2]=pFe()|0,n[s+32>>2]=2}function AFe(){return 11709}function fFe(){return 1188}function pFe(){return aD()|0}function hFe(s,l,c,f){s=s|0,l=l|0,c=c|0,f=f|0,(Pp(f,896)|0)==512?c|0&&(gFe(c),gt(c)):l|0&&(Pu(l),gt(l))}function Pp(s,l){return s=s|0,l=l|0,l&s|0}function gFe(s){s=s|0,s=n[s+4>>2]|0,s|0&&bp(s)}function aD(){var s=0;return o[7824]|0||(n[2511]=dFe()|0,n[2512]=0,s=7824,n[s>>2]=1,n[s+4>>2]=0),10044}function dFe(){return 0}function mFe(s){s=s|0,Ip(s)}function yFe(s){s=s|0;var l=0,c=0,f=0,d=0,m=0;l=E,E=E+32|0,c=l+24|0,m=l+16|0,d=l+8|0,f=l,EFe(s,4827),CFe(s,4834,3)|0,wFe(s,3682,47)|0,n[m>>2]=9,n[m+4>>2]=0,n[c>>2]=n[m>>2],n[c+4>>2]=n[m+4>>2],IFe(s,4841,c)|0,n[d>>2]=1,n[d+4>>2]=0,n[c>>2]=n[d>>2],n[c+4>>2]=n[d+4>>2],BFe(s,4871,c)|0,n[f>>2]=10,n[f+4>>2]=0,n[c>>2]=n[f>>2],n[c+4>>2]=n[f+4>>2],vFe(s,4891,c)|0,E=l}function EFe(s,l){s=s|0,l=l|0;var c=0;c=rTe()|0,n[s>>2]=c,nTe(c,l),Sp(n[s>>2]|0)}function CFe(s,l,c){return s=s|0,l=l|0,c=c|0,_Re(s,pn(l)|0,c,0),s|0}function wFe(s,l,c){return s=s|0,l=l|0,c=c|0,DRe(s,pn(l)|0,c,0),s|0}function IFe(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0,B=0;return f=E,E=E+16|0,d=f+8|0,m=f,B=n[c+4>>2]|0,n[m>>2]=n[c>>2],n[m+4>>2]=B,n[d>>2]=n[m>>2],n[d+4>>2]=n[m+4>>2],oRe(s,l,d),E=f,s|0}function BFe(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0,B=0;return f=E,E=E+16|0,d=f+8|0,m=f,B=n[c+4>>2]|0,n[m>>2]=n[c>>2],n[m+4>>2]=B,n[d>>2]=n[m>>2],n[d+4>>2]=n[m+4>>2],HFe(s,l,d),E=f,s|0}function vFe(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0,B=0;return f=E,E=E+16|0,d=f+8|0,m=f,B=n[c+4>>2]|0,n[m>>2]=n[c>>2],n[m+4>>2]=B,n[d>>2]=n[m>>2],n[d+4>>2]=n[m+4>>2],DFe(s,l,d),E=f,s|0}function DFe(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0,B=0,k=0;f=E,E=E+16|0,d=f+8|0,m=f,k=n[c>>2]|0,B=n[c+4>>2]|0,c=pn(l)|0,n[m>>2]=k,n[m+4>>2]=B,n[d>>2]=n[m>>2],n[d+4>>2]=n[m+4>>2],PFe(s,c,d,1),E=f}function PFe(s,l,c,f){s=s|0,l=l|0,c=c|0,f=f|0;var d=0,m=0,B=0,k=0,Q=0,M=0,O=0;d=E,E=E+32|0,m=d+16|0,O=d+8|0,k=d,M=n[c>>2]|0,Q=n[c+4>>2]|0,B=n[s>>2]|0,s=oR()|0,n[O>>2]=M,n[O+4>>2]=Q,n[m>>2]=n[O>>2],n[m+4>>2]=n[O+4>>2],c=SFe(m)|0,n[k>>2]=M,n[k+4>>2]=Q,n[m>>2]=n[k>>2],n[m+4>>2]=n[k+4>>2],hn(B,l,s,c,bFe(m,f)|0,f),E=d}function oR(){var s=0,l=0;if(o[7840]|0||(a9(10100),tr(48,10100,U|0)|0,l=7840,n[l>>2]=1,n[l+4>>2]=0),!(Tr(10100)|0)){s=10100,l=s+36|0;do n[s>>2]=0,s=s+4|0;while((s|0)<(l|0));a9(10100)}return 10100}function SFe(s){return s=s|0,0}function bFe(s,l){s=s|0,l=l|0;var c=0,f=0,d=0,m=0,B=0,k=0,Q=0,M=0,O=0,q=0;return O=E,E=E+32|0,d=O+24|0,B=O+16|0,k=O,Q=O+8|0,m=n[s>>2]|0,f=n[s+4>>2]|0,n[k>>2]=m,n[k+4>>2]=f,q=oR()|0,M=q+24|0,s=gr(l,4)|0,n[Q>>2]=s,l=q+28|0,c=n[l>>2]|0,c>>>0<(n[q+32>>2]|0)>>>0?(n[B>>2]=m,n[B+4>>2]=f,n[d>>2]=n[B>>2],n[d+4>>2]=n[B+4>>2],o9(c,d,s),s=(n[l>>2]|0)+12|0,n[l>>2]=s):(xFe(M,k,Q),s=n[l>>2]|0),E=O,((s-(n[M>>2]|0)|0)/12|0)+-1|0}function o9(s,l,c){s=s|0,l=l|0,c=c|0;var f=0;f=n[l+4>>2]|0,n[s>>2]=n[l>>2],n[s+4>>2]=f,n[s+8>>2]=c}function xFe(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0,B=0,k=0,Q=0,M=0,O=0,q=0,se=0;if(M=E,E=E+48|0,f=M+32|0,B=M+24|0,k=M,Q=s+4|0,d=(((n[Q>>2]|0)-(n[s>>2]|0)|0)/12|0)+1|0,m=kFe(s)|0,m>>>0>>0)Jr(s);else{O=n[s>>2]|0,se=((n[s+8>>2]|0)-O|0)/12|0,q=se<<1,QFe(k,se>>>0>>1>>>0?q>>>0>>0?d:q:m,((n[Q>>2]|0)-O|0)/12|0,s+8|0),Q=k+8|0,m=n[Q>>2]|0,d=n[l+4>>2]|0,c=n[c>>2]|0,n[B>>2]=n[l>>2],n[B+4>>2]=d,n[f>>2]=n[B>>2],n[f+4>>2]=n[B+4>>2],o9(m,f,c),n[Q>>2]=(n[Q>>2]|0)+12,FFe(s,k),RFe(k),E=M;return}}function kFe(s){return s=s|0,357913941}function QFe(s,l,c,f){s=s|0,l=l|0,c=c|0,f=f|0;var d=0;n[s+12>>2]=0,n[s+16>>2]=f;do if(l)if(l>>>0>357913941)Rt();else{d=Kt(l*12|0)|0;break}else d=0;while(0);n[s>>2]=d,f=d+(c*12|0)|0,n[s+8>>2]=f,n[s+4>>2]=f,n[s+12>>2]=d+(l*12|0)}function FFe(s,l){s=s|0,l=l|0;var c=0,f=0,d=0,m=0,B=0;f=n[s>>2]|0,B=s+4|0,m=l+4|0,d=(n[B>>2]|0)-f|0,c=(n[m>>2]|0)+(((d|0)/-12|0)*12|0)|0,n[m>>2]=c,(d|0)>0?(Dr(c|0,f|0,d|0)|0,f=m,c=n[m>>2]|0):f=m,m=n[s>>2]|0,n[s>>2]=c,n[f>>2]=m,m=l+8|0,d=n[B>>2]|0,n[B>>2]=n[m>>2],n[m>>2]=d,m=s+8|0,B=l+12|0,s=n[m>>2]|0,n[m>>2]=n[B>>2],n[B>>2]=s,n[l>>2]=n[f>>2]}function RFe(s){s=s|0;var l=0,c=0,f=0;l=n[s+4>>2]|0,c=s+8|0,f=n[c>>2]|0,(f|0)!=(l|0)&&(n[c>>2]=f+(~(((f+-12-l|0)>>>0)/12|0)*12|0)),s=n[s>>2]|0,s|0&>(s)}function a9(s){s=s|0,LFe(s)}function TFe(s){s=s|0,NFe(s+24|0)}function NFe(s){s=s|0;var l=0,c=0,f=0;c=n[s>>2]|0,f=c,c|0&&(s=s+4|0,l=n[s>>2]|0,(l|0)!=(c|0)&&(n[s>>2]=l+(~(((l+-12-f|0)>>>0)/12|0)*12|0)),gt(c))}function LFe(s){s=s|0;var l=0;l=Kr()|0,Vr(s,2,6,l,OFe()|0,1),n[s+24>>2]=0,n[s+28>>2]=0,n[s+32>>2]=0}function OFe(){return 1364}function MFe(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0,B=0;return f=E,E=E+16|0,d=f+8|0,m=f,B=UFe(s)|0,s=n[B+4>>2]|0,n[m>>2]=n[B>>2],n[m+4>>2]=s,n[d>>2]=n[m>>2],n[d+4>>2]=n[m+4>>2],c=_Fe(l,d,c)|0,E=f,c|0}function UFe(s){return s=s|0,(n[(oR()|0)+24>>2]|0)+(s*12|0)|0}function _Fe(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0;return m=E,E=E+16|0,d=m,f=n[l>>2]|0,l=n[l+4>>2]|0,s=s+(l>>1)|0,l&1&&(f=n[(n[s>>2]|0)+f>>2]|0),XA(d,c),d=ZA(d,c)|0,d=h5(NR[f&15](s,d)|0)|0,E=m,d|0}function HFe(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0,B=0,k=0;f=E,E=E+16|0,d=f+8|0,m=f,k=n[c>>2]|0,B=n[c+4>>2]|0,c=pn(l)|0,n[m>>2]=k,n[m+4>>2]=B,n[d>>2]=n[m>>2],n[d+4>>2]=n[m+4>>2],jFe(s,c,d,0),E=f}function jFe(s,l,c,f){s=s|0,l=l|0,c=c|0,f=f|0;var d=0,m=0,B=0,k=0,Q=0,M=0,O=0;d=E,E=E+32|0,m=d+16|0,O=d+8|0,k=d,M=n[c>>2]|0,Q=n[c+4>>2]|0,B=n[s>>2]|0,s=aR()|0,n[O>>2]=M,n[O+4>>2]=Q,n[m>>2]=n[O>>2],n[m+4>>2]=n[O+4>>2],c=qFe(m)|0,n[k>>2]=M,n[k+4>>2]=Q,n[m>>2]=n[k>>2],n[m+4>>2]=n[k+4>>2],hn(B,l,s,c,GFe(m,f)|0,f),E=d}function aR(){var s=0,l=0;if(o[7848]|0||(c9(10136),tr(49,10136,U|0)|0,l=7848,n[l>>2]=1,n[l+4>>2]=0),!(Tr(10136)|0)){s=10136,l=s+36|0;do n[s>>2]=0,s=s+4|0;while((s|0)<(l|0));c9(10136)}return 10136}function qFe(s){return s=s|0,0}function GFe(s,l){s=s|0,l=l|0;var c=0,f=0,d=0,m=0,B=0,k=0,Q=0,M=0,O=0,q=0;return O=E,E=E+32|0,d=O+24|0,B=O+16|0,k=O,Q=O+8|0,m=n[s>>2]|0,f=n[s+4>>2]|0,n[k>>2]=m,n[k+4>>2]=f,q=aR()|0,M=q+24|0,s=gr(l,4)|0,n[Q>>2]=s,l=q+28|0,c=n[l>>2]|0,c>>>0<(n[q+32>>2]|0)>>>0?(n[B>>2]=m,n[B+4>>2]=f,n[d>>2]=n[B>>2],n[d+4>>2]=n[B+4>>2],l9(c,d,s),s=(n[l>>2]|0)+12|0,n[l>>2]=s):(YFe(M,k,Q),s=n[l>>2]|0),E=O,((s-(n[M>>2]|0)|0)/12|0)+-1|0}function l9(s,l,c){s=s|0,l=l|0,c=c|0;var f=0;f=n[l+4>>2]|0,n[s>>2]=n[l>>2],n[s+4>>2]=f,n[s+8>>2]=c}function YFe(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0,B=0,k=0,Q=0,M=0,O=0,q=0,se=0;if(M=E,E=E+48|0,f=M+32|0,B=M+24|0,k=M,Q=s+4|0,d=(((n[Q>>2]|0)-(n[s>>2]|0)|0)/12|0)+1|0,m=WFe(s)|0,m>>>0>>0)Jr(s);else{O=n[s>>2]|0,se=((n[s+8>>2]|0)-O|0)/12|0,q=se<<1,KFe(k,se>>>0>>1>>>0?q>>>0>>0?d:q:m,((n[Q>>2]|0)-O|0)/12|0,s+8|0),Q=k+8|0,m=n[Q>>2]|0,d=n[l+4>>2]|0,c=n[c>>2]|0,n[B>>2]=n[l>>2],n[B+4>>2]=d,n[f>>2]=n[B>>2],n[f+4>>2]=n[B+4>>2],l9(m,f,c),n[Q>>2]=(n[Q>>2]|0)+12,VFe(s,k),zFe(k),E=M;return}}function WFe(s){return s=s|0,357913941}function KFe(s,l,c,f){s=s|0,l=l|0,c=c|0,f=f|0;var d=0;n[s+12>>2]=0,n[s+16>>2]=f;do if(l)if(l>>>0>357913941)Rt();else{d=Kt(l*12|0)|0;break}else d=0;while(0);n[s>>2]=d,f=d+(c*12|0)|0,n[s+8>>2]=f,n[s+4>>2]=f,n[s+12>>2]=d+(l*12|0)}function VFe(s,l){s=s|0,l=l|0;var c=0,f=0,d=0,m=0,B=0;f=n[s>>2]|0,B=s+4|0,m=l+4|0,d=(n[B>>2]|0)-f|0,c=(n[m>>2]|0)+(((d|0)/-12|0)*12|0)|0,n[m>>2]=c,(d|0)>0?(Dr(c|0,f|0,d|0)|0,f=m,c=n[m>>2]|0):f=m,m=n[s>>2]|0,n[s>>2]=c,n[f>>2]=m,m=l+8|0,d=n[B>>2]|0,n[B>>2]=n[m>>2],n[m>>2]=d,m=s+8|0,B=l+12|0,s=n[m>>2]|0,n[m>>2]=n[B>>2],n[B>>2]=s,n[l>>2]=n[f>>2]}function zFe(s){s=s|0;var l=0,c=0,f=0;l=n[s+4>>2]|0,c=s+8|0,f=n[c>>2]|0,(f|0)!=(l|0)&&(n[c>>2]=f+(~(((f+-12-l|0)>>>0)/12|0)*12|0)),s=n[s>>2]|0,s|0&>(s)}function c9(s){s=s|0,ZFe(s)}function JFe(s){s=s|0,XFe(s+24|0)}function XFe(s){s=s|0;var l=0,c=0,f=0;c=n[s>>2]|0,f=c,c|0&&(s=s+4|0,l=n[s>>2]|0,(l|0)!=(c|0)&&(n[s>>2]=l+(~(((l+-12-f|0)>>>0)/12|0)*12|0)),gt(c))}function ZFe(s){s=s|0;var l=0;l=Kr()|0,Vr(s,2,9,l,$Fe()|0,1),n[s+24>>2]=0,n[s+28>>2]=0,n[s+32>>2]=0}function $Fe(){return 1372}function eRe(s,l,c){s=s|0,l=l|0,c=+c;var f=0,d=0,m=0,B=0;f=E,E=E+16|0,d=f+8|0,m=f,B=tRe(s)|0,s=n[B+4>>2]|0,n[m>>2]=n[B>>2],n[m+4>>2]=s,n[d>>2]=n[m>>2],n[d+4>>2]=n[m+4>>2],rRe(l,d,c),E=f}function tRe(s){return s=s|0,(n[(aR()|0)+24>>2]|0)+(s*12|0)|0}function rRe(s,l,c){s=s|0,l=l|0,c=+c;var f=0,d=0,m=0,B=Ze;m=E,E=E+16|0,d=m,f=n[l>>2]|0,l=n[l+4>>2]|0,s=s+(l>>1)|0,l&1&&(f=n[(n[s>>2]|0)+f>>2]|0),nRe(d,c),B=y(iRe(d,c)),B7[f&1](s,B),E=m}function nRe(s,l){s=s|0,l=+l}function iRe(s,l){return s=s|0,l=+l,y(sRe(l))}function sRe(s){return s=+s,y(s)}function oRe(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0,B=0,k=0;f=E,E=E+16|0,d=f+8|0,m=f,k=n[c>>2]|0,B=n[c+4>>2]|0,c=pn(l)|0,n[m>>2]=k,n[m+4>>2]=B,n[d>>2]=n[m>>2],n[d+4>>2]=n[m+4>>2],aRe(s,c,d,0),E=f}function aRe(s,l,c,f){s=s|0,l=l|0,c=c|0,f=f|0;var d=0,m=0,B=0,k=0,Q=0,M=0,O=0;d=E,E=E+32|0,m=d+16|0,O=d+8|0,k=d,M=n[c>>2]|0,Q=n[c+4>>2]|0,B=n[s>>2]|0,s=lR()|0,n[O>>2]=M,n[O+4>>2]=Q,n[m>>2]=n[O>>2],n[m+4>>2]=n[O+4>>2],c=lRe(m)|0,n[k>>2]=M,n[k+4>>2]=Q,n[m>>2]=n[k>>2],n[m+4>>2]=n[k+4>>2],hn(B,l,s,c,cRe(m,f)|0,f),E=d}function lR(){var s=0,l=0;if(o[7856]|0||(A9(10172),tr(50,10172,U|0)|0,l=7856,n[l>>2]=1,n[l+4>>2]=0),!(Tr(10172)|0)){s=10172,l=s+36|0;do n[s>>2]=0,s=s+4|0;while((s|0)<(l|0));A9(10172)}return 10172}function lRe(s){return s=s|0,0}function cRe(s,l){s=s|0,l=l|0;var c=0,f=0,d=0,m=0,B=0,k=0,Q=0,M=0,O=0,q=0;return O=E,E=E+32|0,d=O+24|0,B=O+16|0,k=O,Q=O+8|0,m=n[s>>2]|0,f=n[s+4>>2]|0,n[k>>2]=m,n[k+4>>2]=f,q=lR()|0,M=q+24|0,s=gr(l,4)|0,n[Q>>2]=s,l=q+28|0,c=n[l>>2]|0,c>>>0<(n[q+32>>2]|0)>>>0?(n[B>>2]=m,n[B+4>>2]=f,n[d>>2]=n[B>>2],n[d+4>>2]=n[B+4>>2],u9(c,d,s),s=(n[l>>2]|0)+12|0,n[l>>2]=s):(uRe(M,k,Q),s=n[l>>2]|0),E=O,((s-(n[M>>2]|0)|0)/12|0)+-1|0}function u9(s,l,c){s=s|0,l=l|0,c=c|0;var f=0;f=n[l+4>>2]|0,n[s>>2]=n[l>>2],n[s+4>>2]=f,n[s+8>>2]=c}function uRe(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0,B=0,k=0,Q=0,M=0,O=0,q=0,se=0;if(M=E,E=E+48|0,f=M+32|0,B=M+24|0,k=M,Q=s+4|0,d=(((n[Q>>2]|0)-(n[s>>2]|0)|0)/12|0)+1|0,m=ARe(s)|0,m>>>0>>0)Jr(s);else{O=n[s>>2]|0,se=((n[s+8>>2]|0)-O|0)/12|0,q=se<<1,fRe(k,se>>>0>>1>>>0?q>>>0>>0?d:q:m,((n[Q>>2]|0)-O|0)/12|0,s+8|0),Q=k+8|0,m=n[Q>>2]|0,d=n[l+4>>2]|0,c=n[c>>2]|0,n[B>>2]=n[l>>2],n[B+4>>2]=d,n[f>>2]=n[B>>2],n[f+4>>2]=n[B+4>>2],u9(m,f,c),n[Q>>2]=(n[Q>>2]|0)+12,pRe(s,k),hRe(k),E=M;return}}function ARe(s){return s=s|0,357913941}function fRe(s,l,c,f){s=s|0,l=l|0,c=c|0,f=f|0;var d=0;n[s+12>>2]=0,n[s+16>>2]=f;do if(l)if(l>>>0>357913941)Rt();else{d=Kt(l*12|0)|0;break}else d=0;while(0);n[s>>2]=d,f=d+(c*12|0)|0,n[s+8>>2]=f,n[s+4>>2]=f,n[s+12>>2]=d+(l*12|0)}function pRe(s,l){s=s|0,l=l|0;var c=0,f=0,d=0,m=0,B=0;f=n[s>>2]|0,B=s+4|0,m=l+4|0,d=(n[B>>2]|0)-f|0,c=(n[m>>2]|0)+(((d|0)/-12|0)*12|0)|0,n[m>>2]=c,(d|0)>0?(Dr(c|0,f|0,d|0)|0,f=m,c=n[m>>2]|0):f=m,m=n[s>>2]|0,n[s>>2]=c,n[f>>2]=m,m=l+8|0,d=n[B>>2]|0,n[B>>2]=n[m>>2],n[m>>2]=d,m=s+8|0,B=l+12|0,s=n[m>>2]|0,n[m>>2]=n[B>>2],n[B>>2]=s,n[l>>2]=n[f>>2]}function hRe(s){s=s|0;var l=0,c=0,f=0;l=n[s+4>>2]|0,c=s+8|0,f=n[c>>2]|0,(f|0)!=(l|0)&&(n[c>>2]=f+(~(((f+-12-l|0)>>>0)/12|0)*12|0)),s=n[s>>2]|0,s|0&>(s)}function A9(s){s=s|0,mRe(s)}function gRe(s){s=s|0,dRe(s+24|0)}function dRe(s){s=s|0;var l=0,c=0,f=0;c=n[s>>2]|0,f=c,c|0&&(s=s+4|0,l=n[s>>2]|0,(l|0)!=(c|0)&&(n[s>>2]=l+(~(((l+-12-f|0)>>>0)/12|0)*12|0)),gt(c))}function mRe(s){s=s|0;var l=0;l=Kr()|0,Vr(s,2,3,l,yRe()|0,2),n[s+24>>2]=0,n[s+28>>2]=0,n[s+32>>2]=0}function yRe(){return 1380}function ERe(s,l,c,f){s=s|0,l=l|0,c=c|0,f=f|0;var d=0,m=0,B=0,k=0;d=E,E=E+16|0,m=d+8|0,B=d,k=CRe(s)|0,s=n[k+4>>2]|0,n[B>>2]=n[k>>2],n[B+4>>2]=s,n[m>>2]=n[B>>2],n[m+4>>2]=n[B+4>>2],wRe(l,m,c,f),E=d}function CRe(s){return s=s|0,(n[(lR()|0)+24>>2]|0)+(s*12|0)|0}function wRe(s,l,c,f){s=s|0,l=l|0,c=c|0,f=f|0;var d=0,m=0,B=0,k=0;k=E,E=E+16|0,m=k+1|0,B=k,d=n[l>>2]|0,l=n[l+4>>2]|0,s=s+(l>>1)|0,l&1&&(d=n[(n[s>>2]|0)+d>>2]|0),XA(m,c),m=ZA(m,c)|0,IRe(B,f),B=BRe(B,f)|0,Uw[d&15](s,m,B),E=k}function IRe(s,l){s=s|0,l=l|0}function BRe(s,l){return s=s|0,l=l|0,vRe(l)|0}function vRe(s){return s=s|0,(s|0)!=0|0}function DRe(s,l,c,f){s=s|0,l=l|0,c=c|0,f=f|0;var d=0,m=0;m=n[s>>2]|0,d=cR()|0,s=PRe(c)|0,hn(m,l,d,s,SRe(c,f)|0,f)}function cR(){var s=0,l=0;if(o[7864]|0||(p9(10208),tr(51,10208,U|0)|0,l=7864,n[l>>2]=1,n[l+4>>2]=0),!(Tr(10208)|0)){s=10208,l=s+36|0;do n[s>>2]=0,s=s+4|0;while((s|0)<(l|0));p9(10208)}return 10208}function PRe(s){return s=s|0,s|0}function SRe(s,l){s=s|0,l=l|0;var c=0,f=0,d=0,m=0,B=0,k=0,Q=0;return k=E,E=E+16|0,d=k,m=k+4|0,n[d>>2]=s,Q=cR()|0,B=Q+24|0,l=gr(l,4)|0,n[m>>2]=l,c=Q+28|0,f=n[c>>2]|0,f>>>0<(n[Q+32>>2]|0)>>>0?(f9(f,s,l),l=(n[c>>2]|0)+8|0,n[c>>2]=l):(bRe(B,d,m),l=n[c>>2]|0),E=k,(l-(n[B>>2]|0)>>3)+-1|0}function f9(s,l,c){s=s|0,l=l|0,c=c|0,n[s>>2]=l,n[s+4>>2]=c}function bRe(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0,B=0,k=0,Q=0,M=0,O=0;if(k=E,E=E+32|0,d=k,m=s+4|0,B=((n[m>>2]|0)-(n[s>>2]|0)>>3)+1|0,f=xRe(s)|0,f>>>0>>0)Jr(s);else{Q=n[s>>2]|0,O=(n[s+8>>2]|0)-Q|0,M=O>>2,kRe(d,O>>3>>>0>>1>>>0?M>>>0>>0?B:M:f,(n[m>>2]|0)-Q>>3,s+8|0),B=d+8|0,f9(n[B>>2]|0,n[l>>2]|0,n[c>>2]|0),n[B>>2]=(n[B>>2]|0)+8,QRe(s,d),FRe(d),E=k;return}}function xRe(s){return s=s|0,536870911}function kRe(s,l,c,f){s=s|0,l=l|0,c=c|0,f=f|0;var d=0;n[s+12>>2]=0,n[s+16>>2]=f;do if(l)if(l>>>0>536870911)Rt();else{d=Kt(l<<3)|0;break}else d=0;while(0);n[s>>2]=d,f=d+(c<<3)|0,n[s+8>>2]=f,n[s+4>>2]=f,n[s+12>>2]=d+(l<<3)}function QRe(s,l){s=s|0,l=l|0;var c=0,f=0,d=0,m=0,B=0;f=n[s>>2]|0,B=s+4|0,m=l+4|0,d=(n[B>>2]|0)-f|0,c=(n[m>>2]|0)+(0-(d>>3)<<3)|0,n[m>>2]=c,(d|0)>0?(Dr(c|0,f|0,d|0)|0,f=m,c=n[m>>2]|0):f=m,m=n[s>>2]|0,n[s>>2]=c,n[f>>2]=m,m=l+8|0,d=n[B>>2]|0,n[B>>2]=n[m>>2],n[m>>2]=d,m=s+8|0,B=l+12|0,s=n[m>>2]|0,n[m>>2]=n[B>>2],n[B>>2]=s,n[l>>2]=n[f>>2]}function FRe(s){s=s|0;var l=0,c=0,f=0;l=n[s+4>>2]|0,c=s+8|0,f=n[c>>2]|0,(f|0)!=(l|0)&&(n[c>>2]=f+(~((f+-8-l|0)>>>3)<<3)),s=n[s>>2]|0,s|0&>(s)}function p9(s){s=s|0,NRe(s)}function RRe(s){s=s|0,TRe(s+24|0)}function TRe(s){s=s|0;var l=0,c=0,f=0;c=n[s>>2]|0,f=c,c|0&&(s=s+4|0,l=n[s>>2]|0,(l|0)!=(c|0)&&(n[s>>2]=l+(~((l+-8-f|0)>>>3)<<3)),gt(c))}function NRe(s){s=s|0;var l=0;l=Kr()|0,Vr(s,1,24,l,LRe()|0,1),n[s+24>>2]=0,n[s+28>>2]=0,n[s+32>>2]=0}function LRe(){return 1392}function ORe(s,l){s=s|0,l=l|0,URe(n[(MRe(s)|0)>>2]|0,l)}function MRe(s){return s=s|0,(n[(cR()|0)+24>>2]|0)+(s<<3)|0}function URe(s,l){s=s|0,l=l|0;var c=0,f=0;c=E,E=E+16|0,f=c,r9(f,l),l=n9(f,l)|0,ef[s&127](l),E=c}function _Re(s,l,c,f){s=s|0,l=l|0,c=c|0,f=f|0;var d=0,m=0;m=n[s>>2]|0,d=uR()|0,s=HRe(c)|0,hn(m,l,d,s,jRe(c,f)|0,f)}function uR(){var s=0,l=0;if(o[7872]|0||(g9(10244),tr(52,10244,U|0)|0,l=7872,n[l>>2]=1,n[l+4>>2]=0),!(Tr(10244)|0)){s=10244,l=s+36|0;do n[s>>2]=0,s=s+4|0;while((s|0)<(l|0));g9(10244)}return 10244}function HRe(s){return s=s|0,s|0}function jRe(s,l){s=s|0,l=l|0;var c=0,f=0,d=0,m=0,B=0,k=0,Q=0;return k=E,E=E+16|0,d=k,m=k+4|0,n[d>>2]=s,Q=uR()|0,B=Q+24|0,l=gr(l,4)|0,n[m>>2]=l,c=Q+28|0,f=n[c>>2]|0,f>>>0<(n[Q+32>>2]|0)>>>0?(h9(f,s,l),l=(n[c>>2]|0)+8|0,n[c>>2]=l):(qRe(B,d,m),l=n[c>>2]|0),E=k,(l-(n[B>>2]|0)>>3)+-1|0}function h9(s,l,c){s=s|0,l=l|0,c=c|0,n[s>>2]=l,n[s+4>>2]=c}function qRe(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0,B=0,k=0,Q=0,M=0,O=0;if(k=E,E=E+32|0,d=k,m=s+4|0,B=((n[m>>2]|0)-(n[s>>2]|0)>>3)+1|0,f=GRe(s)|0,f>>>0>>0)Jr(s);else{Q=n[s>>2]|0,O=(n[s+8>>2]|0)-Q|0,M=O>>2,YRe(d,O>>3>>>0>>1>>>0?M>>>0>>0?B:M:f,(n[m>>2]|0)-Q>>3,s+8|0),B=d+8|0,h9(n[B>>2]|0,n[l>>2]|0,n[c>>2]|0),n[B>>2]=(n[B>>2]|0)+8,WRe(s,d),KRe(d),E=k;return}}function GRe(s){return s=s|0,536870911}function YRe(s,l,c,f){s=s|0,l=l|0,c=c|0,f=f|0;var d=0;n[s+12>>2]=0,n[s+16>>2]=f;do if(l)if(l>>>0>536870911)Rt();else{d=Kt(l<<3)|0;break}else d=0;while(0);n[s>>2]=d,f=d+(c<<3)|0,n[s+8>>2]=f,n[s+4>>2]=f,n[s+12>>2]=d+(l<<3)}function WRe(s,l){s=s|0,l=l|0;var c=0,f=0,d=0,m=0,B=0;f=n[s>>2]|0,B=s+4|0,m=l+4|0,d=(n[B>>2]|0)-f|0,c=(n[m>>2]|0)+(0-(d>>3)<<3)|0,n[m>>2]=c,(d|0)>0?(Dr(c|0,f|0,d|0)|0,f=m,c=n[m>>2]|0):f=m,m=n[s>>2]|0,n[s>>2]=c,n[f>>2]=m,m=l+8|0,d=n[B>>2]|0,n[B>>2]=n[m>>2],n[m>>2]=d,m=s+8|0,B=l+12|0,s=n[m>>2]|0,n[m>>2]=n[B>>2],n[B>>2]=s,n[l>>2]=n[f>>2]}function KRe(s){s=s|0;var l=0,c=0,f=0;l=n[s+4>>2]|0,c=s+8|0,f=n[c>>2]|0,(f|0)!=(l|0)&&(n[c>>2]=f+(~((f+-8-l|0)>>>3)<<3)),s=n[s>>2]|0,s|0&>(s)}function g9(s){s=s|0,JRe(s)}function VRe(s){s=s|0,zRe(s+24|0)}function zRe(s){s=s|0;var l=0,c=0,f=0;c=n[s>>2]|0,f=c,c|0&&(s=s+4|0,l=n[s>>2]|0,(l|0)!=(c|0)&&(n[s>>2]=l+(~((l+-8-f|0)>>>3)<<3)),gt(c))}function JRe(s){s=s|0;var l=0;l=Kr()|0,Vr(s,1,16,l,XRe()|0,0),n[s+24>>2]=0,n[s+28>>2]=0,n[s+32>>2]=0}function XRe(){return 1400}function ZRe(s){return s=s|0,eTe(n[($Re(s)|0)>>2]|0)|0}function $Re(s){return s=s|0,(n[(uR()|0)+24>>2]|0)+(s<<3)|0}function eTe(s){return s=s|0,tTe(CD[s&7]()|0)|0}function tTe(s){return s=s|0,s|0}function rTe(){var s=0;return o[7880]|0||(cTe(10280),tr(25,10280,U|0)|0,s=7880,n[s>>2]=1,n[s+4>>2]=0),10280}function nTe(s,l){s=s|0,l=l|0,n[s>>2]=iTe()|0,n[s+4>>2]=sTe()|0,n[s+12>>2]=l,n[s+8>>2]=oTe()|0,n[s+32>>2]=4}function iTe(){return 11711}function sTe(){return 1356}function oTe(){return aD()|0}function aTe(s,l,c,f){s=s|0,l=l|0,c=c|0,f=f|0,(Pp(f,896)|0)==512?c|0&&(lTe(c),gt(c)):l|0&&(Bg(l),gt(l))}function lTe(s){s=s|0,s=n[s+4>>2]|0,s|0&&bp(s)}function cTe(s){s=s|0,Ip(s)}function uTe(s){s=s|0,ATe(s,4920),fTe(s)|0,pTe(s)|0}function ATe(s,l){s=s|0,l=l|0;var c=0;c=O5()|0,n[s>>2]=c,TTe(c,l),Sp(n[s>>2]|0)}function fTe(s){s=s|0;var l=0;return l=n[s>>2]|0,bg(l,vTe()|0),s|0}function pTe(s){s=s|0;var l=0;return l=n[s>>2]|0,bg(l,hTe()|0),s|0}function hTe(){var s=0;return o[7888]|0||(d9(10328),tr(53,10328,U|0)|0,s=7888,n[s>>2]=1,n[s+4>>2]=0),Tr(10328)|0||d9(10328),10328}function bg(s,l){s=s|0,l=l|0,hn(s,0,l,0,0,0)}function d9(s){s=s|0,mTe(s),xg(s,10)}function gTe(s){s=s|0,dTe(s+24|0)}function dTe(s){s=s|0;var l=0,c=0,f=0;c=n[s>>2]|0,f=c,c|0&&(s=s+4|0,l=n[s>>2]|0,(l|0)!=(c|0)&&(n[s>>2]=l+(~((l+-8-f|0)>>>3)<<3)),gt(c))}function mTe(s){s=s|0;var l=0;l=Kr()|0,Vr(s,5,1,l,wTe()|0,2),n[s+24>>2]=0,n[s+28>>2]=0,n[s+32>>2]=0}function yTe(s,l,c){s=s|0,l=l|0,c=+c,ETe(s,l,c)}function xg(s,l){s=s|0,l=l|0,n[s+20>>2]=l}function ETe(s,l,c){s=s|0,l=l|0,c=+c;var f=0,d=0,m=0,B=0,k=0;f=E,E=E+16|0,m=f+8|0,k=f+13|0,d=f,B=f+12|0,XA(k,l),n[m>>2]=ZA(k,l)|0,ku(B,c),C[d>>3]=+Qu(B,c),CTe(s,m,d),E=f}function CTe(s,l,c){s=s|0,l=l|0,c=c|0,Y(s+8|0,n[l>>2]|0,+C[c>>3]),o[s+24>>0]=1}function wTe(){return 1404}function ITe(s,l){return s=s|0,l=+l,BTe(s,l)|0}function BTe(s,l){s=s|0,l=+l;var c=0,f=0,d=0,m=0,B=0,k=0,Q=0;return f=E,E=E+16|0,m=f+4|0,B=f+8|0,k=f,d=Wa(8)|0,c=d,Q=Kt(16)|0,XA(m,s),s=ZA(m,s)|0,ku(B,l),Y(Q,s,+Qu(B,l)),B=c+4|0,n[B>>2]=Q,s=Kt(8)|0,B=n[B>>2]|0,n[k>>2]=0,n[m>>2]=n[k>>2],zF(s,B,m),n[d>>2]=s,E=f,c|0}function vTe(){var s=0;return o[7896]|0||(m9(10364),tr(54,10364,U|0)|0,s=7896,n[s>>2]=1,n[s+4>>2]=0),Tr(10364)|0||m9(10364),10364}function m9(s){s=s|0,STe(s),xg(s,55)}function DTe(s){s=s|0,PTe(s+24|0)}function PTe(s){s=s|0;var l=0,c=0,f=0;c=n[s>>2]|0,f=c,c|0&&(s=s+4|0,l=n[s>>2]|0,(l|0)!=(c|0)&&(n[s>>2]=l+(~((l+-8-f|0)>>>3)<<3)),gt(c))}function STe(s){s=s|0;var l=0;l=Kr()|0,Vr(s,5,4,l,QTe()|0,0),n[s+24>>2]=0,n[s+28>>2]=0,n[s+32>>2]=0}function bTe(s){s=s|0,xTe(s)}function xTe(s){s=s|0,kTe(s)}function kTe(s){s=s|0,y9(s+8|0),o[s+24>>0]=1}function y9(s){s=s|0,n[s>>2]=0,C[s+8>>3]=0}function QTe(){return 1424}function FTe(){return RTe()|0}function RTe(){var s=0,l=0,c=0,f=0,d=0,m=0,B=0;return l=E,E=E+16|0,d=l+4|0,B=l,c=Wa(8)|0,s=c,f=Kt(16)|0,y9(f),m=s+4|0,n[m>>2]=f,f=Kt(8)|0,m=n[m>>2]|0,n[B>>2]=0,n[d>>2]=n[B>>2],zF(f,m,d),n[c>>2]=f,E=l,s|0}function TTe(s,l){s=s|0,l=l|0,n[s>>2]=NTe()|0,n[s+4>>2]=LTe()|0,n[s+12>>2]=l,n[s+8>>2]=OTe()|0,n[s+32>>2]=5}function NTe(){return 11710}function LTe(){return 1416}function OTe(){return lD()|0}function MTe(s,l,c,f){s=s|0,l=l|0,c=c|0,f=f|0,(Pp(f,896)|0)==512?c|0&&(UTe(c),gt(c)):l|0&>(l)}function UTe(s){s=s|0,s=n[s+4>>2]|0,s|0&&bp(s)}function lD(){var s=0;return o[7904]|0||(n[2600]=_Te()|0,n[2601]=0,s=7904,n[s>>2]=1,n[s+4>>2]=0),10400}function _Te(){return n[357]|0}function HTe(s){s=s|0,jTe(s,4926),qTe(s)|0}function jTe(s,l){s=s|0,l=l|0;var c=0;c=o5()|0,n[s>>2]=c,eNe(c,l),Sp(n[s>>2]|0)}function qTe(s){s=s|0;var l=0;return l=n[s>>2]|0,bg(l,GTe()|0),s|0}function GTe(){var s=0;return o[7912]|0||(E9(10412),tr(56,10412,U|0)|0,s=7912,n[s>>2]=1,n[s+4>>2]=0),Tr(10412)|0||E9(10412),10412}function E9(s){s=s|0,KTe(s),xg(s,57)}function YTe(s){s=s|0,WTe(s+24|0)}function WTe(s){s=s|0;var l=0,c=0,f=0;c=n[s>>2]|0,f=c,c|0&&(s=s+4|0,l=n[s>>2]|0,(l|0)!=(c|0)&&(n[s>>2]=l+(~((l+-8-f|0)>>>3)<<3)),gt(c))}function KTe(s){s=s|0;var l=0;l=Kr()|0,Vr(s,5,5,l,XTe()|0,0),n[s+24>>2]=0,n[s+28>>2]=0,n[s+32>>2]=0}function VTe(s){s=s|0,zTe(s)}function zTe(s){s=s|0,JTe(s)}function JTe(s){s=s|0;var l=0,c=0;l=s+8|0,c=l+48|0;do n[l>>2]=0,l=l+4|0;while((l|0)<(c|0));o[s+56>>0]=1}function XTe(){return 1432}function ZTe(){return $Te()|0}function $Te(){var s=0,l=0,c=0,f=0,d=0,m=0,B=0,k=0;B=E,E=E+16|0,s=B+4|0,l=B,c=Wa(8)|0,f=c,d=Kt(48)|0,m=d,k=m+48|0;do n[m>>2]=0,m=m+4|0;while((m|0)<(k|0));return m=f+4|0,n[m>>2]=d,k=Kt(8)|0,m=n[m>>2]|0,n[l>>2]=0,n[s>>2]=n[l>>2],a5(k,m,s),n[c>>2]=k,E=B,f|0}function eNe(s,l){s=s|0,l=l|0,n[s>>2]=tNe()|0,n[s+4>>2]=rNe()|0,n[s+12>>2]=l,n[s+8>>2]=nNe()|0,n[s+32>>2]=6}function tNe(){return 11704}function rNe(){return 1436}function nNe(){return lD()|0}function iNe(s,l,c,f){s=s|0,l=l|0,c=c|0,f=f|0,(Pp(f,896)|0)==512?c|0&&(sNe(c),gt(c)):l|0&>(l)}function sNe(s){s=s|0,s=n[s+4>>2]|0,s|0&&bp(s)}function oNe(s){s=s|0,aNe(s,4933),lNe(s)|0,cNe(s)|0}function aNe(s,l){s=s|0,l=l|0;var c=0;c=RNe()|0,n[s>>2]=c,TNe(c,l),Sp(n[s>>2]|0)}function lNe(s){s=s|0;var l=0;return l=n[s>>2]|0,bg(l,BNe()|0),s|0}function cNe(s){s=s|0;var l=0;return l=n[s>>2]|0,bg(l,uNe()|0),s|0}function uNe(){var s=0;return o[7920]|0||(C9(10452),tr(58,10452,U|0)|0,s=7920,n[s>>2]=1,n[s+4>>2]=0),Tr(10452)|0||C9(10452),10452}function C9(s){s=s|0,pNe(s),xg(s,1)}function ANe(s){s=s|0,fNe(s+24|0)}function fNe(s){s=s|0;var l=0,c=0,f=0;c=n[s>>2]|0,f=c,c|0&&(s=s+4|0,l=n[s>>2]|0,(l|0)!=(c|0)&&(n[s>>2]=l+(~((l+-8-f|0)>>>3)<<3)),gt(c))}function pNe(s){s=s|0;var l=0;l=Kr()|0,Vr(s,5,1,l,mNe()|0,2),n[s+24>>2]=0,n[s+28>>2]=0,n[s+32>>2]=0}function hNe(s,l,c){s=s|0,l=+l,c=+c,gNe(s,l,c)}function gNe(s,l,c){s=s|0,l=+l,c=+c;var f=0,d=0,m=0,B=0,k=0;f=E,E=E+32|0,m=f+8|0,k=f+17|0,d=f,B=f+16|0,ku(k,l),C[m>>3]=+Qu(k,l),ku(B,c),C[d>>3]=+Qu(B,c),dNe(s,m,d),E=f}function dNe(s,l,c){s=s|0,l=l|0,c=c|0,w9(s+8|0,+C[l>>3],+C[c>>3]),o[s+24>>0]=1}function w9(s,l,c){s=s|0,l=+l,c=+c,C[s>>3]=l,C[s+8>>3]=c}function mNe(){return 1472}function yNe(s,l){return s=+s,l=+l,ENe(s,l)|0}function ENe(s,l){s=+s,l=+l;var c=0,f=0,d=0,m=0,B=0,k=0,Q=0;return f=E,E=E+16|0,B=f+4|0,k=f+8|0,Q=f,d=Wa(8)|0,c=d,m=Kt(16)|0,ku(B,s),s=+Qu(B,s),ku(k,l),w9(m,s,+Qu(k,l)),k=c+4|0,n[k>>2]=m,m=Kt(8)|0,k=n[k>>2]|0,n[Q>>2]=0,n[B>>2]=n[Q>>2],I9(m,k,B),n[d>>2]=m,E=f,c|0}function I9(s,l,c){s=s|0,l=l|0,c=c|0,n[s>>2]=l,c=Kt(16)|0,n[c+4>>2]=0,n[c+8>>2]=0,n[c>>2]=1452,n[c+12>>2]=l,n[s+4>>2]=c}function CNe(s){s=s|0,Vm(s),gt(s)}function wNe(s){s=s|0,s=n[s+12>>2]|0,s|0&>(s)}function INe(s){s=s|0,gt(s)}function BNe(){var s=0;return o[7928]|0||(B9(10488),tr(59,10488,U|0)|0,s=7928,n[s>>2]=1,n[s+4>>2]=0),Tr(10488)|0||B9(10488),10488}function B9(s){s=s|0,PNe(s),xg(s,60)}function vNe(s){s=s|0,DNe(s+24|0)}function DNe(s){s=s|0;var l=0,c=0,f=0;c=n[s>>2]|0,f=c,c|0&&(s=s+4|0,l=n[s>>2]|0,(l|0)!=(c|0)&&(n[s>>2]=l+(~((l+-8-f|0)>>>3)<<3)),gt(c))}function PNe(s){s=s|0;var l=0;l=Kr()|0,Vr(s,5,6,l,kNe()|0,0),n[s+24>>2]=0,n[s+28>>2]=0,n[s+32>>2]=0}function SNe(s){s=s|0,bNe(s)}function bNe(s){s=s|0,xNe(s)}function xNe(s){s=s|0,v9(s+8|0),o[s+24>>0]=1}function v9(s){s=s|0,n[s>>2]=0,n[s+4>>2]=0,n[s+8>>2]=0,n[s+12>>2]=0}function kNe(){return 1492}function QNe(){return FNe()|0}function FNe(){var s=0,l=0,c=0,f=0,d=0,m=0,B=0;return l=E,E=E+16|0,d=l+4|0,B=l,c=Wa(8)|0,s=c,f=Kt(16)|0,v9(f),m=s+4|0,n[m>>2]=f,f=Kt(8)|0,m=n[m>>2]|0,n[B>>2]=0,n[d>>2]=n[B>>2],I9(f,m,d),n[c>>2]=f,E=l,s|0}function RNe(){var s=0;return o[7936]|0||(_Ne(10524),tr(25,10524,U|0)|0,s=7936,n[s>>2]=1,n[s+4>>2]=0),10524}function TNe(s,l){s=s|0,l=l|0,n[s>>2]=NNe()|0,n[s+4>>2]=LNe()|0,n[s+12>>2]=l,n[s+8>>2]=ONe()|0,n[s+32>>2]=7}function NNe(){return 11700}function LNe(){return 1484}function ONe(){return lD()|0}function MNe(s,l,c,f){s=s|0,l=l|0,c=c|0,f=f|0,(Pp(f,896)|0)==512?c|0&&(UNe(c),gt(c)):l|0&>(l)}function UNe(s){s=s|0,s=n[s+4>>2]|0,s|0&&bp(s)}function _Ne(s){s=s|0,Ip(s)}function HNe(s,l,c){s=s|0,l=l|0,c=c|0,s=pn(l)|0,l=jNe(c)|0,c=qNe(c,0)|0,ELe(s,l,c,AR()|0,0)}function jNe(s){return s=s|0,s|0}function qNe(s,l){s=s|0,l=l|0;var c=0,f=0,d=0,m=0,B=0,k=0,Q=0;return k=E,E=E+16|0,d=k,m=k+4|0,n[d>>2]=s,Q=AR()|0,B=Q+24|0,l=gr(l,4)|0,n[m>>2]=l,c=Q+28|0,f=n[c>>2]|0,f>>>0<(n[Q+32>>2]|0)>>>0?(P9(f,s,l),l=(n[c>>2]|0)+8|0,n[c>>2]=l):(JNe(B,d,m),l=n[c>>2]|0),E=k,(l-(n[B>>2]|0)>>3)+-1|0}function AR(){var s=0,l=0;if(o[7944]|0||(D9(10568),tr(61,10568,U|0)|0,l=7944,n[l>>2]=1,n[l+4>>2]=0),!(Tr(10568)|0)){s=10568,l=s+36|0;do n[s>>2]=0,s=s+4|0;while((s|0)<(l|0));D9(10568)}return 10568}function D9(s){s=s|0,WNe(s)}function GNe(s){s=s|0,YNe(s+24|0)}function YNe(s){s=s|0;var l=0,c=0,f=0;c=n[s>>2]|0,f=c,c|0&&(s=s+4|0,l=n[s>>2]|0,(l|0)!=(c|0)&&(n[s>>2]=l+(~((l+-8-f|0)>>>3)<<3)),gt(c))}function WNe(s){s=s|0;var l=0;l=Kr()|0,Vr(s,1,17,l,v5()|0,0),n[s+24>>2]=0,n[s+28>>2]=0,n[s+32>>2]=0}function KNe(s){return s=s|0,zNe(n[(VNe(s)|0)>>2]|0)|0}function VNe(s){return s=s|0,(n[(AR()|0)+24>>2]|0)+(s<<3)|0}function zNe(s){return s=s|0,oD(CD[s&7]()|0)|0}function P9(s,l,c){s=s|0,l=l|0,c=c|0,n[s>>2]=l,n[s+4>>2]=c}function JNe(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0,B=0,k=0,Q=0,M=0,O=0;if(k=E,E=E+32|0,d=k,m=s+4|0,B=((n[m>>2]|0)-(n[s>>2]|0)>>3)+1|0,f=XNe(s)|0,f>>>0>>0)Jr(s);else{Q=n[s>>2]|0,O=(n[s+8>>2]|0)-Q|0,M=O>>2,ZNe(d,O>>3>>>0>>1>>>0?M>>>0>>0?B:M:f,(n[m>>2]|0)-Q>>3,s+8|0),B=d+8|0,P9(n[B>>2]|0,n[l>>2]|0,n[c>>2]|0),n[B>>2]=(n[B>>2]|0)+8,$Ne(s,d),eLe(d),E=k;return}}function XNe(s){return s=s|0,536870911}function ZNe(s,l,c,f){s=s|0,l=l|0,c=c|0,f=f|0;var d=0;n[s+12>>2]=0,n[s+16>>2]=f;do if(l)if(l>>>0>536870911)Rt();else{d=Kt(l<<3)|0;break}else d=0;while(0);n[s>>2]=d,f=d+(c<<3)|0,n[s+8>>2]=f,n[s+4>>2]=f,n[s+12>>2]=d+(l<<3)}function $Ne(s,l){s=s|0,l=l|0;var c=0,f=0,d=0,m=0,B=0;f=n[s>>2]|0,B=s+4|0,m=l+4|0,d=(n[B>>2]|0)-f|0,c=(n[m>>2]|0)+(0-(d>>3)<<3)|0,n[m>>2]=c,(d|0)>0?(Dr(c|0,f|0,d|0)|0,f=m,c=n[m>>2]|0):f=m,m=n[s>>2]|0,n[s>>2]=c,n[f>>2]=m,m=l+8|0,d=n[B>>2]|0,n[B>>2]=n[m>>2],n[m>>2]=d,m=s+8|0,B=l+12|0,s=n[m>>2]|0,n[m>>2]=n[B>>2],n[B>>2]=s,n[l>>2]=n[f>>2]}function eLe(s){s=s|0;var l=0,c=0,f=0;l=n[s+4>>2]|0,c=s+8|0,f=n[c>>2]|0,(f|0)!=(l|0)&&(n[c>>2]=f+(~((f+-8-l|0)>>>3)<<3)),s=n[s>>2]|0,s|0&>(s)}function tLe(){rLe()}function rLe(){nLe(10604)}function nLe(s){s=s|0,iLe(s,4955)}function iLe(s,l){s=s|0,l=l|0;var c=0;c=sLe()|0,n[s>>2]=c,oLe(c,l),Sp(n[s>>2]|0)}function sLe(){var s=0;return o[7952]|0||(gLe(10612),tr(25,10612,U|0)|0,s=7952,n[s>>2]=1,n[s+4>>2]=0),10612}function oLe(s,l){s=s|0,l=l|0,n[s>>2]=uLe()|0,n[s+4>>2]=ALe()|0,n[s+12>>2]=l,n[s+8>>2]=fLe()|0,n[s+32>>2]=8}function Sp(s){s=s|0;var l=0,c=0;l=E,E=E+16|0,c=l,qm()|0,n[c>>2]=s,aLe(10608,c),E=l}function qm(){return o[11714]|0||(n[2652]=0,tr(62,10608,U|0)|0,o[11714]=1),10608}function aLe(s,l){s=s|0,l=l|0;var c=0;c=Kt(8)|0,n[c+4>>2]=n[l>>2],n[c>>2]=n[s>>2],n[s>>2]=c}function lLe(s){s=s|0,cLe(s)}function cLe(s){s=s|0;var l=0,c=0;if(l=n[s>>2]|0,l|0)do c=l,l=n[l>>2]|0,gt(c);while((l|0)!=0);n[s>>2]=0}function uLe(){return 11715}function ALe(){return 1496}function fLe(){return aD()|0}function pLe(s,l,c,f){s=s|0,l=l|0,c=c|0,f=f|0,(Pp(f,896)|0)==512?c|0&&(hLe(c),gt(c)):l|0&>(l)}function hLe(s){s=s|0,s=n[s+4>>2]|0,s|0&&bp(s)}function gLe(s){s=s|0,Ip(s)}function dLe(s,l){s=s|0,l=l|0;var c=0,f=0;qm()|0,c=n[2652]|0;e:do if(c|0){for(;f=n[c+4>>2]|0,!(f|0&&(a7(fR(f)|0,s)|0)==0);)if(c=n[c>>2]|0,!c)break e;mLe(f,l)}while(0)}function fR(s){return s=s|0,n[s+12>>2]|0}function mLe(s,l){s=s|0,l=l|0;var c=0;s=s+36|0,c=n[s>>2]|0,c|0&&(jA(c),gt(c)),c=Kt(4)|0,e5(c,l),n[s>>2]=c}function pR(){return o[11716]|0||(n[2664]=0,tr(63,10656,U|0)|0,o[11716]=1),10656}function S9(){var s=0;return o[11717]|0?s=n[2665]|0:(yLe(),n[2665]=1504,o[11717]=1,s=1504),s|0}function yLe(){o[11740]|0||(o[11718]=gr(gr(8,0)|0,0)|0,o[11719]=gr(gr(0,0)|0,0)|0,o[11720]=gr(gr(0,16)|0,0)|0,o[11721]=gr(gr(8,0)|0,0)|0,o[11722]=gr(gr(0,0)|0,0)|0,o[11723]=gr(gr(8,0)|0,0)|0,o[11724]=gr(gr(0,0)|0,0)|0,o[11725]=gr(gr(8,0)|0,0)|0,o[11726]=gr(gr(0,0)|0,0)|0,o[11727]=gr(gr(8,0)|0,0)|0,o[11728]=gr(gr(0,0)|0,0)|0,o[11729]=gr(gr(0,0)|0,32)|0,o[11730]=gr(gr(0,0)|0,32)|0,o[11740]=1)}function b9(){return 1572}function ELe(s,l,c,f,d){s=s|0,l=l|0,c=c|0,f=f|0,d=d|0;var m=0,B=0,k=0,Q=0,M=0,O=0;m=E,E=E+32|0,O=m+16|0,M=m+12|0,Q=m+8|0,k=m+4|0,B=m,n[O>>2]=s,n[M>>2]=l,n[Q>>2]=c,n[k>>2]=f,n[B>>2]=d,pR()|0,CLe(10656,O,M,Q,k,B),E=m}function CLe(s,l,c,f,d,m){s=s|0,l=l|0,c=c|0,f=f|0,d=d|0,m=m|0;var B=0;B=Kt(24)|0,n5(B+4|0,n[l>>2]|0,n[c>>2]|0,n[f>>2]|0,n[d>>2]|0,n[m>>2]|0),n[B>>2]=n[s>>2],n[s>>2]=B}function x9(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0,B=0,k=0,Q=0,M=0,O=0,q=0,se=0,Ge=0,Me=0,Qe=0,et=0,Xe=0,at=0;if(at=E,E=E+32|0,Me=at+20|0,Qe=at+8|0,et=at+4|0,Xe=at,l=n[l>>2]|0,l|0){Ge=Me+4|0,Q=Me+8|0,M=Qe+4|0,O=Qe+8|0,q=Qe+8|0,se=Me+8|0;do{if(B=l+4|0,k=hR(B)|0,k|0){if(d=Rw(k)|0,n[Me>>2]=0,n[Ge>>2]=0,n[Q>>2]=0,f=(Tw(k)|0)+1|0,wLe(Me,f),f|0)for(;f=f+-1|0,bc(Qe,n[d>>2]|0),m=n[Ge>>2]|0,m>>>0<(n[se>>2]|0)>>>0?(n[m>>2]=n[Qe>>2],n[Ge>>2]=(n[Ge>>2]|0)+4):gR(Me,Qe),f;)d=d+4|0;f=Nw(k)|0,n[Qe>>2]=0,n[M>>2]=0,n[O>>2]=0;e:do if(n[f>>2]|0)for(d=0,m=0;;){if((d|0)==(m|0)?ILe(Qe,f):(n[d>>2]=n[f>>2],n[M>>2]=(n[M>>2]|0)+4),f=f+4|0,!(n[f>>2]|0))break e;d=n[M>>2]|0,m=n[q>>2]|0}while(0);n[et>>2]=cD(B)|0,n[Xe>>2]=Tr(k)|0,BLe(c,s,et,Xe,Me,Qe),dR(Qe),$A(Me)}l=n[l>>2]|0}while((l|0)!=0)}E=at}function hR(s){return s=s|0,n[s+12>>2]|0}function Rw(s){return s=s|0,n[s+12>>2]|0}function Tw(s){return s=s|0,n[s+16>>2]|0}function wLe(s,l){s=s|0,l=l|0;var c=0,f=0,d=0;d=E,E=E+32|0,c=d,f=n[s>>2]|0,(n[s+8>>2]|0)-f>>2>>>0>>0&&(O9(c,l,(n[s+4>>2]|0)-f>>2,s+8|0),M9(s,c),U9(c)),E=d}function gR(s,l){s=s|0,l=l|0;var c=0,f=0,d=0,m=0,B=0,k=0,Q=0,M=0;if(B=E,E=E+32|0,c=B,f=s+4|0,d=((n[f>>2]|0)-(n[s>>2]|0)>>2)+1|0,m=L9(s)|0,m>>>0>>0)Jr(s);else{k=n[s>>2]|0,M=(n[s+8>>2]|0)-k|0,Q=M>>1,O9(c,M>>2>>>0>>1>>>0?Q>>>0>>0?d:Q:m,(n[f>>2]|0)-k>>2,s+8|0),m=c+8|0,n[n[m>>2]>>2]=n[l>>2],n[m>>2]=(n[m>>2]|0)+4,M9(s,c),U9(c),E=B;return}}function Nw(s){return s=s|0,n[s+8>>2]|0}function ILe(s,l){s=s|0,l=l|0;var c=0,f=0,d=0,m=0,B=0,k=0,Q=0,M=0;if(B=E,E=E+32|0,c=B,f=s+4|0,d=((n[f>>2]|0)-(n[s>>2]|0)>>2)+1|0,m=N9(s)|0,m>>>0>>0)Jr(s);else{k=n[s>>2]|0,M=(n[s+8>>2]|0)-k|0,Q=M>>1,jLe(c,M>>2>>>0>>1>>>0?Q>>>0>>0?d:Q:m,(n[f>>2]|0)-k>>2,s+8|0),m=c+8|0,n[n[m>>2]>>2]=n[l>>2],n[m>>2]=(n[m>>2]|0)+4,qLe(s,c),GLe(c),E=B;return}}function cD(s){return s=s|0,n[s>>2]|0}function BLe(s,l,c,f,d,m){s=s|0,l=l|0,c=c|0,f=f|0,d=d|0,m=m|0,vLe(s,l,c,f,d,m)}function dR(s){s=s|0;var l=0,c=0,f=0;c=n[s>>2]|0,f=c,c|0&&(s=s+4|0,l=n[s>>2]|0,(l|0)!=(c|0)&&(n[s>>2]=l+(~((l+-4-f|0)>>>2)<<2)),gt(c))}function $A(s){s=s|0;var l=0,c=0,f=0;c=n[s>>2]|0,f=c,c|0&&(s=s+4|0,l=n[s>>2]|0,(l|0)!=(c|0)&&(n[s>>2]=l+(~((l+-4-f|0)>>>2)<<2)),gt(c))}function vLe(s,l,c,f,d,m){s=s|0,l=l|0,c=c|0,f=f|0,d=d|0,m=m|0;var B=0,k=0,Q=0,M=0,O=0,q=0;B=E,E=E+48|0,O=B+40|0,k=B+32|0,q=B+24|0,Q=B+12|0,M=B,Ka(k),s=da(s)|0,n[q>>2]=n[l>>2],c=n[c>>2]|0,f=n[f>>2]|0,mR(Q,d),DLe(M,m),n[O>>2]=n[q>>2],PLe(s,O,c,f,Q,M),dR(M),$A(Q),Va(k),E=B}function mR(s,l){s=s|0,l=l|0;var c=0,f=0;n[s>>2]=0,n[s+4>>2]=0,n[s+8>>2]=0,c=l+4|0,f=(n[c>>2]|0)-(n[l>>2]|0)>>2,f|0&&(_Le(s,f),HLe(s,n[l>>2]|0,n[c>>2]|0,f))}function DLe(s,l){s=s|0,l=l|0;var c=0,f=0;n[s>>2]=0,n[s+4>>2]=0,n[s+8>>2]=0,c=l+4|0,f=(n[c>>2]|0)-(n[l>>2]|0)>>2,f|0&&(MLe(s,f),ULe(s,n[l>>2]|0,n[c>>2]|0,f))}function PLe(s,l,c,f,d,m){s=s|0,l=l|0,c=c|0,f=f|0,d=d|0,m=m|0;var B=0,k=0,Q=0,M=0,O=0,q=0;B=E,E=E+32|0,O=B+28|0,q=B+24|0,k=B+12|0,Q=B,M=Pl(SLe()|0)|0,n[q>>2]=n[l>>2],n[O>>2]=n[q>>2],l=kg(O)|0,c=k9(c)|0,f=yR(f)|0,n[k>>2]=n[d>>2],O=d+4|0,n[k+4>>2]=n[O>>2],q=d+8|0,n[k+8>>2]=n[q>>2],n[q>>2]=0,n[O>>2]=0,n[d>>2]=0,d=ER(k)|0,n[Q>>2]=n[m>>2],O=m+4|0,n[Q+4>>2]=n[O>>2],q=m+8|0,n[Q+8>>2]=n[q>>2],n[q>>2]=0,n[O>>2]=0,n[m>>2]=0,ao(0,M|0,s|0,l|0,c|0,f|0,d|0,bLe(Q)|0)|0,dR(Q),$A(k),E=B}function SLe(){var s=0;return o[7968]|0||(LLe(10708),s=7968,n[s>>2]=1,n[s+4>>2]=0),10708}function kg(s){return s=s|0,F9(s)|0}function k9(s){return s=s|0,Q9(s)|0}function yR(s){return s=s|0,oD(s)|0}function ER(s){return s=s|0,kLe(s)|0}function bLe(s){return s=s|0,xLe(s)|0}function xLe(s){s=s|0;var l=0,c=0,f=0;if(f=(n[s+4>>2]|0)-(n[s>>2]|0)|0,c=f>>2,f=Wa(f+4|0)|0,n[f>>2]=c,c|0){l=0;do n[f+4+(l<<2)>>2]=Q9(n[(n[s>>2]|0)+(l<<2)>>2]|0)|0,l=l+1|0;while((l|0)!=(c|0))}return f|0}function Q9(s){return s=s|0,s|0}function kLe(s){s=s|0;var l=0,c=0,f=0;if(f=(n[s+4>>2]|0)-(n[s>>2]|0)|0,c=f>>2,f=Wa(f+4|0)|0,n[f>>2]=c,c|0){l=0;do n[f+4+(l<<2)>>2]=F9((n[s>>2]|0)+(l<<2)|0)|0,l=l+1|0;while((l|0)!=(c|0))}return f|0}function F9(s){s=s|0;var l=0,c=0,f=0,d=0;return d=E,E=E+32|0,l=d+12|0,c=d,f=QF(R9()|0)|0,f?(FF(l,f),RF(c,l),fUe(s,c),s=TF(l)|0):s=QLe(s)|0,E=d,s|0}function R9(){var s=0;return o[7960]|0||(NLe(10664),tr(25,10664,U|0)|0,s=7960,n[s>>2]=1,n[s+4>>2]=0),10664}function QLe(s){s=s|0;var l=0,c=0,f=0,d=0,m=0,B=0,k=0;return c=E,E=E+16|0,d=c+4|0,B=c,f=Wa(8)|0,l=f,k=Kt(4)|0,n[k>>2]=n[s>>2],m=l+4|0,n[m>>2]=k,s=Kt(8)|0,m=n[m>>2]|0,n[B>>2]=0,n[d>>2]=n[B>>2],T9(s,m,d),n[f>>2]=s,E=c,l|0}function T9(s,l,c){s=s|0,l=l|0,c=c|0,n[s>>2]=l,c=Kt(16)|0,n[c+4>>2]=0,n[c+8>>2]=0,n[c>>2]=1656,n[c+12>>2]=l,n[s+4>>2]=c}function FLe(s){s=s|0,Vm(s),gt(s)}function RLe(s){s=s|0,s=n[s+12>>2]|0,s|0&>(s)}function TLe(s){s=s|0,gt(s)}function NLe(s){s=s|0,Ip(s)}function LLe(s){s=s|0,Sl(s,OLe()|0,5)}function OLe(){return 1676}function MLe(s,l){s=s|0,l=l|0;var c=0;if((N9(s)|0)>>>0>>0&&Jr(s),l>>>0>1073741823)Rt();else{c=Kt(l<<2)|0,n[s+4>>2]=c,n[s>>2]=c,n[s+8>>2]=c+(l<<2);return}}function ULe(s,l,c,f){s=s|0,l=l|0,c=c|0,f=f|0,f=s+4|0,s=c-l|0,(s|0)>0&&(Dr(n[f>>2]|0,l|0,s|0)|0,n[f>>2]=(n[f>>2]|0)+(s>>>2<<2))}function N9(s){return s=s|0,1073741823}function _Le(s,l){s=s|0,l=l|0;var c=0;if((L9(s)|0)>>>0>>0&&Jr(s),l>>>0>1073741823)Rt();else{c=Kt(l<<2)|0,n[s+4>>2]=c,n[s>>2]=c,n[s+8>>2]=c+(l<<2);return}}function HLe(s,l,c,f){s=s|0,l=l|0,c=c|0,f=f|0,f=s+4|0,s=c-l|0,(s|0)>0&&(Dr(n[f>>2]|0,l|0,s|0)|0,n[f>>2]=(n[f>>2]|0)+(s>>>2<<2))}function L9(s){return s=s|0,1073741823}function jLe(s,l,c,f){s=s|0,l=l|0,c=c|0,f=f|0;var d=0;n[s+12>>2]=0,n[s+16>>2]=f;do if(l)if(l>>>0>1073741823)Rt();else{d=Kt(l<<2)|0;break}else d=0;while(0);n[s>>2]=d,f=d+(c<<2)|0,n[s+8>>2]=f,n[s+4>>2]=f,n[s+12>>2]=d+(l<<2)}function qLe(s,l){s=s|0,l=l|0;var c=0,f=0,d=0,m=0,B=0;f=n[s>>2]|0,B=s+4|0,m=l+4|0,d=(n[B>>2]|0)-f|0,c=(n[m>>2]|0)+(0-(d>>2)<<2)|0,n[m>>2]=c,(d|0)>0?(Dr(c|0,f|0,d|0)|0,f=m,c=n[m>>2]|0):f=m,m=n[s>>2]|0,n[s>>2]=c,n[f>>2]=m,m=l+8|0,d=n[B>>2]|0,n[B>>2]=n[m>>2],n[m>>2]=d,m=s+8|0,B=l+12|0,s=n[m>>2]|0,n[m>>2]=n[B>>2],n[B>>2]=s,n[l>>2]=n[f>>2]}function GLe(s){s=s|0;var l=0,c=0,f=0;l=n[s+4>>2]|0,c=s+8|0,f=n[c>>2]|0,(f|0)!=(l|0)&&(n[c>>2]=f+(~((f+-4-l|0)>>>2)<<2)),s=n[s>>2]|0,s|0&>(s)}function O9(s,l,c,f){s=s|0,l=l|0,c=c|0,f=f|0;var d=0;n[s+12>>2]=0,n[s+16>>2]=f;do if(l)if(l>>>0>1073741823)Rt();else{d=Kt(l<<2)|0;break}else d=0;while(0);n[s>>2]=d,f=d+(c<<2)|0,n[s+8>>2]=f,n[s+4>>2]=f,n[s+12>>2]=d+(l<<2)}function M9(s,l){s=s|0,l=l|0;var c=0,f=0,d=0,m=0,B=0;f=n[s>>2]|0,B=s+4|0,m=l+4|0,d=(n[B>>2]|0)-f|0,c=(n[m>>2]|0)+(0-(d>>2)<<2)|0,n[m>>2]=c,(d|0)>0?(Dr(c|0,f|0,d|0)|0,f=m,c=n[m>>2]|0):f=m,m=n[s>>2]|0,n[s>>2]=c,n[f>>2]=m,m=l+8|0,d=n[B>>2]|0,n[B>>2]=n[m>>2],n[m>>2]=d,m=s+8|0,B=l+12|0,s=n[m>>2]|0,n[m>>2]=n[B>>2],n[B>>2]=s,n[l>>2]=n[f>>2]}function U9(s){s=s|0;var l=0,c=0,f=0;l=n[s+4>>2]|0,c=s+8|0,f=n[c>>2]|0,(f|0)!=(l|0)&&(n[c>>2]=f+(~((f+-4-l|0)>>>2)<<2)),s=n[s>>2]|0,s|0&>(s)}function YLe(s,l,c,f,d){s=s|0,l=l|0,c=c|0,f=f|0,d=d|0;var m=0,B=0,k=0,Q=0,M=0,O=0,q=0,se=0,Ge=0,Me=0,Qe=0;if(Qe=E,E=E+32|0,O=Qe+20|0,q=Qe+12|0,M=Qe+16|0,se=Qe+4|0,Ge=Qe,Me=Qe+8|0,k=S9()|0,m=n[k>>2]|0,B=n[m>>2]|0,B|0)for(Q=n[k+8>>2]|0,k=n[k+4>>2]|0;bc(O,B),WLe(s,O,k,Q),m=m+4|0,B=n[m>>2]|0,B;)Q=Q+1|0,k=k+1|0;if(m=b9()|0,B=n[m>>2]|0,B|0)do bc(O,B),n[q>>2]=n[m+4>>2],KLe(l,O,q),m=m+8|0,B=n[m>>2]|0;while((B|0)!=0);if(m=n[(qm()|0)>>2]|0,m|0)do l=n[m+4>>2]|0,bc(O,n[(Gm(l)|0)>>2]|0),n[q>>2]=fR(l)|0,VLe(c,O,q),m=n[m>>2]|0;while((m|0)!=0);if(bc(M,0),m=pR()|0,n[O>>2]=n[M>>2],x9(O,m,d),m=n[(qm()|0)>>2]|0,m|0){s=O+4|0,l=O+8|0,c=O+8|0;do{if(Q=n[m+4>>2]|0,bc(q,n[(Gm(Q)|0)>>2]|0),zLe(se,_9(Q)|0),B=n[se>>2]|0,B|0){n[O>>2]=0,n[s>>2]=0,n[l>>2]=0;do bc(Ge,n[(Gm(n[B+4>>2]|0)|0)>>2]|0),k=n[s>>2]|0,k>>>0<(n[c>>2]|0)>>>0?(n[k>>2]=n[Ge>>2],n[s>>2]=(n[s>>2]|0)+4):gR(O,Ge),B=n[B>>2]|0;while((B|0)!=0);JLe(f,q,O),$A(O)}n[Me>>2]=n[q>>2],M=H9(Q)|0,n[O>>2]=n[Me>>2],x9(O,M,d),c5(se),m=n[m>>2]|0}while((m|0)!=0)}E=Qe}function WLe(s,l,c,f){s=s|0,l=l|0,c=c|0,f=f|0,lOe(s,l,c,f)}function KLe(s,l,c){s=s|0,l=l|0,c=c|0,aOe(s,l,c)}function Gm(s){return s=s|0,s|0}function VLe(s,l,c){s=s|0,l=l|0,c=c|0,nOe(s,l,c)}function _9(s){return s=s|0,s+16|0}function zLe(s,l){s=s|0,l=l|0;var c=0,f=0,d=0,m=0,B=0,k=0,Q=0;if(m=E,E=E+16|0,d=m+8|0,c=m,n[s>>2]=0,f=n[l>>2]|0,n[d>>2]=f,n[c>>2]=s,c=rOe(c)|0,f|0){if(f=Kt(12)|0,B=(j9(d)|0)+4|0,s=n[B+4>>2]|0,l=f+4|0,n[l>>2]=n[B>>2],n[l+4>>2]=s,l=n[n[d>>2]>>2]|0,n[d>>2]=l,!l)s=f;else for(l=f;s=Kt(12)|0,Q=(j9(d)|0)+4|0,k=n[Q+4>>2]|0,B=s+4|0,n[B>>2]=n[Q>>2],n[B+4>>2]=k,n[l>>2]=s,B=n[n[d>>2]>>2]|0,n[d>>2]=B,B;)l=s;n[s>>2]=n[c>>2],n[c>>2]=f}E=m}function JLe(s,l,c){s=s|0,l=l|0,c=c|0,XLe(s,l,c)}function H9(s){return s=s|0,s+24|0}function XLe(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0,B=0,k=0;f=E,E=E+32|0,B=f+24|0,d=f+16|0,k=f+12|0,m=f,Ka(d),s=da(s)|0,n[k>>2]=n[l>>2],mR(m,c),n[B>>2]=n[k>>2],ZLe(s,B,m),$A(m),Va(d),E=f}function ZLe(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0,B=0,k=0;f=E,E=E+32|0,B=f+16|0,k=f+12|0,d=f,m=Pl($Le()|0)|0,n[k>>2]=n[l>>2],n[B>>2]=n[k>>2],l=kg(B)|0,n[d>>2]=n[c>>2],B=c+4|0,n[d+4>>2]=n[B>>2],k=c+8|0,n[d+8>>2]=n[k>>2],n[k>>2]=0,n[B>>2]=0,n[c>>2]=0,oo(0,m|0,s|0,l|0,ER(d)|0)|0,$A(d),E=f}function $Le(){var s=0;return o[7976]|0||(eOe(10720),s=7976,n[s>>2]=1,n[s+4>>2]=0),10720}function eOe(s){s=s|0,Sl(s,tOe()|0,2)}function tOe(){return 1732}function rOe(s){return s=s|0,n[s>>2]|0}function j9(s){return s=s|0,n[s>>2]|0}function nOe(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0,B=0;f=E,E=E+32|0,m=f+16|0,d=f+8|0,B=f,Ka(d),s=da(s)|0,n[B>>2]=n[l>>2],c=n[c>>2]|0,n[m>>2]=n[B>>2],q9(s,m,c),Va(d),E=f}function q9(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0,B=0;f=E,E=E+16|0,m=f+4|0,B=f,d=Pl(iOe()|0)|0,n[B>>2]=n[l>>2],n[m>>2]=n[B>>2],l=kg(m)|0,oo(0,d|0,s|0,l|0,k9(c)|0)|0,E=f}function iOe(){var s=0;return o[7984]|0||(sOe(10732),s=7984,n[s>>2]=1,n[s+4>>2]=0),10732}function sOe(s){s=s|0,Sl(s,oOe()|0,2)}function oOe(){return 1744}function aOe(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0,B=0;f=E,E=E+32|0,m=f+16|0,d=f+8|0,B=f,Ka(d),s=da(s)|0,n[B>>2]=n[l>>2],c=n[c>>2]|0,n[m>>2]=n[B>>2],q9(s,m,c),Va(d),E=f}function lOe(s,l,c,f){s=s|0,l=l|0,c=c|0,f=f|0;var d=0,m=0,B=0,k=0;d=E,E=E+32|0,B=d+16|0,m=d+8|0,k=d,Ka(m),s=da(s)|0,n[k>>2]=n[l>>2],c=o[c>>0]|0,f=o[f>>0]|0,n[B>>2]=n[k>>2],cOe(s,B,c,f),Va(m),E=d}function cOe(s,l,c,f){s=s|0,l=l|0,c=c|0,f=f|0;var d=0,m=0,B=0,k=0;d=E,E=E+16|0,B=d+4|0,k=d,m=Pl(uOe()|0)|0,n[k>>2]=n[l>>2],n[B>>2]=n[k>>2],l=kg(B)|0,c=Ym(c)|0,pc(0,m|0,s|0,l|0,c|0,Ym(f)|0)|0,E=d}function uOe(){var s=0;return o[7992]|0||(fOe(10744),s=7992,n[s>>2]=1,n[s+4>>2]=0),10744}function Ym(s){return s=s|0,AOe(s)|0}function AOe(s){return s=s|0,s&255|0}function fOe(s){s=s|0,Sl(s,pOe()|0,3)}function pOe(){return 1756}function hOe(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0,B=0,k=0,Q=0,M=0,O=0,q=0,se=0;switch(se=E,E=E+32|0,k=se+8|0,Q=se+4|0,M=se+20|0,O=se,MF(s,0),f=AUe(l)|0,n[k>>2]=0,q=k+4|0,n[q>>2]=0,n[k+8>>2]=0,f<<24>>24){case 0:{o[M>>0]=0,gOe(Q,c,M),uD(s,Q)|0,qA(Q);break}case 8:{q=DR(l)|0,o[M>>0]=8,bc(O,n[q+4>>2]|0),dOe(Q,c,M,O,q+8|0),uD(s,Q)|0,qA(Q);break}case 9:{if(m=DR(l)|0,l=n[m+4>>2]|0,l|0)for(B=k+8|0,d=m+12|0;l=l+-1|0,bc(Q,n[d>>2]|0),f=n[q>>2]|0,f>>>0<(n[B>>2]|0)>>>0?(n[f>>2]=n[Q>>2],n[q>>2]=(n[q>>2]|0)+4):gR(k,Q),l;)d=d+4|0;o[M>>0]=9,bc(O,n[m+8>>2]|0),mOe(Q,c,M,O,k),uD(s,Q)|0,qA(Q);break}default:q=DR(l)|0,o[M>>0]=f,bc(O,n[q+4>>2]|0),yOe(Q,c,M,O),uD(s,Q)|0,qA(Q)}$A(k),E=se}function gOe(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0;f=E,E=E+16|0,d=f,Ka(d),l=da(l)|0,QOe(s,l,o[c>>0]|0),Va(d),E=f}function uD(s,l){s=s|0,l=l|0;var c=0;return c=n[s>>2]|0,c|0&&PA(c|0),n[s>>2]=n[l>>2],n[l>>2]=0,s|0}function dOe(s,l,c,f,d){s=s|0,l=l|0,c=c|0,f=f|0,d=d|0;var m=0,B=0,k=0,Q=0;m=E,E=E+32|0,k=m+16|0,B=m+8|0,Q=m,Ka(B),l=da(l)|0,c=o[c>>0]|0,n[Q>>2]=n[f>>2],d=n[d>>2]|0,n[k>>2]=n[Q>>2],SOe(s,l,c,k,d),Va(B),E=m}function mOe(s,l,c,f,d){s=s|0,l=l|0,c=c|0,f=f|0,d=d|0;var m=0,B=0,k=0,Q=0,M=0;m=E,E=E+32|0,Q=m+24|0,B=m+16|0,M=m+12|0,k=m,Ka(B),l=da(l)|0,c=o[c>>0]|0,n[M>>2]=n[f>>2],mR(k,d),n[Q>>2]=n[M>>2],BOe(s,l,c,Q,k),$A(k),Va(B),E=m}function yOe(s,l,c,f){s=s|0,l=l|0,c=c|0,f=f|0;var d=0,m=0,B=0,k=0;d=E,E=E+32|0,B=d+16|0,m=d+8|0,k=d,Ka(m),l=da(l)|0,c=o[c>>0]|0,n[k>>2]=n[f>>2],n[B>>2]=n[k>>2],EOe(s,l,c,B),Va(m),E=d}function EOe(s,l,c,f){s=s|0,l=l|0,c=c|0,f=f|0;var d=0,m=0,B=0,k=0;d=E,E=E+16|0,m=d+4|0,k=d,B=Pl(COe()|0)|0,c=Ym(c)|0,n[k>>2]=n[f>>2],n[m>>2]=n[k>>2],AD(s,oo(0,B|0,l|0,c|0,kg(m)|0)|0),E=d}function COe(){var s=0;return o[8e3]|0||(wOe(10756),s=8e3,n[s>>2]=1,n[s+4>>2]=0),10756}function AD(s,l){s=s|0,l=l|0,MF(s,l)}function wOe(s){s=s|0,Sl(s,IOe()|0,2)}function IOe(){return 1772}function BOe(s,l,c,f,d){s=s|0,l=l|0,c=c|0,f=f|0,d=d|0;var m=0,B=0,k=0,Q=0,M=0;m=E,E=E+32|0,Q=m+16|0,M=m+12|0,B=m,k=Pl(vOe()|0)|0,c=Ym(c)|0,n[M>>2]=n[f>>2],n[Q>>2]=n[M>>2],f=kg(Q)|0,n[B>>2]=n[d>>2],Q=d+4|0,n[B+4>>2]=n[Q>>2],M=d+8|0,n[B+8>>2]=n[M>>2],n[M>>2]=0,n[Q>>2]=0,n[d>>2]=0,AD(s,pc(0,k|0,l|0,c|0,f|0,ER(B)|0)|0),$A(B),E=m}function vOe(){var s=0;return o[8008]|0||(DOe(10768),s=8008,n[s>>2]=1,n[s+4>>2]=0),10768}function DOe(s){s=s|0,Sl(s,POe()|0,3)}function POe(){return 1784}function SOe(s,l,c,f,d){s=s|0,l=l|0,c=c|0,f=f|0,d=d|0;var m=0,B=0,k=0,Q=0;m=E,E=E+16|0,k=m+4|0,Q=m,B=Pl(bOe()|0)|0,c=Ym(c)|0,n[Q>>2]=n[f>>2],n[k>>2]=n[Q>>2],f=kg(k)|0,AD(s,pc(0,B|0,l|0,c|0,f|0,yR(d)|0)|0),E=m}function bOe(){var s=0;return o[8016]|0||(xOe(10780),s=8016,n[s>>2]=1,n[s+4>>2]=0),10780}function xOe(s){s=s|0,Sl(s,kOe()|0,3)}function kOe(){return 1800}function QOe(s,l,c){s=s|0,l=l|0,c=c|0;var f=0;f=Pl(FOe()|0)|0,AD(s,Qn(0,f|0,l|0,Ym(c)|0)|0)}function FOe(){var s=0;return o[8024]|0||(ROe(10792),s=8024,n[s>>2]=1,n[s+4>>2]=0),10792}function ROe(s){s=s|0,Sl(s,TOe()|0,1)}function TOe(){return 1816}function NOe(){LOe(),OOe(),MOe()}function LOe(){n[2702]=m7(65536)|0}function OOe(){iMe(10856)}function MOe(){UOe(10816)}function UOe(s){s=s|0,_Oe(s,5044),HOe(s)|0}function _Oe(s,l){s=s|0,l=l|0;var c=0;c=R9()|0,n[s>>2]=c,ZOe(c,l),Sp(n[s>>2]|0)}function HOe(s){s=s|0;var l=0;return l=n[s>>2]|0,bg(l,jOe()|0),s|0}function jOe(){var s=0;return o[8032]|0||(G9(10820),tr(64,10820,U|0)|0,s=8032,n[s>>2]=1,n[s+4>>2]=0),Tr(10820)|0||G9(10820),10820}function G9(s){s=s|0,YOe(s),xg(s,25)}function qOe(s){s=s|0,GOe(s+24|0)}function GOe(s){s=s|0;var l=0,c=0,f=0;c=n[s>>2]|0,f=c,c|0&&(s=s+4|0,l=n[s>>2]|0,(l|0)!=(c|0)&&(n[s>>2]=l+(~((l+-8-f|0)>>>3)<<3)),gt(c))}function YOe(s){s=s|0;var l=0;l=Kr()|0,Vr(s,5,18,l,zOe()|0,1),n[s+24>>2]=0,n[s+28>>2]=0,n[s+32>>2]=0}function WOe(s,l){s=s|0,l=l|0,KOe(s,l)}function KOe(s,l){s=s|0,l=l|0;var c=0,f=0,d=0;c=E,E=E+16|0,f=c,d=c+4|0,Pg(d,l),n[f>>2]=Sg(d,l)|0,VOe(s,f),E=c}function VOe(s,l){s=s|0,l=l|0,Y9(s+4|0,n[l>>2]|0),o[s+8>>0]=1}function Y9(s,l){s=s|0,l=l|0,n[s>>2]=l}function zOe(){return 1824}function JOe(s){return s=s|0,XOe(s)|0}function XOe(s){s=s|0;var l=0,c=0,f=0,d=0,m=0,B=0,k=0;return c=E,E=E+16|0,d=c+4|0,B=c,f=Wa(8)|0,l=f,k=Kt(4)|0,Pg(d,s),Y9(k,Sg(d,s)|0),m=l+4|0,n[m>>2]=k,s=Kt(8)|0,m=n[m>>2]|0,n[B>>2]=0,n[d>>2]=n[B>>2],T9(s,m,d),n[f>>2]=s,E=c,l|0}function Wa(s){s=s|0;var l=0,c=0;return s=s+7&-8,s>>>0<=32768&&(l=n[2701]|0,s>>>0<=(65536-l|0)>>>0)?(c=(n[2702]|0)+l|0,n[2701]=l+s,s=c):(s=m7(s+8|0)|0,n[s>>2]=n[2703],n[2703]=s,s=s+8|0),s|0}function ZOe(s,l){s=s|0,l=l|0,n[s>>2]=$Oe()|0,n[s+4>>2]=eMe()|0,n[s+12>>2]=l,n[s+8>>2]=tMe()|0,n[s+32>>2]=9}function $Oe(){return 11744}function eMe(){return 1832}function tMe(){return lD()|0}function rMe(s,l,c,f){s=s|0,l=l|0,c=c|0,f=f|0,(Pp(f,896)|0)==512?c|0&&(nMe(c),gt(c)):l|0&>(l)}function nMe(s){s=s|0,s=n[s+4>>2]|0,s|0&&bp(s)}function iMe(s){s=s|0,sMe(s,5052),oMe(s)|0,aMe(s,5058,26)|0,lMe(s,5069,1)|0,cMe(s,5077,10)|0,uMe(s,5087,19)|0,AMe(s,5094,27)|0}function sMe(s,l){s=s|0,l=l|0;var c=0;c=nUe()|0,n[s>>2]=c,iUe(c,l),Sp(n[s>>2]|0)}function oMe(s){s=s|0;var l=0;return l=n[s>>2]|0,bg(l,q4e()|0),s|0}function aMe(s,l,c){return s=s|0,l=l|0,c=c|0,D4e(s,pn(l)|0,c,0),s|0}function lMe(s,l,c){return s=s|0,l=l|0,c=c|0,u4e(s,pn(l)|0,c,0),s|0}function cMe(s,l,c){return s=s|0,l=l|0,c=c|0,jMe(s,pn(l)|0,c,0),s|0}function uMe(s,l,c){return s=s|0,l=l|0,c=c|0,SMe(s,pn(l)|0,c,0),s|0}function W9(s,l){s=s|0,l=l|0;var c=0,f=0;e:for(;;){for(c=n[2703]|0;;){if((c|0)==(l|0))break e;if(f=n[c>>2]|0,n[2703]=f,!c)c=f;else break}gt(c)}n[2701]=s}function AMe(s,l,c){return s=s|0,l=l|0,c=c|0,fMe(s,pn(l)|0,c,0),s|0}function fMe(s,l,c,f){s=s|0,l=l|0,c=c|0,f=f|0;var d=0,m=0;m=n[s>>2]|0,d=CR()|0,s=pMe(c)|0,hn(m,l,d,s,hMe(c,f)|0,f)}function CR(){var s=0,l=0;if(o[8040]|0||(V9(10860),tr(65,10860,U|0)|0,l=8040,n[l>>2]=1,n[l+4>>2]=0),!(Tr(10860)|0)){s=10860,l=s+36|0;do n[s>>2]=0,s=s+4|0;while((s|0)<(l|0));V9(10860)}return 10860}function pMe(s){return s=s|0,s|0}function hMe(s,l){s=s|0,l=l|0;var c=0,f=0,d=0,m=0,B=0,k=0,Q=0;return k=E,E=E+16|0,d=k,m=k+4|0,n[d>>2]=s,Q=CR()|0,B=Q+24|0,l=gr(l,4)|0,n[m>>2]=l,c=Q+28|0,f=n[c>>2]|0,f>>>0<(n[Q+32>>2]|0)>>>0?(K9(f,s,l),l=(n[c>>2]|0)+8|0,n[c>>2]=l):(gMe(B,d,m),l=n[c>>2]|0),E=k,(l-(n[B>>2]|0)>>3)+-1|0}function K9(s,l,c){s=s|0,l=l|0,c=c|0,n[s>>2]=l,n[s+4>>2]=c}function gMe(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0,B=0,k=0,Q=0,M=0,O=0;if(k=E,E=E+32|0,d=k,m=s+4|0,B=((n[m>>2]|0)-(n[s>>2]|0)>>3)+1|0,f=dMe(s)|0,f>>>0>>0)Jr(s);else{Q=n[s>>2]|0,O=(n[s+8>>2]|0)-Q|0,M=O>>2,mMe(d,O>>3>>>0>>1>>>0?M>>>0>>0?B:M:f,(n[m>>2]|0)-Q>>3,s+8|0),B=d+8|0,K9(n[B>>2]|0,n[l>>2]|0,n[c>>2]|0),n[B>>2]=(n[B>>2]|0)+8,yMe(s,d),EMe(d),E=k;return}}function dMe(s){return s=s|0,536870911}function mMe(s,l,c,f){s=s|0,l=l|0,c=c|0,f=f|0;var d=0;n[s+12>>2]=0,n[s+16>>2]=f;do if(l)if(l>>>0>536870911)Rt();else{d=Kt(l<<3)|0;break}else d=0;while(0);n[s>>2]=d,f=d+(c<<3)|0,n[s+8>>2]=f,n[s+4>>2]=f,n[s+12>>2]=d+(l<<3)}function yMe(s,l){s=s|0,l=l|0;var c=0,f=0,d=0,m=0,B=0;f=n[s>>2]|0,B=s+4|0,m=l+4|0,d=(n[B>>2]|0)-f|0,c=(n[m>>2]|0)+(0-(d>>3)<<3)|0,n[m>>2]=c,(d|0)>0?(Dr(c|0,f|0,d|0)|0,f=m,c=n[m>>2]|0):f=m,m=n[s>>2]|0,n[s>>2]=c,n[f>>2]=m,m=l+8|0,d=n[B>>2]|0,n[B>>2]=n[m>>2],n[m>>2]=d,m=s+8|0,B=l+12|0,s=n[m>>2]|0,n[m>>2]=n[B>>2],n[B>>2]=s,n[l>>2]=n[f>>2]}function EMe(s){s=s|0;var l=0,c=0,f=0;l=n[s+4>>2]|0,c=s+8|0,f=n[c>>2]|0,(f|0)!=(l|0)&&(n[c>>2]=f+(~((f+-8-l|0)>>>3)<<3)),s=n[s>>2]|0,s|0&>(s)}function V9(s){s=s|0,IMe(s)}function CMe(s){s=s|0,wMe(s+24|0)}function wMe(s){s=s|0;var l=0,c=0,f=0;c=n[s>>2]|0,f=c,c|0&&(s=s+4|0,l=n[s>>2]|0,(l|0)!=(c|0)&&(n[s>>2]=l+(~((l+-8-f|0)>>>3)<<3)),gt(c))}function IMe(s){s=s|0;var l=0;l=Kr()|0,Vr(s,1,11,l,BMe()|0,2),n[s+24>>2]=0,n[s+28>>2]=0,n[s+32>>2]=0}function BMe(){return 1840}function vMe(s,l,c){s=s|0,l=l|0,c=c|0,PMe(n[(DMe(s)|0)>>2]|0,l,c)}function DMe(s){return s=s|0,(n[(CR()|0)+24>>2]|0)+(s<<3)|0}function PMe(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0;f=E,E=E+16|0,m=f+1|0,d=f,Pg(m,l),l=Sg(m,l)|0,Pg(d,c),c=Sg(d,c)|0,tf[s&31](l,c),E=f}function SMe(s,l,c,f){s=s|0,l=l|0,c=c|0,f=f|0;var d=0,m=0;m=n[s>>2]|0,d=wR()|0,s=bMe(c)|0,hn(m,l,d,s,xMe(c,f)|0,f)}function wR(){var s=0,l=0;if(o[8048]|0||(J9(10896),tr(66,10896,U|0)|0,l=8048,n[l>>2]=1,n[l+4>>2]=0),!(Tr(10896)|0)){s=10896,l=s+36|0;do n[s>>2]=0,s=s+4|0;while((s|0)<(l|0));J9(10896)}return 10896}function bMe(s){return s=s|0,s|0}function xMe(s,l){s=s|0,l=l|0;var c=0,f=0,d=0,m=0,B=0,k=0,Q=0;return k=E,E=E+16|0,d=k,m=k+4|0,n[d>>2]=s,Q=wR()|0,B=Q+24|0,l=gr(l,4)|0,n[m>>2]=l,c=Q+28|0,f=n[c>>2]|0,f>>>0<(n[Q+32>>2]|0)>>>0?(z9(f,s,l),l=(n[c>>2]|0)+8|0,n[c>>2]=l):(kMe(B,d,m),l=n[c>>2]|0),E=k,(l-(n[B>>2]|0)>>3)+-1|0}function z9(s,l,c){s=s|0,l=l|0,c=c|0,n[s>>2]=l,n[s+4>>2]=c}function kMe(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0,B=0,k=0,Q=0,M=0,O=0;if(k=E,E=E+32|0,d=k,m=s+4|0,B=((n[m>>2]|0)-(n[s>>2]|0)>>3)+1|0,f=QMe(s)|0,f>>>0>>0)Jr(s);else{Q=n[s>>2]|0,O=(n[s+8>>2]|0)-Q|0,M=O>>2,FMe(d,O>>3>>>0>>1>>>0?M>>>0>>0?B:M:f,(n[m>>2]|0)-Q>>3,s+8|0),B=d+8|0,z9(n[B>>2]|0,n[l>>2]|0,n[c>>2]|0),n[B>>2]=(n[B>>2]|0)+8,RMe(s,d),TMe(d),E=k;return}}function QMe(s){return s=s|0,536870911}function FMe(s,l,c,f){s=s|0,l=l|0,c=c|0,f=f|0;var d=0;n[s+12>>2]=0,n[s+16>>2]=f;do if(l)if(l>>>0>536870911)Rt();else{d=Kt(l<<3)|0;break}else d=0;while(0);n[s>>2]=d,f=d+(c<<3)|0,n[s+8>>2]=f,n[s+4>>2]=f,n[s+12>>2]=d+(l<<3)}function RMe(s,l){s=s|0,l=l|0;var c=0,f=0,d=0,m=0,B=0;f=n[s>>2]|0,B=s+4|0,m=l+4|0,d=(n[B>>2]|0)-f|0,c=(n[m>>2]|0)+(0-(d>>3)<<3)|0,n[m>>2]=c,(d|0)>0?(Dr(c|0,f|0,d|0)|0,f=m,c=n[m>>2]|0):f=m,m=n[s>>2]|0,n[s>>2]=c,n[f>>2]=m,m=l+8|0,d=n[B>>2]|0,n[B>>2]=n[m>>2],n[m>>2]=d,m=s+8|0,B=l+12|0,s=n[m>>2]|0,n[m>>2]=n[B>>2],n[B>>2]=s,n[l>>2]=n[f>>2]}function TMe(s){s=s|0;var l=0,c=0,f=0;l=n[s+4>>2]|0,c=s+8|0,f=n[c>>2]|0,(f|0)!=(l|0)&&(n[c>>2]=f+(~((f+-8-l|0)>>>3)<<3)),s=n[s>>2]|0,s|0&>(s)}function J9(s){s=s|0,OMe(s)}function NMe(s){s=s|0,LMe(s+24|0)}function LMe(s){s=s|0;var l=0,c=0,f=0;c=n[s>>2]|0,f=c,c|0&&(s=s+4|0,l=n[s>>2]|0,(l|0)!=(c|0)&&(n[s>>2]=l+(~((l+-8-f|0)>>>3)<<3)),gt(c))}function OMe(s){s=s|0;var l=0;l=Kr()|0,Vr(s,1,11,l,MMe()|0,1),n[s+24>>2]=0,n[s+28>>2]=0,n[s+32>>2]=0}function MMe(){return 1852}function UMe(s,l){return s=s|0,l=l|0,HMe(n[(_Me(s)|0)>>2]|0,l)|0}function _Me(s){return s=s|0,(n[(wR()|0)+24>>2]|0)+(s<<3)|0}function HMe(s,l){s=s|0,l=l|0;var c=0,f=0;return c=E,E=E+16|0,f=c,Pg(f,l),l=Sg(f,l)|0,l=oD(Tg[s&31](l)|0)|0,E=c,l|0}function jMe(s,l,c,f){s=s|0,l=l|0,c=c|0,f=f|0;var d=0,m=0;m=n[s>>2]|0,d=IR()|0,s=qMe(c)|0,hn(m,l,d,s,GMe(c,f)|0,f)}function IR(){var s=0,l=0;if(o[8056]|0||(Z9(10932),tr(67,10932,U|0)|0,l=8056,n[l>>2]=1,n[l+4>>2]=0),!(Tr(10932)|0)){s=10932,l=s+36|0;do n[s>>2]=0,s=s+4|0;while((s|0)<(l|0));Z9(10932)}return 10932}function qMe(s){return s=s|0,s|0}function GMe(s,l){s=s|0,l=l|0;var c=0,f=0,d=0,m=0,B=0,k=0,Q=0;return k=E,E=E+16|0,d=k,m=k+4|0,n[d>>2]=s,Q=IR()|0,B=Q+24|0,l=gr(l,4)|0,n[m>>2]=l,c=Q+28|0,f=n[c>>2]|0,f>>>0<(n[Q+32>>2]|0)>>>0?(X9(f,s,l),l=(n[c>>2]|0)+8|0,n[c>>2]=l):(YMe(B,d,m),l=n[c>>2]|0),E=k,(l-(n[B>>2]|0)>>3)+-1|0}function X9(s,l,c){s=s|0,l=l|0,c=c|0,n[s>>2]=l,n[s+4>>2]=c}function YMe(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0,B=0,k=0,Q=0,M=0,O=0;if(k=E,E=E+32|0,d=k,m=s+4|0,B=((n[m>>2]|0)-(n[s>>2]|0)>>3)+1|0,f=WMe(s)|0,f>>>0>>0)Jr(s);else{Q=n[s>>2]|0,O=(n[s+8>>2]|0)-Q|0,M=O>>2,KMe(d,O>>3>>>0>>1>>>0?M>>>0>>0?B:M:f,(n[m>>2]|0)-Q>>3,s+8|0),B=d+8|0,X9(n[B>>2]|0,n[l>>2]|0,n[c>>2]|0),n[B>>2]=(n[B>>2]|0)+8,VMe(s,d),zMe(d),E=k;return}}function WMe(s){return s=s|0,536870911}function KMe(s,l,c,f){s=s|0,l=l|0,c=c|0,f=f|0;var d=0;n[s+12>>2]=0,n[s+16>>2]=f;do if(l)if(l>>>0>536870911)Rt();else{d=Kt(l<<3)|0;break}else d=0;while(0);n[s>>2]=d,f=d+(c<<3)|0,n[s+8>>2]=f,n[s+4>>2]=f,n[s+12>>2]=d+(l<<3)}function VMe(s,l){s=s|0,l=l|0;var c=0,f=0,d=0,m=0,B=0;f=n[s>>2]|0,B=s+4|0,m=l+4|0,d=(n[B>>2]|0)-f|0,c=(n[m>>2]|0)+(0-(d>>3)<<3)|0,n[m>>2]=c,(d|0)>0?(Dr(c|0,f|0,d|0)|0,f=m,c=n[m>>2]|0):f=m,m=n[s>>2]|0,n[s>>2]=c,n[f>>2]=m,m=l+8|0,d=n[B>>2]|0,n[B>>2]=n[m>>2],n[m>>2]=d,m=s+8|0,B=l+12|0,s=n[m>>2]|0,n[m>>2]=n[B>>2],n[B>>2]=s,n[l>>2]=n[f>>2]}function zMe(s){s=s|0;var l=0,c=0,f=0;l=n[s+4>>2]|0,c=s+8|0,f=n[c>>2]|0,(f|0)!=(l|0)&&(n[c>>2]=f+(~((f+-8-l|0)>>>3)<<3)),s=n[s>>2]|0,s|0&>(s)}function Z9(s){s=s|0,ZMe(s)}function JMe(s){s=s|0,XMe(s+24|0)}function XMe(s){s=s|0;var l=0,c=0,f=0;c=n[s>>2]|0,f=c,c|0&&(s=s+4|0,l=n[s>>2]|0,(l|0)!=(c|0)&&(n[s>>2]=l+(~((l+-8-f|0)>>>3)<<3)),gt(c))}function ZMe(s){s=s|0;var l=0;l=Kr()|0,Vr(s,1,7,l,$Me()|0,2),n[s+24>>2]=0,n[s+28>>2]=0,n[s+32>>2]=0}function $Me(){return 1860}function e4e(s,l,c){return s=s|0,l=l|0,c=c|0,r4e(n[(t4e(s)|0)>>2]|0,l,c)|0}function t4e(s){return s=s|0,(n[(IR()|0)+24>>2]|0)+(s<<3)|0}function r4e(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0,B=0,k=0,Q=0;return f=E,E=E+32|0,B=f+12|0,m=f+8|0,k=f,Q=f+16|0,d=f+4|0,n4e(Q,l),i4e(k,Q,l),Bp(d,c),c=vp(d,c)|0,n[B>>2]=n[k>>2],Uw[s&15](m,B,c),c=s4e(m)|0,qA(m),Dp(d),E=f,c|0}function n4e(s,l){s=s|0,l=l|0}function i4e(s,l,c){s=s|0,l=l|0,c=c|0,o4e(s,c)}function s4e(s){return s=s|0,da(s)|0}function o4e(s,l){s=s|0,l=l|0;var c=0,f=0,d=0;d=E,E=E+16|0,c=d,f=l,f&1?(a4e(c,0),ii(f|0,c|0)|0,l4e(s,c),c4e(c)):n[s>>2]=n[l>>2],E=d}function a4e(s,l){s=s|0,l=l|0,t5(s,l),n[s+4>>2]=0,o[s+8>>0]=0}function l4e(s,l){s=s|0,l=l|0,n[s>>2]=n[l+4>>2]}function c4e(s){s=s|0,o[s+8>>0]=0}function u4e(s,l,c,f){s=s|0,l=l|0,c=c|0,f=f|0;var d=0,m=0;m=n[s>>2]|0,d=BR()|0,s=A4e(c)|0,hn(m,l,d,s,f4e(c,f)|0,f)}function BR(){var s=0,l=0;if(o[8064]|0||(e7(10968),tr(68,10968,U|0)|0,l=8064,n[l>>2]=1,n[l+4>>2]=0),!(Tr(10968)|0)){s=10968,l=s+36|0;do n[s>>2]=0,s=s+4|0;while((s|0)<(l|0));e7(10968)}return 10968}function A4e(s){return s=s|0,s|0}function f4e(s,l){s=s|0,l=l|0;var c=0,f=0,d=0,m=0,B=0,k=0,Q=0;return k=E,E=E+16|0,d=k,m=k+4|0,n[d>>2]=s,Q=BR()|0,B=Q+24|0,l=gr(l,4)|0,n[m>>2]=l,c=Q+28|0,f=n[c>>2]|0,f>>>0<(n[Q+32>>2]|0)>>>0?($9(f,s,l),l=(n[c>>2]|0)+8|0,n[c>>2]=l):(p4e(B,d,m),l=n[c>>2]|0),E=k,(l-(n[B>>2]|0)>>3)+-1|0}function $9(s,l,c){s=s|0,l=l|0,c=c|0,n[s>>2]=l,n[s+4>>2]=c}function p4e(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0,B=0,k=0,Q=0,M=0,O=0;if(k=E,E=E+32|0,d=k,m=s+4|0,B=((n[m>>2]|0)-(n[s>>2]|0)>>3)+1|0,f=h4e(s)|0,f>>>0>>0)Jr(s);else{Q=n[s>>2]|0,O=(n[s+8>>2]|0)-Q|0,M=O>>2,g4e(d,O>>3>>>0>>1>>>0?M>>>0>>0?B:M:f,(n[m>>2]|0)-Q>>3,s+8|0),B=d+8|0,$9(n[B>>2]|0,n[l>>2]|0,n[c>>2]|0),n[B>>2]=(n[B>>2]|0)+8,d4e(s,d),m4e(d),E=k;return}}function h4e(s){return s=s|0,536870911}function g4e(s,l,c,f){s=s|0,l=l|0,c=c|0,f=f|0;var d=0;n[s+12>>2]=0,n[s+16>>2]=f;do if(l)if(l>>>0>536870911)Rt();else{d=Kt(l<<3)|0;break}else d=0;while(0);n[s>>2]=d,f=d+(c<<3)|0,n[s+8>>2]=f,n[s+4>>2]=f,n[s+12>>2]=d+(l<<3)}function d4e(s,l){s=s|0,l=l|0;var c=0,f=0,d=0,m=0,B=0;f=n[s>>2]|0,B=s+4|0,m=l+4|0,d=(n[B>>2]|0)-f|0,c=(n[m>>2]|0)+(0-(d>>3)<<3)|0,n[m>>2]=c,(d|0)>0?(Dr(c|0,f|0,d|0)|0,f=m,c=n[m>>2]|0):f=m,m=n[s>>2]|0,n[s>>2]=c,n[f>>2]=m,m=l+8|0,d=n[B>>2]|0,n[B>>2]=n[m>>2],n[m>>2]=d,m=s+8|0,B=l+12|0,s=n[m>>2]|0,n[m>>2]=n[B>>2],n[B>>2]=s,n[l>>2]=n[f>>2]}function m4e(s){s=s|0;var l=0,c=0,f=0;l=n[s+4>>2]|0,c=s+8|0,f=n[c>>2]|0,(f|0)!=(l|0)&&(n[c>>2]=f+(~((f+-8-l|0)>>>3)<<3)),s=n[s>>2]|0,s|0&>(s)}function e7(s){s=s|0,C4e(s)}function y4e(s){s=s|0,E4e(s+24|0)}function E4e(s){s=s|0;var l=0,c=0,f=0;c=n[s>>2]|0,f=c,c|0&&(s=s+4|0,l=n[s>>2]|0,(l|0)!=(c|0)&&(n[s>>2]=l+(~((l+-8-f|0)>>>3)<<3)),gt(c))}function C4e(s){s=s|0;var l=0;l=Kr()|0,Vr(s,1,1,l,w4e()|0,5),n[s+24>>2]=0,n[s+28>>2]=0,n[s+32>>2]=0}function w4e(){return 1872}function I4e(s,l,c,f,d,m){s=s|0,l=l|0,c=c|0,f=f|0,d=d|0,m=m|0,v4e(n[(B4e(s)|0)>>2]|0,l,c,f,d,m)}function B4e(s){return s=s|0,(n[(BR()|0)+24>>2]|0)+(s<<3)|0}function v4e(s,l,c,f,d,m){s=s|0,l=l|0,c=c|0,f=f|0,d=d|0,m=m|0;var B=0,k=0,Q=0,M=0,O=0,q=0;B=E,E=E+32|0,k=B+16|0,Q=B+12|0,M=B+8|0,O=B+4|0,q=B,Bp(k,l),l=vp(k,l)|0,Bp(Q,c),c=vp(Q,c)|0,Bp(M,f),f=vp(M,f)|0,Bp(O,d),d=vp(O,d)|0,Bp(q,m),m=vp(q,m)|0,I7[s&1](l,c,f,d,m),Dp(q),Dp(O),Dp(M),Dp(Q),Dp(k),E=B}function D4e(s,l,c,f){s=s|0,l=l|0,c=c|0,f=f|0;var d=0,m=0;m=n[s>>2]|0,d=vR()|0,s=P4e(c)|0,hn(m,l,d,s,S4e(c,f)|0,f)}function vR(){var s=0,l=0;if(o[8072]|0||(r7(11004),tr(69,11004,U|0)|0,l=8072,n[l>>2]=1,n[l+4>>2]=0),!(Tr(11004)|0)){s=11004,l=s+36|0;do n[s>>2]=0,s=s+4|0;while((s|0)<(l|0));r7(11004)}return 11004}function P4e(s){return s=s|0,s|0}function S4e(s,l){s=s|0,l=l|0;var c=0,f=0,d=0,m=0,B=0,k=0,Q=0;return k=E,E=E+16|0,d=k,m=k+4|0,n[d>>2]=s,Q=vR()|0,B=Q+24|0,l=gr(l,4)|0,n[m>>2]=l,c=Q+28|0,f=n[c>>2]|0,f>>>0<(n[Q+32>>2]|0)>>>0?(t7(f,s,l),l=(n[c>>2]|0)+8|0,n[c>>2]=l):(b4e(B,d,m),l=n[c>>2]|0),E=k,(l-(n[B>>2]|0)>>3)+-1|0}function t7(s,l,c){s=s|0,l=l|0,c=c|0,n[s>>2]=l,n[s+4>>2]=c}function b4e(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0,B=0,k=0,Q=0,M=0,O=0;if(k=E,E=E+32|0,d=k,m=s+4|0,B=((n[m>>2]|0)-(n[s>>2]|0)>>3)+1|0,f=x4e(s)|0,f>>>0>>0)Jr(s);else{Q=n[s>>2]|0,O=(n[s+8>>2]|0)-Q|0,M=O>>2,k4e(d,O>>3>>>0>>1>>>0?M>>>0>>0?B:M:f,(n[m>>2]|0)-Q>>3,s+8|0),B=d+8|0,t7(n[B>>2]|0,n[l>>2]|0,n[c>>2]|0),n[B>>2]=(n[B>>2]|0)+8,Q4e(s,d),F4e(d),E=k;return}}function x4e(s){return s=s|0,536870911}function k4e(s,l,c,f){s=s|0,l=l|0,c=c|0,f=f|0;var d=0;n[s+12>>2]=0,n[s+16>>2]=f;do if(l)if(l>>>0>536870911)Rt();else{d=Kt(l<<3)|0;break}else d=0;while(0);n[s>>2]=d,f=d+(c<<3)|0,n[s+8>>2]=f,n[s+4>>2]=f,n[s+12>>2]=d+(l<<3)}function Q4e(s,l){s=s|0,l=l|0;var c=0,f=0,d=0,m=0,B=0;f=n[s>>2]|0,B=s+4|0,m=l+4|0,d=(n[B>>2]|0)-f|0,c=(n[m>>2]|0)+(0-(d>>3)<<3)|0,n[m>>2]=c,(d|0)>0?(Dr(c|0,f|0,d|0)|0,f=m,c=n[m>>2]|0):f=m,m=n[s>>2]|0,n[s>>2]=c,n[f>>2]=m,m=l+8|0,d=n[B>>2]|0,n[B>>2]=n[m>>2],n[m>>2]=d,m=s+8|0,B=l+12|0,s=n[m>>2]|0,n[m>>2]=n[B>>2],n[B>>2]=s,n[l>>2]=n[f>>2]}function F4e(s){s=s|0;var l=0,c=0,f=0;l=n[s+4>>2]|0,c=s+8|0,f=n[c>>2]|0,(f|0)!=(l|0)&&(n[c>>2]=f+(~((f+-8-l|0)>>>3)<<3)),s=n[s>>2]|0,s|0&>(s)}function r7(s){s=s|0,N4e(s)}function R4e(s){s=s|0,T4e(s+24|0)}function T4e(s){s=s|0;var l=0,c=0,f=0;c=n[s>>2]|0,f=c,c|0&&(s=s+4|0,l=n[s>>2]|0,(l|0)!=(c|0)&&(n[s>>2]=l+(~((l+-8-f|0)>>>3)<<3)),gt(c))}function N4e(s){s=s|0;var l=0;l=Kr()|0,Vr(s,1,12,l,L4e()|0,2),n[s+24>>2]=0,n[s+28>>2]=0,n[s+32>>2]=0}function L4e(){return 1896}function O4e(s,l,c){s=s|0,l=l|0,c=c|0,U4e(n[(M4e(s)|0)>>2]|0,l,c)}function M4e(s){return s=s|0,(n[(vR()|0)+24>>2]|0)+(s<<3)|0}function U4e(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0;f=E,E=E+16|0,m=f+4|0,d=f,_4e(m,l),l=H4e(m,l)|0,Bp(d,c),c=vp(d,c)|0,tf[s&31](l,c),Dp(d),E=f}function _4e(s,l){s=s|0,l=l|0}function H4e(s,l){return s=s|0,l=l|0,j4e(l)|0}function j4e(s){return s=s|0,s|0}function q4e(){var s=0;return o[8080]|0||(n7(11040),tr(70,11040,U|0)|0,s=8080,n[s>>2]=1,n[s+4>>2]=0),Tr(11040)|0||n7(11040),11040}function n7(s){s=s|0,W4e(s),xg(s,71)}function G4e(s){s=s|0,Y4e(s+24|0)}function Y4e(s){s=s|0;var l=0,c=0,f=0;c=n[s>>2]|0,f=c,c|0&&(s=s+4|0,l=n[s>>2]|0,(l|0)!=(c|0)&&(n[s>>2]=l+(~((l+-8-f|0)>>>3)<<3)),gt(c))}function W4e(s){s=s|0;var l=0;l=Kr()|0,Vr(s,5,7,l,J4e()|0,0),n[s+24>>2]=0,n[s+28>>2]=0,n[s+32>>2]=0}function K4e(s){s=s|0,V4e(s)}function V4e(s){s=s|0,z4e(s)}function z4e(s){s=s|0,o[s+8>>0]=1}function J4e(){return 1936}function X4e(){return Z4e()|0}function Z4e(){var s=0,l=0,c=0,f=0,d=0,m=0,B=0;return l=E,E=E+16|0,d=l+4|0,B=l,c=Wa(8)|0,s=c,m=s+4|0,n[m>>2]=Kt(1)|0,f=Kt(8)|0,m=n[m>>2]|0,n[B>>2]=0,n[d>>2]=n[B>>2],$4e(f,m,d),n[c>>2]=f,E=l,s|0}function $4e(s,l,c){s=s|0,l=l|0,c=c|0,n[s>>2]=l,c=Kt(16)|0,n[c+4>>2]=0,n[c+8>>2]=0,n[c>>2]=1916,n[c+12>>2]=l,n[s+4>>2]=c}function eUe(s){s=s|0,Vm(s),gt(s)}function tUe(s){s=s|0,s=n[s+12>>2]|0,s|0&>(s)}function rUe(s){s=s|0,gt(s)}function nUe(){var s=0;return o[8088]|0||(uUe(11076),tr(25,11076,U|0)|0,s=8088,n[s>>2]=1,n[s+4>>2]=0),11076}function iUe(s,l){s=s|0,l=l|0,n[s>>2]=sUe()|0,n[s+4>>2]=oUe()|0,n[s+12>>2]=l,n[s+8>>2]=aUe()|0,n[s+32>>2]=10}function sUe(){return 11745}function oUe(){return 1940}function aUe(){return aD()|0}function lUe(s,l,c,f){s=s|0,l=l|0,c=c|0,f=f|0,(Pp(f,896)|0)==512?c|0&&(cUe(c),gt(c)):l|0&>(l)}function cUe(s){s=s|0,s=n[s+4>>2]|0,s|0&&bp(s)}function uUe(s){s=s|0,Ip(s)}function bc(s,l){s=s|0,l=l|0,n[s>>2]=l}function DR(s){return s=s|0,n[s>>2]|0}function AUe(s){return s=s|0,o[n[s>>2]>>0]|0}function fUe(s,l){s=s|0,l=l|0;var c=0,f=0;c=E,E=E+16|0,f=c,n[f>>2]=n[s>>2],pUe(l,f)|0,E=c}function pUe(s,l){s=s|0,l=l|0;var c=0;return c=hUe(n[s>>2]|0,l)|0,l=s+4|0,n[(n[l>>2]|0)+8>>2]=c,n[(n[l>>2]|0)+8>>2]|0}function hUe(s,l){s=s|0,l=l|0;var c=0,f=0;return c=E,E=E+16|0,f=c,Ka(f),s=da(s)|0,l=gUe(s,n[l>>2]|0)|0,Va(f),E=c,l|0}function Ka(s){s=s|0,n[s>>2]=n[2701],n[s+4>>2]=n[2703]}function gUe(s,l){s=s|0,l=l|0;var c=0;return c=Pl(dUe()|0)|0,Qn(0,c|0,s|0,yR(l)|0)|0}function Va(s){s=s|0,W9(n[s>>2]|0,n[s+4>>2]|0)}function dUe(){var s=0;return o[8096]|0||(mUe(11120),s=8096,n[s>>2]=1,n[s+4>>2]=0),11120}function mUe(s){s=s|0,Sl(s,yUe()|0,1)}function yUe(){return 1948}function EUe(){CUe()}function CUe(){var s=0,l=0,c=0,f=0,d=0,m=0,B=0,k=0,Q=0,M=0,O=0,q=0,se=0,Ge=0,Me=0,Qe=0;if(Me=E,E=E+16|0,O=Me+4|0,q=Me,Ni(65536,10804,n[2702]|0,10812),c=S9()|0,l=n[c>>2]|0,s=n[l>>2]|0,s|0)for(f=n[c+8>>2]|0,c=n[c+4>>2]|0;uc(s|0,u[c>>0]|0|0,o[f>>0]|0),l=l+4|0,s=n[l>>2]|0,s;)f=f+1|0,c=c+1|0;if(s=b9()|0,l=n[s>>2]|0,l|0)do uu(l|0,n[s+4>>2]|0),s=s+8|0,l=n[s>>2]|0;while((l|0)!=0);uu(wUe()|0,5167),M=qm()|0,s=n[M>>2]|0;e:do if(s|0){do IUe(n[s+4>>2]|0),s=n[s>>2]|0;while((s|0)!=0);if(s=n[M>>2]|0,s|0){Q=M;do{for(;d=s,s=n[s>>2]|0,d=n[d+4>>2]|0,!!(BUe(d)|0);)if(n[q>>2]=Q,n[O>>2]=n[q>>2],vUe(M,O)|0,!s)break e;if(DUe(d),Q=n[Q>>2]|0,l=i7(d)|0,m=Hi()|0,B=E,E=E+((1*(l<<2)|0)+15&-16)|0,k=E,E=E+((1*(l<<2)|0)+15&-16)|0,l=n[(_9(d)|0)>>2]|0,l|0)for(c=B,f=k;n[c>>2]=n[(Gm(n[l+4>>2]|0)|0)>>2],n[f>>2]=n[l+8>>2],l=n[l>>2]|0,l;)c=c+4|0,f=f+4|0;Qe=Gm(d)|0,l=PUe(d)|0,c=i7(d)|0,f=SUe(d)|0,Au(Qe|0,l|0,B|0,k|0,c|0,f|0,fR(d)|0),_i(m|0)}while((s|0)!=0)}}while(0);if(s=n[(pR()|0)>>2]|0,s|0)do Qe=s+4|0,M=hR(Qe)|0,d=Nw(M)|0,m=Rw(M)|0,B=(Tw(M)|0)+1|0,k=fD(M)|0,Q=s7(Qe)|0,M=Tr(M)|0,O=cD(Qe)|0,q=PR(Qe)|0,El(0,d|0,m|0,B|0,k|0,Q|0,M|0,O|0,q|0,SR(Qe)|0),s=n[s>>2]|0;while((s|0)!=0);s=n[(qm()|0)>>2]|0;e:do if(s|0){t:for(;;){if(l=n[s+4>>2]|0,l|0&&(se=n[(Gm(l)|0)>>2]|0,Ge=n[(H9(l)|0)>>2]|0,Ge|0)){c=Ge;do{l=c+4|0,f=hR(l)|0;r:do if(f|0)switch(Tr(f)|0){case 0:break t;case 4:case 3:case 2:{k=Nw(f)|0,Q=Rw(f)|0,M=(Tw(f)|0)+1|0,O=fD(f)|0,q=Tr(f)|0,Qe=cD(l)|0,El(se|0,k|0,Q|0,M|0,O|0,0,q|0,Qe|0,PR(l)|0,SR(l)|0);break r}case 1:{B=Nw(f)|0,k=Rw(f)|0,Q=(Tw(f)|0)+1|0,M=fD(f)|0,O=s7(l)|0,q=Tr(f)|0,Qe=cD(l)|0,El(se|0,B|0,k|0,Q|0,M|0,O|0,q|0,Qe|0,PR(l)|0,SR(l)|0);break r}case 5:{M=Nw(f)|0,O=Rw(f)|0,q=(Tw(f)|0)+1|0,Qe=fD(f)|0,El(se|0,M|0,O|0,q|0,Qe|0,bUe(f)|0,Tr(f)|0,0,0,0);break r}default:break r}while(0);c=n[c>>2]|0}while((c|0)!=0)}if(s=n[s>>2]|0,!s)break e}Rt()}while(0);Ce(),E=Me}function wUe(){return 11703}function IUe(s){s=s|0,o[s+40>>0]=0}function BUe(s){return s=s|0,(o[s+40>>0]|0)!=0|0}function vUe(s,l){return s=s|0,l=l|0,l=xUe(l)|0,s=n[l>>2]|0,n[l>>2]=n[s>>2],gt(s),n[l>>2]|0}function DUe(s){s=s|0,o[s+40>>0]=1}function i7(s){return s=s|0,n[s+20>>2]|0}function PUe(s){return s=s|0,n[s+8>>2]|0}function SUe(s){return s=s|0,n[s+32>>2]|0}function fD(s){return s=s|0,n[s+4>>2]|0}function s7(s){return s=s|0,n[s+4>>2]|0}function PR(s){return s=s|0,n[s+8>>2]|0}function SR(s){return s=s|0,n[s+16>>2]|0}function bUe(s){return s=s|0,n[s+20>>2]|0}function xUe(s){return s=s|0,n[s>>2]|0}function pD(s){s=s|0;var l=0,c=0,f=0,d=0,m=0,B=0,k=0,Q=0,M=0,O=0,q=0,se=0,Ge=0,Me=0,Qe=0,et=0,Xe=0,at=0,Ue=0,qe=0,Lt=0;Lt=E,E=E+16|0,se=Lt;do if(s>>>0<245){if(M=s>>>0<11?16:s+11&-8,s=M>>>3,q=n[2783]|0,c=q>>>s,c&3|0)return l=(c&1^1)+s|0,s=11172+(l<<1<<2)|0,c=s+8|0,f=n[c>>2]|0,d=f+8|0,m=n[d>>2]|0,(s|0)==(m|0)?n[2783]=q&~(1<>2]=s,n[c>>2]=m),qe=l<<3,n[f+4>>2]=qe|3,qe=f+qe+4|0,n[qe>>2]=n[qe>>2]|1,qe=d,E=Lt,qe|0;if(O=n[2785]|0,M>>>0>O>>>0){if(c|0)return l=2<>>12&16,l=l>>>B,c=l>>>5&8,l=l>>>c,d=l>>>2&4,l=l>>>d,s=l>>>1&2,l=l>>>s,f=l>>>1&1,f=(c|B|d|s|f)+(l>>>f)|0,l=11172+(f<<1<<2)|0,s=l+8|0,d=n[s>>2]|0,B=d+8|0,c=n[B>>2]|0,(l|0)==(c|0)?(s=q&~(1<>2]=l,n[s>>2]=c,s=q),m=(f<<3)-M|0,n[d+4>>2]=M|3,f=d+M|0,n[f+4>>2]=m|1,n[f+m>>2]=m,O|0&&(d=n[2788]|0,l=O>>>3,c=11172+(l<<1<<2)|0,l=1<>2]|0):(n[2783]=s|l,l=c,s=c+8|0),n[s>>2]=d,n[l+12>>2]=d,n[d+8>>2]=l,n[d+12>>2]=c),n[2785]=m,n[2788]=f,qe=B,E=Lt,qe|0;if(k=n[2784]|0,k){if(c=(k&0-k)+-1|0,B=c>>>12&16,c=c>>>B,m=c>>>5&8,c=c>>>m,Q=c>>>2&4,c=c>>>Q,f=c>>>1&2,c=c>>>f,s=c>>>1&1,s=n[11436+((m|B|Q|f|s)+(c>>>s)<<2)>>2]|0,c=(n[s+4>>2]&-8)-M|0,f=n[s+16+(((n[s+16>>2]|0)==0&1)<<2)>>2]|0,!f)Q=s,m=c;else{do B=(n[f+4>>2]&-8)-M|0,Q=B>>>0>>0,c=Q?B:c,s=Q?f:s,f=n[f+16+(((n[f+16>>2]|0)==0&1)<<2)>>2]|0;while((f|0)!=0);Q=s,m=c}if(B=Q+M|0,Q>>>0>>0){d=n[Q+24>>2]|0,l=n[Q+12>>2]|0;do if((l|0)==(Q|0)){if(s=Q+20|0,l=n[s>>2]|0,!l&&(s=Q+16|0,l=n[s>>2]|0,!l)){c=0;break}for(;;){if(c=l+20|0,f=n[c>>2]|0,f|0){l=f,s=c;continue}if(c=l+16|0,f=n[c>>2]|0,f)l=f,s=c;else break}n[s>>2]=0,c=l}else c=n[Q+8>>2]|0,n[c+12>>2]=l,n[l+8>>2]=c,c=l;while(0);do if(d|0){if(l=n[Q+28>>2]|0,s=11436+(l<<2)|0,(Q|0)==(n[s>>2]|0)){if(n[s>>2]=c,!c){n[2784]=k&~(1<>2]|0)!=(Q|0)&1)<<2)>>2]=c,!c)break;n[c+24>>2]=d,l=n[Q+16>>2]|0,l|0&&(n[c+16>>2]=l,n[l+24>>2]=c),l=n[Q+20>>2]|0,l|0&&(n[c+20>>2]=l,n[l+24>>2]=c)}while(0);return m>>>0<16?(qe=m+M|0,n[Q+4>>2]=qe|3,qe=Q+qe+4|0,n[qe>>2]=n[qe>>2]|1):(n[Q+4>>2]=M|3,n[B+4>>2]=m|1,n[B+m>>2]=m,O|0&&(f=n[2788]|0,l=O>>>3,c=11172+(l<<1<<2)|0,l=1<>2]|0):(n[2783]=q|l,l=c,s=c+8|0),n[s>>2]=f,n[l+12>>2]=f,n[f+8>>2]=l,n[f+12>>2]=c),n[2785]=m,n[2788]=B),qe=Q+8|0,E=Lt,qe|0}else q=M}else q=M}else q=M}else if(s>>>0<=4294967231)if(s=s+11|0,M=s&-8,Q=n[2784]|0,Q){f=0-M|0,s=s>>>8,s?M>>>0>16777215?k=31:(q=(s+1048320|0)>>>16&8,Ue=s<>>16&4,Ue=Ue<>>16&2,k=14-(O|q|k)+(Ue<>>15)|0,k=M>>>(k+7|0)&1|k<<1):k=0,c=n[11436+(k<<2)>>2]|0;e:do if(!c)c=0,s=0,Ue=57;else for(s=0,B=M<<((k|0)==31?0:25-(k>>>1)|0),m=0;;){if(d=(n[c+4>>2]&-8)-M|0,d>>>0>>0)if(d)s=c,f=d;else{s=c,f=0,d=c,Ue=61;break e}if(d=n[c+20>>2]|0,c=n[c+16+(B>>>31<<2)>>2]|0,m=(d|0)==0|(d|0)==(c|0)?m:d,d=(c|0)==0,d){c=m,Ue=57;break}else B=B<<((d^1)&1)}while(0);if((Ue|0)==57){if((c|0)==0&(s|0)==0){if(s=2<>>12&16,q=q>>>B,m=q>>>5&8,q=q>>>m,k=q>>>2&4,q=q>>>k,O=q>>>1&2,q=q>>>O,c=q>>>1&1,s=0,c=n[11436+((m|B|k|O|c)+(q>>>c)<<2)>>2]|0}c?(d=c,Ue=61):(k=s,B=f)}if((Ue|0)==61)for(;;)if(Ue=0,c=(n[d+4>>2]&-8)-M|0,q=c>>>0>>0,c=q?c:f,s=q?d:s,d=n[d+16+(((n[d+16>>2]|0)==0&1)<<2)>>2]|0,d)f=c,Ue=61;else{k=s,B=c;break}if((k|0)!=0&&B>>>0<((n[2785]|0)-M|0)>>>0){if(m=k+M|0,k>>>0>=m>>>0)return qe=0,E=Lt,qe|0;d=n[k+24>>2]|0,l=n[k+12>>2]|0;do if((l|0)==(k|0)){if(s=k+20|0,l=n[s>>2]|0,!l&&(s=k+16|0,l=n[s>>2]|0,!l)){l=0;break}for(;;){if(c=l+20|0,f=n[c>>2]|0,f|0){l=f,s=c;continue}if(c=l+16|0,f=n[c>>2]|0,f)l=f,s=c;else break}n[s>>2]=0}else qe=n[k+8>>2]|0,n[qe+12>>2]=l,n[l+8>>2]=qe;while(0);do if(d){if(s=n[k+28>>2]|0,c=11436+(s<<2)|0,(k|0)==(n[c>>2]|0)){if(n[c>>2]=l,!l){f=Q&~(1<>2]|0)!=(k|0)&1)<<2)>>2]=l,!l){f=Q;break}n[l+24>>2]=d,s=n[k+16>>2]|0,s|0&&(n[l+16>>2]=s,n[s+24>>2]=l),s=n[k+20>>2]|0,s&&(n[l+20>>2]=s,n[s+24>>2]=l),f=Q}else f=Q;while(0);do if(B>>>0>=16){if(n[k+4>>2]=M|3,n[m+4>>2]=B|1,n[m+B>>2]=B,l=B>>>3,B>>>0<256){c=11172+(l<<1<<2)|0,s=n[2783]|0,l=1<>2]|0):(n[2783]=s|l,l=c,s=c+8|0),n[s>>2]=m,n[l+12>>2]=m,n[m+8>>2]=l,n[m+12>>2]=c;break}if(l=B>>>8,l?B>>>0>16777215?l=31:(Ue=(l+1048320|0)>>>16&8,qe=l<>>16&4,qe=qe<>>16&2,l=14-(at|Ue|l)+(qe<>>15)|0,l=B>>>(l+7|0)&1|l<<1):l=0,c=11436+(l<<2)|0,n[m+28>>2]=l,s=m+16|0,n[s+4>>2]=0,n[s>>2]=0,s=1<>2]=m,n[m+24>>2]=c,n[m+12>>2]=m,n[m+8>>2]=m;break}for(s=B<<((l|0)==31?0:25-(l>>>1)|0),c=n[c>>2]|0;;){if((n[c+4>>2]&-8|0)==(B|0)){Ue=97;break}if(f=c+16+(s>>>31<<2)|0,l=n[f>>2]|0,l)s=s<<1,c=l;else{Ue=96;break}}if((Ue|0)==96){n[f>>2]=m,n[m+24>>2]=c,n[m+12>>2]=m,n[m+8>>2]=m;break}else if((Ue|0)==97){Ue=c+8|0,qe=n[Ue>>2]|0,n[qe+12>>2]=m,n[Ue>>2]=m,n[m+8>>2]=qe,n[m+12>>2]=c,n[m+24>>2]=0;break}}else qe=B+M|0,n[k+4>>2]=qe|3,qe=k+qe+4|0,n[qe>>2]=n[qe>>2]|1;while(0);return qe=k+8|0,E=Lt,qe|0}else q=M}else q=M;else q=-1;while(0);if(c=n[2785]|0,c>>>0>=q>>>0)return l=c-q|0,s=n[2788]|0,l>>>0>15?(qe=s+q|0,n[2788]=qe,n[2785]=l,n[qe+4>>2]=l|1,n[qe+l>>2]=l,n[s+4>>2]=q|3):(n[2785]=0,n[2788]=0,n[s+4>>2]=c|3,qe=s+c+4|0,n[qe>>2]=n[qe>>2]|1),qe=s+8|0,E=Lt,qe|0;if(B=n[2786]|0,B>>>0>q>>>0)return at=B-q|0,n[2786]=at,qe=n[2789]|0,Ue=qe+q|0,n[2789]=Ue,n[Ue+4>>2]=at|1,n[qe+4>>2]=q|3,qe=qe+8|0,E=Lt,qe|0;if(n[2901]|0?s=n[2903]|0:(n[2903]=4096,n[2902]=4096,n[2904]=-1,n[2905]=-1,n[2906]=0,n[2894]=0,s=se&-16^1431655768,n[se>>2]=s,n[2901]=s,s=4096),k=q+48|0,Q=q+47|0,m=s+Q|0,d=0-s|0,M=m&d,M>>>0<=q>>>0||(s=n[2893]|0,s|0&&(O=n[2891]|0,se=O+M|0,se>>>0<=O>>>0|se>>>0>s>>>0)))return qe=0,E=Lt,qe|0;e:do if(n[2894]&4)l=0,Ue=133;else{c=n[2789]|0;t:do if(c){for(f=11580;s=n[f>>2]|0,!(s>>>0<=c>>>0&&(Qe=f+4|0,(s+(n[Qe>>2]|0)|0)>>>0>c>>>0));)if(s=n[f+8>>2]|0,s)f=s;else{Ue=118;break t}if(l=m-B&d,l>>>0<2147483647)if(s=xp(l|0)|0,(s|0)==((n[f>>2]|0)+(n[Qe>>2]|0)|0)){if((s|0)!=-1){B=l,m=s,Ue=135;break e}}else f=s,Ue=126;else l=0}else Ue=118;while(0);do if((Ue|0)==118)if(c=xp(0)|0,(c|0)!=-1&&(l=c,Ge=n[2902]|0,Me=Ge+-1|0,l=((Me&l|0)==0?0:(Me+l&0-Ge)-l|0)+M|0,Ge=n[2891]|0,Me=l+Ge|0,l>>>0>q>>>0&l>>>0<2147483647)){if(Qe=n[2893]|0,Qe|0&&Me>>>0<=Ge>>>0|Me>>>0>Qe>>>0){l=0;break}if(s=xp(l|0)|0,(s|0)==(c|0)){B=l,m=c,Ue=135;break e}else f=s,Ue=126}else l=0;while(0);do if((Ue|0)==126){if(c=0-l|0,!(k>>>0>l>>>0&(l>>>0<2147483647&(f|0)!=-1)))if((f|0)==-1){l=0;break}else{B=l,m=f,Ue=135;break e}if(s=n[2903]|0,s=Q-l+s&0-s,s>>>0>=2147483647){B=l,m=f,Ue=135;break e}if((xp(s|0)|0)==-1){xp(c|0)|0,l=0;break}else{B=s+l|0,m=f,Ue=135;break e}}while(0);n[2894]=n[2894]|4,Ue=133}while(0);if((Ue|0)==133&&M>>>0<2147483647&&(at=xp(M|0)|0,Qe=xp(0)|0,et=Qe-at|0,Xe=et>>>0>(q+40|0)>>>0,!((at|0)==-1|Xe^1|at>>>0>>0&((at|0)!=-1&(Qe|0)!=-1)^1))&&(B=Xe?et:l,m=at,Ue=135),(Ue|0)==135){l=(n[2891]|0)+B|0,n[2891]=l,l>>>0>(n[2892]|0)>>>0&&(n[2892]=l),Q=n[2789]|0;do if(Q){for(l=11580;;){if(s=n[l>>2]|0,c=l+4|0,f=n[c>>2]|0,(m|0)==(s+f|0)){Ue=145;break}if(d=n[l+8>>2]|0,d)l=d;else break}if((Ue|0)==145&&(n[l+12>>2]&8|0)==0&&Q>>>0>>0&Q>>>0>=s>>>0){n[c>>2]=f+B,qe=Q+8|0,qe=(qe&7|0)==0?0:0-qe&7,Ue=Q+qe|0,qe=(n[2786]|0)+(B-qe)|0,n[2789]=Ue,n[2786]=qe,n[Ue+4>>2]=qe|1,n[Ue+qe+4>>2]=40,n[2790]=n[2905];break}for(m>>>0<(n[2787]|0)>>>0&&(n[2787]=m),c=m+B|0,l=11580;;){if((n[l>>2]|0)==(c|0)){Ue=153;break}if(s=n[l+8>>2]|0,s)l=s;else break}if((Ue|0)==153&&(n[l+12>>2]&8|0)==0){n[l>>2]=m,O=l+4|0,n[O>>2]=(n[O>>2]|0)+B,O=m+8|0,O=m+((O&7|0)==0?0:0-O&7)|0,l=c+8|0,l=c+((l&7|0)==0?0:0-l&7)|0,M=O+q|0,k=l-O-q|0,n[O+4>>2]=q|3;do if((l|0)!=(Q|0)){if((l|0)==(n[2788]|0)){qe=(n[2785]|0)+k|0,n[2785]=qe,n[2788]=M,n[M+4>>2]=qe|1,n[M+qe>>2]=qe;break}if(s=n[l+4>>2]|0,(s&3|0)==1){B=s&-8,f=s>>>3;e:do if(s>>>0<256)if(s=n[l+8>>2]|0,c=n[l+12>>2]|0,(c|0)==(s|0)){n[2783]=n[2783]&~(1<>2]=c,n[c+8>>2]=s;break}else{m=n[l+24>>2]|0,s=n[l+12>>2]|0;do if((s|0)==(l|0)){if(f=l+16|0,c=f+4|0,s=n[c>>2]|0,!s)if(s=n[f>>2]|0,s)c=f;else{s=0;break}for(;;){if(f=s+20|0,d=n[f>>2]|0,d|0){s=d,c=f;continue}if(f=s+16|0,d=n[f>>2]|0,d)s=d,c=f;else break}n[c>>2]=0}else qe=n[l+8>>2]|0,n[qe+12>>2]=s,n[s+8>>2]=qe;while(0);if(!m)break;c=n[l+28>>2]|0,f=11436+(c<<2)|0;do if((l|0)!=(n[f>>2]|0)){if(n[m+16+(((n[m+16>>2]|0)!=(l|0)&1)<<2)>>2]=s,!s)break e}else{if(n[f>>2]=s,s|0)break;n[2784]=n[2784]&~(1<>2]=m,c=l+16|0,f=n[c>>2]|0,f|0&&(n[s+16>>2]=f,n[f+24>>2]=s),c=n[c+4>>2]|0,!c)break;n[s+20>>2]=c,n[c+24>>2]=s}while(0);l=l+B|0,d=B+k|0}else d=k;if(l=l+4|0,n[l>>2]=n[l>>2]&-2,n[M+4>>2]=d|1,n[M+d>>2]=d,l=d>>>3,d>>>0<256){c=11172+(l<<1<<2)|0,s=n[2783]|0,l=1<>2]|0):(n[2783]=s|l,l=c,s=c+8|0),n[s>>2]=M,n[l+12>>2]=M,n[M+8>>2]=l,n[M+12>>2]=c;break}l=d>>>8;do if(!l)l=0;else{if(d>>>0>16777215){l=31;break}Ue=(l+1048320|0)>>>16&8,qe=l<>>16&4,qe=qe<>>16&2,l=14-(at|Ue|l)+(qe<>>15)|0,l=d>>>(l+7|0)&1|l<<1}while(0);if(f=11436+(l<<2)|0,n[M+28>>2]=l,s=M+16|0,n[s+4>>2]=0,n[s>>2]=0,s=n[2784]|0,c=1<>2]=M,n[M+24>>2]=f,n[M+12>>2]=M,n[M+8>>2]=M;break}for(s=d<<((l|0)==31?0:25-(l>>>1)|0),c=n[f>>2]|0;;){if((n[c+4>>2]&-8|0)==(d|0)){Ue=194;break}if(f=c+16+(s>>>31<<2)|0,l=n[f>>2]|0,l)s=s<<1,c=l;else{Ue=193;break}}if((Ue|0)==193){n[f>>2]=M,n[M+24>>2]=c,n[M+12>>2]=M,n[M+8>>2]=M;break}else if((Ue|0)==194){Ue=c+8|0,qe=n[Ue>>2]|0,n[qe+12>>2]=M,n[Ue>>2]=M,n[M+8>>2]=qe,n[M+12>>2]=c,n[M+24>>2]=0;break}}else qe=(n[2786]|0)+k|0,n[2786]=qe,n[2789]=M,n[M+4>>2]=qe|1;while(0);return qe=O+8|0,E=Lt,qe|0}for(l=11580;s=n[l>>2]|0,!(s>>>0<=Q>>>0&&(qe=s+(n[l+4>>2]|0)|0,qe>>>0>Q>>>0));)l=n[l+8>>2]|0;d=qe+-47|0,s=d+8|0,s=d+((s&7|0)==0?0:0-s&7)|0,d=Q+16|0,s=s>>>0>>0?Q:s,l=s+8|0,c=m+8|0,c=(c&7|0)==0?0:0-c&7,Ue=m+c|0,c=B+-40-c|0,n[2789]=Ue,n[2786]=c,n[Ue+4>>2]=c|1,n[Ue+c+4>>2]=40,n[2790]=n[2905],c=s+4|0,n[c>>2]=27,n[l>>2]=n[2895],n[l+4>>2]=n[2896],n[l+8>>2]=n[2897],n[l+12>>2]=n[2898],n[2895]=m,n[2896]=B,n[2898]=0,n[2897]=l,l=s+24|0;do Ue=l,l=l+4|0,n[l>>2]=7;while((Ue+8|0)>>>0>>0);if((s|0)!=(Q|0)){if(m=s-Q|0,n[c>>2]=n[c>>2]&-2,n[Q+4>>2]=m|1,n[s>>2]=m,l=m>>>3,m>>>0<256){c=11172+(l<<1<<2)|0,s=n[2783]|0,l=1<>2]|0):(n[2783]=s|l,l=c,s=c+8|0),n[s>>2]=Q,n[l+12>>2]=Q,n[Q+8>>2]=l,n[Q+12>>2]=c;break}if(l=m>>>8,l?m>>>0>16777215?c=31:(Ue=(l+1048320|0)>>>16&8,qe=l<>>16&4,qe=qe<>>16&2,c=14-(at|Ue|c)+(qe<>>15)|0,c=m>>>(c+7|0)&1|c<<1):c=0,f=11436+(c<<2)|0,n[Q+28>>2]=c,n[Q+20>>2]=0,n[d>>2]=0,l=n[2784]|0,s=1<>2]=Q,n[Q+24>>2]=f,n[Q+12>>2]=Q,n[Q+8>>2]=Q;break}for(s=m<<((c|0)==31?0:25-(c>>>1)|0),c=n[f>>2]|0;;){if((n[c+4>>2]&-8|0)==(m|0)){Ue=216;break}if(f=c+16+(s>>>31<<2)|0,l=n[f>>2]|0,l)s=s<<1,c=l;else{Ue=215;break}}if((Ue|0)==215){n[f>>2]=Q,n[Q+24>>2]=c,n[Q+12>>2]=Q,n[Q+8>>2]=Q;break}else if((Ue|0)==216){Ue=c+8|0,qe=n[Ue>>2]|0,n[qe+12>>2]=Q,n[Ue>>2]=Q,n[Q+8>>2]=qe,n[Q+12>>2]=c,n[Q+24>>2]=0;break}}}else{qe=n[2787]|0,(qe|0)==0|m>>>0>>0&&(n[2787]=m),n[2895]=m,n[2896]=B,n[2898]=0,n[2792]=n[2901],n[2791]=-1,l=0;do qe=11172+(l<<1<<2)|0,n[qe+12>>2]=qe,n[qe+8>>2]=qe,l=l+1|0;while((l|0)!=32);qe=m+8|0,qe=(qe&7|0)==0?0:0-qe&7,Ue=m+qe|0,qe=B+-40-qe|0,n[2789]=Ue,n[2786]=qe,n[Ue+4>>2]=qe|1,n[Ue+qe+4>>2]=40,n[2790]=n[2905]}while(0);if(l=n[2786]|0,l>>>0>q>>>0)return at=l-q|0,n[2786]=at,qe=n[2789]|0,Ue=qe+q|0,n[2789]=Ue,n[Ue+4>>2]=at|1,n[qe+4>>2]=q|3,qe=qe+8|0,E=Lt,qe|0}return n[(Wm()|0)>>2]=12,qe=0,E=Lt,qe|0}function hD(s){s=s|0;var l=0,c=0,f=0,d=0,m=0,B=0,k=0,Q=0;if(!!s){c=s+-8|0,d=n[2787]|0,s=n[s+-4>>2]|0,l=s&-8,Q=c+l|0;do if(s&1)k=c,B=c;else{if(f=n[c>>2]|0,!(s&3)||(B=c+(0-f)|0,m=f+l|0,B>>>0>>0))return;if((B|0)==(n[2788]|0)){if(s=Q+4|0,l=n[s>>2]|0,(l&3|0)!=3){k=B,l=m;break}n[2785]=m,n[s>>2]=l&-2,n[B+4>>2]=m|1,n[B+m>>2]=m;return}if(c=f>>>3,f>>>0<256)if(s=n[B+8>>2]|0,l=n[B+12>>2]|0,(l|0)==(s|0)){n[2783]=n[2783]&~(1<>2]=l,n[l+8>>2]=s,k=B,l=m;break}d=n[B+24>>2]|0,s=n[B+12>>2]|0;do if((s|0)==(B|0)){if(c=B+16|0,l=c+4|0,s=n[l>>2]|0,!s)if(s=n[c>>2]|0,s)l=c;else{s=0;break}for(;;){if(c=s+20|0,f=n[c>>2]|0,f|0){s=f,l=c;continue}if(c=s+16|0,f=n[c>>2]|0,f)s=f,l=c;else break}n[l>>2]=0}else k=n[B+8>>2]|0,n[k+12>>2]=s,n[s+8>>2]=k;while(0);if(d){if(l=n[B+28>>2]|0,c=11436+(l<<2)|0,(B|0)==(n[c>>2]|0)){if(n[c>>2]=s,!s){n[2784]=n[2784]&~(1<>2]|0)!=(B|0)&1)<<2)>>2]=s,!s){k=B,l=m;break}n[s+24>>2]=d,l=B+16|0,c=n[l>>2]|0,c|0&&(n[s+16>>2]=c,n[c+24>>2]=s),l=n[l+4>>2]|0,l?(n[s+20>>2]=l,n[l+24>>2]=s,k=B,l=m):(k=B,l=m)}else k=B,l=m}while(0);if(!(B>>>0>=Q>>>0)&&(s=Q+4|0,f=n[s>>2]|0,!!(f&1))){if(f&2)n[s>>2]=f&-2,n[k+4>>2]=l|1,n[B+l>>2]=l,d=l;else{if(s=n[2788]|0,(Q|0)==(n[2789]|0)){if(Q=(n[2786]|0)+l|0,n[2786]=Q,n[2789]=k,n[k+4>>2]=Q|1,(k|0)!=(s|0))return;n[2788]=0,n[2785]=0;return}if((Q|0)==(s|0)){Q=(n[2785]|0)+l|0,n[2785]=Q,n[2788]=B,n[k+4>>2]=Q|1,n[B+Q>>2]=Q;return}d=(f&-8)+l|0,c=f>>>3;do if(f>>>0<256)if(l=n[Q+8>>2]|0,s=n[Q+12>>2]|0,(s|0)==(l|0)){n[2783]=n[2783]&~(1<>2]=s,n[s+8>>2]=l;break}else{m=n[Q+24>>2]|0,s=n[Q+12>>2]|0;do if((s|0)==(Q|0)){if(c=Q+16|0,l=c+4|0,s=n[l>>2]|0,!s)if(s=n[c>>2]|0,s)l=c;else{c=0;break}for(;;){if(c=s+20|0,f=n[c>>2]|0,f|0){s=f,l=c;continue}if(c=s+16|0,f=n[c>>2]|0,f)s=f,l=c;else break}n[l>>2]=0,c=s}else c=n[Q+8>>2]|0,n[c+12>>2]=s,n[s+8>>2]=c,c=s;while(0);if(m|0){if(s=n[Q+28>>2]|0,l=11436+(s<<2)|0,(Q|0)==(n[l>>2]|0)){if(n[l>>2]=c,!c){n[2784]=n[2784]&~(1<>2]|0)!=(Q|0)&1)<<2)>>2]=c,!c)break;n[c+24>>2]=m,s=Q+16|0,l=n[s>>2]|0,l|0&&(n[c+16>>2]=l,n[l+24>>2]=c),s=n[s+4>>2]|0,s|0&&(n[c+20>>2]=s,n[s+24>>2]=c)}}while(0);if(n[k+4>>2]=d|1,n[B+d>>2]=d,(k|0)==(n[2788]|0)){n[2785]=d;return}}if(s=d>>>3,d>>>0<256){c=11172+(s<<1<<2)|0,l=n[2783]|0,s=1<>2]|0):(n[2783]=l|s,s=c,l=c+8|0),n[l>>2]=k,n[s+12>>2]=k,n[k+8>>2]=s,n[k+12>>2]=c;return}s=d>>>8,s?d>>>0>16777215?s=31:(B=(s+1048320|0)>>>16&8,Q=s<>>16&4,Q=Q<>>16&2,s=14-(m|B|s)+(Q<>>15)|0,s=d>>>(s+7|0)&1|s<<1):s=0,f=11436+(s<<2)|0,n[k+28>>2]=s,n[k+20>>2]=0,n[k+16>>2]=0,l=n[2784]|0,c=1<>>1)|0),c=n[f>>2]|0;;){if((n[c+4>>2]&-8|0)==(d|0)){s=73;break}if(f=c+16+(l>>>31<<2)|0,s=n[f>>2]|0,s)l=l<<1,c=s;else{s=72;break}}if((s|0)==72){n[f>>2]=k,n[k+24>>2]=c,n[k+12>>2]=k,n[k+8>>2]=k;break}else if((s|0)==73){B=c+8|0,Q=n[B>>2]|0,n[Q+12>>2]=k,n[B>>2]=k,n[k+8>>2]=Q,n[k+12>>2]=c,n[k+24>>2]=0;break}}else n[2784]=l|c,n[f>>2]=k,n[k+24>>2]=f,n[k+12>>2]=k,n[k+8>>2]=k;while(0);if(Q=(n[2791]|0)+-1|0,n[2791]=Q,!Q)s=11588;else return;for(;s=n[s>>2]|0,s;)s=s+8|0;n[2791]=-1}}}function kUe(){return 11628}function QUe(s){s=s|0;var l=0,c=0;return l=E,E=E+16|0,c=l,n[c>>2]=TUe(n[s+60>>2]|0)|0,s=gD(hc(6,c|0)|0)|0,E=l,s|0}function o7(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0,B=0,k=0,Q=0,M=0,O=0,q=0,se=0,Ge=0;q=E,E=E+48|0,M=q+16|0,m=q,d=q+32|0,k=s+28|0,f=n[k>>2]|0,n[d>>2]=f,Q=s+20|0,f=(n[Q>>2]|0)-f|0,n[d+4>>2]=f,n[d+8>>2]=l,n[d+12>>2]=c,f=f+c|0,B=s+60|0,n[m>>2]=n[B>>2],n[m+4>>2]=d,n[m+8>>2]=2,m=gD(Li(146,m|0)|0)|0;e:do if((f|0)!=(m|0)){for(l=2;!((m|0)<0);)if(f=f-m|0,Ge=n[d+4>>2]|0,se=m>>>0>Ge>>>0,d=se?d+8|0:d,l=(se<<31>>31)+l|0,Ge=m-(se?Ge:0)|0,n[d>>2]=(n[d>>2]|0)+Ge,se=d+4|0,n[se>>2]=(n[se>>2]|0)-Ge,n[M>>2]=n[B>>2],n[M+4>>2]=d,n[M+8>>2]=l,m=gD(Li(146,M|0)|0)|0,(f|0)==(m|0)){O=3;break e}n[s+16>>2]=0,n[k>>2]=0,n[Q>>2]=0,n[s>>2]=n[s>>2]|32,(l|0)==2?c=0:c=c-(n[d+4>>2]|0)|0}else O=3;while(0);return(O|0)==3&&(Ge=n[s+44>>2]|0,n[s+16>>2]=Ge+(n[s+48>>2]|0),n[k>>2]=Ge,n[Q>>2]=Ge),E=q,c|0}function FUe(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0;return d=E,E=E+32|0,m=d,f=d+20|0,n[m>>2]=n[s+60>>2],n[m+4>>2]=0,n[m+8>>2]=l,n[m+12>>2]=f,n[m+16>>2]=c,(gD(sa(140,m|0)|0)|0)<0?(n[f>>2]=-1,s=-1):s=n[f>>2]|0,E=d,s|0}function gD(s){return s=s|0,s>>>0>4294963200&&(n[(Wm()|0)>>2]=0-s,s=-1),s|0}function Wm(){return(RUe()|0)+64|0}function RUe(){return bR()|0}function bR(){return 2084}function TUe(s){return s=s|0,s|0}function NUe(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0;return d=E,E=E+32|0,f=d,n[s+36>>2]=1,(n[s>>2]&64|0)==0&&(n[f>>2]=n[s+60>>2],n[f+4>>2]=21523,n[f+8>>2]=d+16,fu(54,f|0)|0)&&(o[s+75>>0]=-1),f=o7(s,l,c)|0,E=d,f|0}function a7(s,l){s=s|0,l=l|0;var c=0,f=0;if(c=o[s>>0]|0,f=o[l>>0]|0,c<<24>>24==0||c<<24>>24!=f<<24>>24)s=f;else{do s=s+1|0,l=l+1|0,c=o[s>>0]|0,f=o[l>>0]|0;while(!(c<<24>>24==0||c<<24>>24!=f<<24>>24));s=f}return(c&255)-(s&255)|0}function LUe(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0;e:do if(!c)s=0;else{for(;f=o[s>>0]|0,d=o[l>>0]|0,f<<24>>24==d<<24>>24;)if(c=c+-1|0,c)s=s+1|0,l=l+1|0;else{s=0;break e}s=(f&255)-(d&255)|0}while(0);return s|0}function l7(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0,B=0,k=0,Q=0,M=0,O=0,q=0,se=0,Ge=0,Me=0,Qe=0;Qe=E,E=E+224|0,O=Qe+120|0,q=Qe+80|0,Ge=Qe,Me=Qe+136|0,f=q,d=f+40|0;do n[f>>2]=0,f=f+4|0;while((f|0)<(d|0));return n[O>>2]=n[c>>2],(xR(0,l,O,Ge,q)|0)<0?c=-1:((n[s+76>>2]|0)>-1?se=OUe(s)|0:se=0,c=n[s>>2]|0,M=c&32,(o[s+74>>0]|0)<1&&(n[s>>2]=c&-33),f=s+48|0,n[f>>2]|0?c=xR(s,l,O,Ge,q)|0:(d=s+44|0,m=n[d>>2]|0,n[d>>2]=Me,B=s+28|0,n[B>>2]=Me,k=s+20|0,n[k>>2]=Me,n[f>>2]=80,Q=s+16|0,n[Q>>2]=Me+80,c=xR(s,l,O,Ge,q)|0,m&&(ED[n[s+36>>2]&7](s,0,0)|0,c=(n[k>>2]|0)==0?-1:c,n[d>>2]=m,n[f>>2]=0,n[Q>>2]=0,n[B>>2]=0,n[k>>2]=0)),f=n[s>>2]|0,n[s>>2]=f|M,se|0&&MUe(s),c=(f&32|0)==0?c:-1),E=Qe,c|0}function xR(s,l,c,f,d){s=s|0,l=l|0,c=c|0,f=f|0,d=d|0;var m=0,B=0,k=0,Q=0,M=0,O=0,q=0,se=0,Ge=0,Me=0,Qe=0,et=0,Xe=0,at=0,Ue=0,qe=0,Lt=0,Mr=0,or=0,Xt=0,Pr=0,Nr=0,ir=0;ir=E,E=E+64|0,or=ir+16|0,Xt=ir,Lt=ir+24|0,Pr=ir+8|0,Nr=ir+20|0,n[or>>2]=l,at=(s|0)!=0,Ue=Lt+40|0,qe=Ue,Lt=Lt+39|0,Mr=Pr+4|0,B=0,m=0,O=0;e:for(;;){do if((m|0)>-1)if((B|0)>(2147483647-m|0)){n[(Wm()|0)>>2]=75,m=-1;break}else{m=B+m|0;break}while(0);if(B=o[l>>0]|0,B<<24>>24)k=l;else{Xe=87;break}t:for(;;){switch(B<<24>>24){case 37:{B=k,Xe=9;break t}case 0:{B=k;break t}default:}et=k+1|0,n[or>>2]=et,B=o[et>>0]|0,k=et}t:do if((Xe|0)==9)for(;;){if(Xe=0,(o[k+1>>0]|0)!=37)break t;if(B=B+1|0,k=k+2|0,n[or>>2]=k,(o[k>>0]|0)==37)Xe=9;else break}while(0);if(B=B-l|0,at&&ss(s,l,B),B|0){l=k;continue}Q=k+1|0,B=(o[Q>>0]|0)+-48|0,B>>>0<10?(et=(o[k+2>>0]|0)==36,Qe=et?B:-1,O=et?1:O,Q=et?k+3|0:Q):Qe=-1,n[or>>2]=Q,B=o[Q>>0]|0,k=(B<<24>>24)+-32|0;t:do if(k>>>0<32)for(M=0,q=B;;){if(B=1<>2]=Q,B=o[Q>>0]|0,k=(B<<24>>24)+-32|0,k>>>0>=32)break;q=B}else M=0;while(0);if(B<<24>>24==42){if(k=Q+1|0,B=(o[k>>0]|0)+-48|0,B>>>0<10&&(o[Q+2>>0]|0)==36)n[d+(B<<2)>>2]=10,B=n[f+((o[k>>0]|0)+-48<<3)>>2]|0,O=1,Q=Q+3|0;else{if(O|0){m=-1;break}at?(O=(n[c>>2]|0)+(4-1)&~(4-1),B=n[O>>2]|0,n[c>>2]=O+4,O=0,Q=k):(B=0,O=0,Q=k)}n[or>>2]=Q,et=(B|0)<0,B=et?0-B|0:B,M=et?M|8192:M}else{if(B=c7(or)|0,(B|0)<0){m=-1;break}Q=n[or>>2]|0}do if((o[Q>>0]|0)==46){if((o[Q+1>>0]|0)!=42){n[or>>2]=Q+1,k=c7(or)|0,Q=n[or>>2]|0;break}if(q=Q+2|0,k=(o[q>>0]|0)+-48|0,k>>>0<10&&(o[Q+3>>0]|0)==36){n[d+(k<<2)>>2]=10,k=n[f+((o[q>>0]|0)+-48<<3)>>2]|0,Q=Q+4|0,n[or>>2]=Q;break}if(O|0){m=-1;break e}at?(et=(n[c>>2]|0)+(4-1)&~(4-1),k=n[et>>2]|0,n[c>>2]=et+4):k=0,n[or>>2]=q,Q=q}else k=-1;while(0);for(Me=0;;){if(((o[Q>>0]|0)+-65|0)>>>0>57){m=-1;break e}if(et=Q+1|0,n[or>>2]=et,q=o[(o[Q>>0]|0)+-65+(5178+(Me*58|0))>>0]|0,se=q&255,(se+-1|0)>>>0<8)Me=se,Q=et;else break}if(!(q<<24>>24)){m=-1;break}Ge=(Qe|0)>-1;do if(q<<24>>24==19)if(Ge){m=-1;break e}else Xe=49;else{if(Ge){n[d+(Qe<<2)>>2]=se,Ge=f+(Qe<<3)|0,Qe=n[Ge+4>>2]|0,Xe=Xt,n[Xe>>2]=n[Ge>>2],n[Xe+4>>2]=Qe,Xe=49;break}if(!at){m=0;break e}u7(Xt,se,c)}while(0);if((Xe|0)==49&&(Xe=0,!at)){B=0,l=et;continue}Q=o[Q>>0]|0,Q=(Me|0)!=0&(Q&15|0)==3?Q&-33:Q,Ge=M&-65537,Qe=(M&8192|0)==0?M:Ge;t:do switch(Q|0){case 110:switch((Me&255)<<24>>24){case 0:{n[n[Xt>>2]>>2]=m,B=0,l=et;continue e}case 1:{n[n[Xt>>2]>>2]=m,B=0,l=et;continue e}case 2:{B=n[Xt>>2]|0,n[B>>2]=m,n[B+4>>2]=((m|0)<0)<<31>>31,B=0,l=et;continue e}case 3:{a[n[Xt>>2]>>1]=m,B=0,l=et;continue e}case 4:{o[n[Xt>>2]>>0]=m,B=0,l=et;continue e}case 6:{n[n[Xt>>2]>>2]=m,B=0,l=et;continue e}case 7:{B=n[Xt>>2]|0,n[B>>2]=m,n[B+4>>2]=((m|0)<0)<<31>>31,B=0,l=et;continue e}default:{B=0,l=et;continue e}}case 112:{Q=120,k=k>>>0>8?k:8,l=Qe|8,Xe=61;break}case 88:case 120:{l=Qe,Xe=61;break}case 111:{Q=Xt,l=n[Q>>2]|0,Q=n[Q+4>>2]|0,se=_Ue(l,Q,Ue)|0,Ge=qe-se|0,M=0,q=5642,k=(Qe&8|0)==0|(k|0)>(Ge|0)?k:Ge+1|0,Ge=Qe,Xe=67;break}case 105:case 100:if(Q=Xt,l=n[Q>>2]|0,Q=n[Q+4>>2]|0,(Q|0)<0){l=dD(0,0,l|0,Q|0)|0,Q=De,M=Xt,n[M>>2]=l,n[M+4>>2]=Q,M=1,q=5642,Xe=66;break t}else{M=(Qe&2049|0)!=0&1,q=(Qe&2048|0)==0?(Qe&1|0)==0?5642:5644:5643,Xe=66;break t}case 117:{Q=Xt,M=0,q=5642,l=n[Q>>2]|0,Q=n[Q+4>>2]|0,Xe=66;break}case 99:{o[Lt>>0]=n[Xt>>2],l=Lt,M=0,q=5642,se=Ue,Q=1,k=Ge;break}case 109:{Q=HUe(n[(Wm()|0)>>2]|0)|0,Xe=71;break}case 115:{Q=n[Xt>>2]|0,Q=Q|0?Q:5652,Xe=71;break}case 67:{n[Pr>>2]=n[Xt>>2],n[Mr>>2]=0,n[Xt>>2]=Pr,se=-1,Q=Pr,Xe=75;break}case 83:{l=n[Xt>>2]|0,k?(se=k,Q=l,Xe=75):(Bs(s,32,B,0,Qe),l=0,Xe=84);break}case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:{B=qUe(s,+C[Xt>>3],B,k,Qe,Q)|0,l=et;continue e}default:M=0,q=5642,se=Ue,Q=k,k=Qe}while(0);t:do if((Xe|0)==61)Qe=Xt,Me=n[Qe>>2]|0,Qe=n[Qe+4>>2]|0,se=UUe(Me,Qe,Ue,Q&32)|0,q=(l&8|0)==0|(Me|0)==0&(Qe|0)==0,M=q?0:2,q=q?5642:5642+(Q>>4)|0,Ge=l,l=Me,Q=Qe,Xe=67;else if((Xe|0)==66)se=Km(l,Q,Ue)|0,Ge=Qe,Xe=67;else if((Xe|0)==71)Xe=0,Qe=jUe(Q,0,k)|0,Me=(Qe|0)==0,l=Q,M=0,q=5642,se=Me?Q+k|0:Qe,Q=Me?k:Qe-Q|0,k=Ge;else if((Xe|0)==75){for(Xe=0,q=Q,l=0,k=0;M=n[q>>2]|0,!(!M||(k=A7(Nr,M)|0,(k|0)<0|k>>>0>(se-l|0)>>>0));)if(l=k+l|0,se>>>0>l>>>0)q=q+4|0;else break;if((k|0)<0){m=-1;break e}if(Bs(s,32,B,l,Qe),!l)l=0,Xe=84;else for(M=0;;){if(k=n[Q>>2]|0,!k){Xe=84;break t}if(k=A7(Nr,k)|0,M=k+M|0,(M|0)>(l|0)){Xe=84;break t}if(ss(s,Nr,k),M>>>0>=l>>>0){Xe=84;break}else Q=Q+4|0}}while(0);if((Xe|0)==67)Xe=0,Q=(l|0)!=0|(Q|0)!=0,Qe=(k|0)!=0|Q,Q=((Q^1)&1)+(qe-se)|0,l=Qe?se:Ue,se=Ue,Q=Qe?(k|0)>(Q|0)?k:Q:k,k=(k|0)>-1?Ge&-65537:Ge;else if((Xe|0)==84){Xe=0,Bs(s,32,B,l,Qe^8192),B=(B|0)>(l|0)?B:l,l=et;continue}Me=se-l|0,Ge=(Q|0)<(Me|0)?Me:Q,Qe=Ge+M|0,B=(B|0)<(Qe|0)?Qe:B,Bs(s,32,B,Qe,k),ss(s,q,M),Bs(s,48,B,Qe,k^65536),Bs(s,48,Ge,Me,0),ss(s,l,Me),Bs(s,32,B,Qe,k^8192),l=et}e:do if((Xe|0)==87&&!s)if(!O)m=0;else{for(m=1;l=n[d+(m<<2)>>2]|0,!!l;)if(u7(f+(m<<3)|0,l,c),m=m+1|0,(m|0)>=10){m=1;break e}for(;;){if(n[d+(m<<2)>>2]|0){m=-1;break e}if(m=m+1|0,(m|0)>=10){m=1;break}}}while(0);return E=ir,m|0}function OUe(s){return s=s|0,0}function MUe(s){s=s|0}function ss(s,l,c){s=s|0,l=l|0,c=c|0,n[s>>2]&32||ZUe(l,c,s)|0}function c7(s){s=s|0;var l=0,c=0,f=0;if(c=n[s>>2]|0,f=(o[c>>0]|0)+-48|0,f>>>0<10){l=0;do l=f+(l*10|0)|0,c=c+1|0,n[s>>2]=c,f=(o[c>>0]|0)+-48|0;while(f>>>0<10)}else l=0;return l|0}function u7(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0;e:do if(l>>>0<=20)do switch(l|0){case 9:{f=(n[c>>2]|0)+(4-1)&~(4-1),l=n[f>>2]|0,n[c>>2]=f+4,n[s>>2]=l;break e}case 10:{f=(n[c>>2]|0)+(4-1)&~(4-1),l=n[f>>2]|0,n[c>>2]=f+4,f=s,n[f>>2]=l,n[f+4>>2]=((l|0)<0)<<31>>31;break e}case 11:{f=(n[c>>2]|0)+(4-1)&~(4-1),l=n[f>>2]|0,n[c>>2]=f+4,f=s,n[f>>2]=l,n[f+4>>2]=0;break e}case 12:{f=(n[c>>2]|0)+(8-1)&~(8-1),l=f,d=n[l>>2]|0,l=n[l+4>>2]|0,n[c>>2]=f+8,f=s,n[f>>2]=d,n[f+4>>2]=l;break e}case 13:{d=(n[c>>2]|0)+(4-1)&~(4-1),f=n[d>>2]|0,n[c>>2]=d+4,f=(f&65535)<<16>>16,d=s,n[d>>2]=f,n[d+4>>2]=((f|0)<0)<<31>>31;break e}case 14:{d=(n[c>>2]|0)+(4-1)&~(4-1),f=n[d>>2]|0,n[c>>2]=d+4,d=s,n[d>>2]=f&65535,n[d+4>>2]=0;break e}case 15:{d=(n[c>>2]|0)+(4-1)&~(4-1),f=n[d>>2]|0,n[c>>2]=d+4,f=(f&255)<<24>>24,d=s,n[d>>2]=f,n[d+4>>2]=((f|0)<0)<<31>>31;break e}case 16:{d=(n[c>>2]|0)+(4-1)&~(4-1),f=n[d>>2]|0,n[c>>2]=d+4,d=s,n[d>>2]=f&255,n[d+4>>2]=0;break e}case 17:{d=(n[c>>2]|0)+(8-1)&~(8-1),m=+C[d>>3],n[c>>2]=d+8,C[s>>3]=m;break e}case 18:{d=(n[c>>2]|0)+(8-1)&~(8-1),m=+C[d>>3],n[c>>2]=d+8,C[s>>3]=m;break e}default:break e}while(0);while(0)}function UUe(s,l,c,f){if(s=s|0,l=l|0,c=c|0,f=f|0,!((s|0)==0&(l|0)==0))do c=c+-1|0,o[c>>0]=u[5694+(s&15)>>0]|0|f,s=mD(s|0,l|0,4)|0,l=De;while(!((s|0)==0&(l|0)==0));return c|0}function _Ue(s,l,c){if(s=s|0,l=l|0,c=c|0,!((s|0)==0&(l|0)==0))do c=c+-1|0,o[c>>0]=s&7|48,s=mD(s|0,l|0,3)|0,l=De;while(!((s|0)==0&(l|0)==0));return c|0}function Km(s,l,c){s=s|0,l=l|0,c=c|0;var f=0;if(l>>>0>0|(l|0)==0&s>>>0>4294967295){for(;f=RR(s|0,l|0,10,0)|0,c=c+-1|0,o[c>>0]=f&255|48,f=s,s=FR(s|0,l|0,10,0)|0,l>>>0>9|(l|0)==9&f>>>0>4294967295;)l=De;l=s}else l=s;if(l)for(;c=c+-1|0,o[c>>0]=(l>>>0)%10|0|48,!(l>>>0<10);)l=(l>>>0)/10|0;return c|0}function HUe(s){return s=s|0,VUe(s,n[(KUe()|0)+188>>2]|0)|0}function jUe(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0,B=0;m=l&255,f=(c|0)!=0;e:do if(f&(s&3|0)!=0)for(d=l&255;;){if((o[s>>0]|0)==d<<24>>24){B=6;break e}if(s=s+1|0,c=c+-1|0,f=(c|0)!=0,!(f&(s&3|0)!=0)){B=5;break}}else B=5;while(0);(B|0)==5&&(f?B=6:c=0);e:do if((B|0)==6&&(d=l&255,(o[s>>0]|0)!=d<<24>>24)){f=He(m,16843009)|0;t:do if(c>>>0>3){for(;m=n[s>>2]^f,!((m&-2139062144^-2139062144)&m+-16843009|0);)if(s=s+4|0,c=c+-4|0,c>>>0<=3){B=11;break t}}else B=11;while(0);if((B|0)==11&&!c){c=0;break}for(;;){if((o[s>>0]|0)==d<<24>>24)break e;if(s=s+1|0,c=c+-1|0,!c){c=0;break}}}while(0);return(c|0?s:0)|0}function Bs(s,l,c,f,d){s=s|0,l=l|0,c=c|0,f=f|0,d=d|0;var m=0,B=0;if(B=E,E=E+256|0,m=B,(c|0)>(f|0)&(d&73728|0)==0){if(d=c-f|0,zm(m|0,l|0,(d>>>0<256?d:256)|0)|0,d>>>0>255){l=c-f|0;do ss(s,m,256),d=d+-256|0;while(d>>>0>255);d=l&255}ss(s,m,d)}E=B}function A7(s,l){return s=s|0,l=l|0,s?s=YUe(s,l,0)|0:s=0,s|0}function qUe(s,l,c,f,d,m){s=s|0,l=+l,c=c|0,f=f|0,d=d|0,m=m|0;var B=0,k=0,Q=0,M=0,O=0,q=0,se=0,Ge=0,Me=0,Qe=0,et=0,Xe=0,at=0,Ue=0,qe=0,Lt=0,Mr=0,or=0,Xt=0,Pr=0,Nr=0,ir=0,xn=0;xn=E,E=E+560|0,Q=xn+8|0,et=xn,ir=xn+524|0,Nr=ir,M=xn+512|0,n[et>>2]=0,Pr=M+12|0,f7(l)|0,(De|0)<0?(l=-l,or=1,Mr=5659):(or=(d&2049|0)!=0&1,Mr=(d&2048|0)==0?(d&1|0)==0?5660:5665:5662),f7(l)|0,Xt=De&2146435072;do if(Xt>>>0<2146435072|(Xt|0)==2146435072&0<0){if(Ge=+GUe(l,et)*2,B=Ge!=0,B&&(n[et>>2]=(n[et>>2]|0)+-1),at=m|32,(at|0)==97){Me=m&32,se=(Me|0)==0?Mr:Mr+9|0,q=or|2,B=12-f|0;do if(f>>>0>11|(B|0)==0)l=Ge;else{l=8;do B=B+-1|0,l=l*16;while((B|0)!=0);if((o[se>>0]|0)==45){l=-(l+(-Ge-l));break}else{l=Ge+l-l;break}}while(0);k=n[et>>2]|0,B=(k|0)<0?0-k|0:k,B=Km(B,((B|0)<0)<<31>>31,Pr)|0,(B|0)==(Pr|0)&&(B=M+11|0,o[B>>0]=48),o[B+-1>>0]=(k>>31&2)+43,O=B+-2|0,o[O>>0]=m+15,M=(f|0)<1,Q=(d&8|0)==0,B=ir;do Xt=~~l,k=B+1|0,o[B>>0]=u[5694+Xt>>0]|Me,l=(l-+(Xt|0))*16,(k-Nr|0)==1&&!(Q&(M&l==0))?(o[k>>0]=46,B=B+2|0):B=k;while(l!=0);Xt=B-Nr|0,Nr=Pr-O|0,Pr=(f|0)!=0&(Xt+-2|0)<(f|0)?f+2|0:Xt,B=Nr+q+Pr|0,Bs(s,32,c,B,d),ss(s,se,q),Bs(s,48,c,B,d^65536),ss(s,ir,Xt),Bs(s,48,Pr-Xt|0,0,0),ss(s,O,Nr),Bs(s,32,c,B,d^8192);break}k=(f|0)<0?6:f,B?(B=(n[et>>2]|0)+-28|0,n[et>>2]=B,l=Ge*268435456):(l=Ge,B=n[et>>2]|0),Xt=(B|0)<0?Q:Q+288|0,Q=Xt;do qe=~~l>>>0,n[Q>>2]=qe,Q=Q+4|0,l=(l-+(qe>>>0))*1e9;while(l!=0);if((B|0)>0)for(M=Xt,q=Q;;){if(O=(B|0)<29?B:29,B=q+-4|0,B>>>0>=M>>>0){Q=0;do Ue=y7(n[B>>2]|0,0,O|0)|0,Ue=QR(Ue|0,De|0,Q|0,0)|0,qe=De,Xe=RR(Ue|0,qe|0,1e9,0)|0,n[B>>2]=Xe,Q=FR(Ue|0,qe|0,1e9,0)|0,B=B+-4|0;while(B>>>0>=M>>>0);Q&&(M=M+-4|0,n[M>>2]=Q)}for(Q=q;!(Q>>>0<=M>>>0);)if(B=Q+-4|0,!(n[B>>2]|0))Q=B;else break;if(B=(n[et>>2]|0)-O|0,n[et>>2]=B,(B|0)>0)q=Q;else break}else M=Xt;if((B|0)<0){f=((k+25|0)/9|0)+1|0,Qe=(at|0)==102;do{if(Me=0-B|0,Me=(Me|0)<9?Me:9,M>>>0>>0){O=(1<>>Me,se=0,B=M;do qe=n[B>>2]|0,n[B>>2]=(qe>>>Me)+se,se=He(qe&O,q)|0,B=B+4|0;while(B>>>0>>0);B=(n[M>>2]|0)==0?M+4|0:M,se?(n[Q>>2]=se,M=B,B=Q+4|0):(M=B,B=Q)}else M=(n[M>>2]|0)==0?M+4|0:M,B=Q;Q=Qe?Xt:M,Q=(B-Q>>2|0)>(f|0)?Q+(f<<2)|0:B,B=(n[et>>2]|0)+Me|0,n[et>>2]=B}while((B|0)<0);B=M,f=Q}else B=M,f=Q;if(qe=Xt,B>>>0>>0){if(Q=(qe-B>>2)*9|0,O=n[B>>2]|0,O>>>0>=10){M=10;do M=M*10|0,Q=Q+1|0;while(O>>>0>=M>>>0)}}else Q=0;if(Qe=(at|0)==103,Xe=(k|0)!=0,M=k-((at|0)!=102?Q:0)+((Xe&Qe)<<31>>31)|0,(M|0)<(((f-qe>>2)*9|0)+-9|0)){if(M=M+9216|0,Me=Xt+4+(((M|0)/9|0)+-1024<<2)|0,M=((M|0)%9|0)+1|0,(M|0)<9){O=10;do O=O*10|0,M=M+1|0;while((M|0)!=9)}else O=10;if(q=n[Me>>2]|0,se=(q>>>0)%(O>>>0)|0,M=(Me+4|0)==(f|0),M&(se|0)==0)M=Me;else if(Ge=(((q>>>0)/(O>>>0)|0)&1|0)==0?9007199254740992:9007199254740994,Ue=(O|0)/2|0,l=se>>>0>>0?.5:M&(se|0)==(Ue|0)?1:1.5,or&&(Ue=(o[Mr>>0]|0)==45,l=Ue?-l:l,Ge=Ue?-Ge:Ge),M=q-se|0,n[Me>>2]=M,Ge+l!=Ge){if(Ue=M+O|0,n[Me>>2]=Ue,Ue>>>0>999999999)for(Q=Me;M=Q+-4|0,n[Q>>2]=0,M>>>0>>0&&(B=B+-4|0,n[B>>2]=0),Ue=(n[M>>2]|0)+1|0,n[M>>2]=Ue,Ue>>>0>999999999;)Q=M;else M=Me;if(Q=(qe-B>>2)*9|0,q=n[B>>2]|0,q>>>0>=10){O=10;do O=O*10|0,Q=Q+1|0;while(q>>>0>=O>>>0)}}else M=Me;M=M+4|0,M=f>>>0>M>>>0?M:f,Ue=B}else M=f,Ue=B;for(at=M;;){if(at>>>0<=Ue>>>0){et=0;break}if(B=at+-4|0,!(n[B>>2]|0))at=B;else{et=1;break}}f=0-Q|0;do if(Qe)if(B=((Xe^1)&1)+k|0,(B|0)>(Q|0)&(Q|0)>-5?(O=m+-1|0,k=B+-1-Q|0):(O=m+-2|0,k=B+-1|0),B=d&8,B)Me=B;else{if(et&&(Lt=n[at+-4>>2]|0,(Lt|0)!=0))if((Lt>>>0)%10|0)M=0;else{M=0,B=10;do B=B*10|0,M=M+1|0;while(!((Lt>>>0)%(B>>>0)|0|0))}else M=9;if(B=((at-qe>>2)*9|0)+-9|0,(O|32|0)==102){Me=B-M|0,Me=(Me|0)>0?Me:0,k=(k|0)<(Me|0)?k:Me,Me=0;break}else{Me=B+Q-M|0,Me=(Me|0)>0?Me:0,k=(k|0)<(Me|0)?k:Me,Me=0;break}}else O=m,Me=d&8;while(0);if(Qe=k|Me,q=(Qe|0)!=0&1,se=(O|32|0)==102,se)Xe=0,B=(Q|0)>0?Q:0;else{if(B=(Q|0)<0?f:Q,B=Km(B,((B|0)<0)<<31>>31,Pr)|0,M=Pr,(M-B|0)<2)do B=B+-1|0,o[B>>0]=48;while((M-B|0)<2);o[B+-1>>0]=(Q>>31&2)+43,B=B+-2|0,o[B>>0]=O,Xe=B,B=M-B|0}if(B=or+1+k+q+B|0,Bs(s,32,c,B,d),ss(s,Mr,or),Bs(s,48,c,B,d^65536),se){O=Ue>>>0>Xt>>>0?Xt:Ue,Me=ir+9|0,q=Me,se=ir+8|0,M=O;do{if(Q=Km(n[M>>2]|0,0,Me)|0,(M|0)==(O|0))(Q|0)==(Me|0)&&(o[se>>0]=48,Q=se);else if(Q>>>0>ir>>>0){zm(ir|0,48,Q-Nr|0)|0;do Q=Q+-1|0;while(Q>>>0>ir>>>0)}ss(s,Q,q-Q|0),M=M+4|0}while(M>>>0<=Xt>>>0);if(Qe|0&&ss(s,5710,1),M>>>0>>0&(k|0)>0)for(;;){if(Q=Km(n[M>>2]|0,0,Me)|0,Q>>>0>ir>>>0){zm(ir|0,48,Q-Nr|0)|0;do Q=Q+-1|0;while(Q>>>0>ir>>>0)}if(ss(s,Q,(k|0)<9?k:9),M=M+4|0,Q=k+-9|0,M>>>0>>0&(k|0)>9)k=Q;else{k=Q;break}}Bs(s,48,k+9|0,9,0)}else{if(Qe=et?at:Ue+4|0,(k|0)>-1){et=ir+9|0,Me=(Me|0)==0,f=et,q=0-Nr|0,se=ir+8|0,O=Ue;do{Q=Km(n[O>>2]|0,0,et)|0,(Q|0)==(et|0)&&(o[se>>0]=48,Q=se);do if((O|0)==(Ue|0)){if(M=Q+1|0,ss(s,Q,1),Me&(k|0)<1){Q=M;break}ss(s,5710,1),Q=M}else{if(Q>>>0<=ir>>>0)break;zm(ir|0,48,Q+q|0)|0;do Q=Q+-1|0;while(Q>>>0>ir>>>0)}while(0);Nr=f-Q|0,ss(s,Q,(k|0)>(Nr|0)?Nr:k),k=k-Nr|0,O=O+4|0}while(O>>>0>>0&(k|0)>-1)}Bs(s,48,k+18|0,18,0),ss(s,Xe,Pr-Xe|0)}Bs(s,32,c,B,d^8192)}else ir=(m&32|0)!=0,B=or+3|0,Bs(s,32,c,B,d&-65537),ss(s,Mr,or),ss(s,l!=l|!1?ir?5686:5690:ir?5678:5682,3),Bs(s,32,c,B,d^8192);while(0);return E=xn,((B|0)<(c|0)?c:B)|0}function f7(s){s=+s;var l=0;return C[v>>3]=s,l=n[v>>2]|0,De=n[v+4>>2]|0,l|0}function GUe(s,l){return s=+s,l=l|0,+ +p7(s,l)}function p7(s,l){s=+s,l=l|0;var c=0,f=0,d=0;switch(C[v>>3]=s,c=n[v>>2]|0,f=n[v+4>>2]|0,d=mD(c|0,f|0,52)|0,d&2047){case 0:{s!=0?(s=+p7(s*18446744073709552e3,l),c=(n[l>>2]|0)+-64|0):c=0,n[l>>2]=c;break}case 2047:break;default:n[l>>2]=(d&2047)+-1022,n[v>>2]=c,n[v+4>>2]=f&-2146435073|1071644672,s=+C[v>>3]}return+s}function YUe(s,l,c){s=s|0,l=l|0,c=c|0;do if(s){if(l>>>0<128){o[s>>0]=l,s=1;break}if(!(n[n[(WUe()|0)+188>>2]>>2]|0))if((l&-128|0)==57216){o[s>>0]=l,s=1;break}else{n[(Wm()|0)>>2]=84,s=-1;break}if(l>>>0<2048){o[s>>0]=l>>>6|192,o[s+1>>0]=l&63|128,s=2;break}if(l>>>0<55296|(l&-8192|0)==57344){o[s>>0]=l>>>12|224,o[s+1>>0]=l>>>6&63|128,o[s+2>>0]=l&63|128,s=3;break}if((l+-65536|0)>>>0<1048576){o[s>>0]=l>>>18|240,o[s+1>>0]=l>>>12&63|128,o[s+2>>0]=l>>>6&63|128,o[s+3>>0]=l&63|128,s=4;break}else{n[(Wm()|0)>>2]=84,s=-1;break}}else s=1;while(0);return s|0}function WUe(){return bR()|0}function KUe(){return bR()|0}function VUe(s,l){s=s|0,l=l|0;var c=0,f=0;for(f=0;;){if((u[5712+f>>0]|0)==(s|0)){s=2;break}if(c=f+1|0,(c|0)==87){c=5800,f=87,s=5;break}else f=c}if((s|0)==2&&(f?(c=5800,s=5):c=5800),(s|0)==5)for(;;){do s=c,c=c+1|0;while((o[s>>0]|0)!=0);if(f=f+-1|0,f)s=5;else break}return zUe(c,n[l+20>>2]|0)|0}function zUe(s,l){return s=s|0,l=l|0,JUe(s,l)|0}function JUe(s,l){return s=s|0,l=l|0,l?l=XUe(n[l>>2]|0,n[l+4>>2]|0,s)|0:l=0,(l|0?l:s)|0}function XUe(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0,B=0,k=0,Q=0,M=0,O=0,q=0,se=0;se=(n[s>>2]|0)+1794895138|0,m=Qg(n[s+8>>2]|0,se)|0,f=Qg(n[s+12>>2]|0,se)|0,d=Qg(n[s+16>>2]|0,se)|0;e:do if(m>>>0>>2>>>0&&(q=l-(m<<2)|0,f>>>0>>0&d>>>0>>0)&&((d|f)&3|0)==0){for(q=f>>>2,O=d>>>2,M=0;;){if(k=m>>>1,Q=M+k|0,B=Q<<1,d=B+q|0,f=Qg(n[s+(d<<2)>>2]|0,se)|0,d=Qg(n[s+(d+1<<2)>>2]|0,se)|0,!(d>>>0>>0&f>>>0<(l-d|0)>>>0)){f=0;break e}if(o[s+(d+f)>>0]|0){f=0;break e}if(f=a7(c,s+d|0)|0,!f)break;if(f=(f|0)<0,(m|0)==1){f=0;break e}else M=f?M:Q,m=f?k:m-k|0}f=B+O|0,d=Qg(n[s+(f<<2)>>2]|0,se)|0,f=Qg(n[s+(f+1<<2)>>2]|0,se)|0,f>>>0>>0&d>>>0<(l-f|0)>>>0?f=(o[s+(f+d)>>0]|0)==0?s+f|0:0:f=0}else f=0;while(0);return f|0}function Qg(s,l){s=s|0,l=l|0;var c=0;return c=w7(s|0)|0,((l|0)==0?s:c)|0}function ZUe(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0,B=0,k=0;f=c+16|0,d=n[f>>2]|0,d?m=5:$Ue(c)|0?f=0:(d=n[f>>2]|0,m=5);e:do if((m|0)==5){if(k=c+20|0,B=n[k>>2]|0,f=B,(d-B|0)>>>0>>0){f=ED[n[c+36>>2]&7](c,s,l)|0;break}t:do if((o[c+75>>0]|0)>-1){for(B=l;;){if(!B){m=0,d=s;break t}if(d=B+-1|0,(o[s+d>>0]|0)==10)break;B=d}if(f=ED[n[c+36>>2]&7](c,s,B)|0,f>>>0>>0)break e;m=B,d=s+B|0,l=l-B|0,f=n[k>>2]|0}else m=0,d=s;while(0);Dr(f|0,d|0,l|0)|0,n[k>>2]=(n[k>>2]|0)+l,f=m+l|0}while(0);return f|0}function $Ue(s){s=s|0;var l=0,c=0;return l=s+74|0,c=o[l>>0]|0,o[l>>0]=c+255|c,l=n[s>>2]|0,l&8?(n[s>>2]=l|32,s=-1):(n[s+8>>2]=0,n[s+4>>2]=0,c=n[s+44>>2]|0,n[s+28>>2]=c,n[s+20>>2]=c,n[s+16>>2]=c+(n[s+48>>2]|0),s=0),s|0}function _n(s,l){s=y(s),l=y(l);var c=0,f=0;c=h7(s)|0;do if((c&2147483647)>>>0<=2139095040){if(f=h7(l)|0,(f&2147483647)>>>0<=2139095040)if((f^c|0)<0){s=(c|0)<0?l:s;break}else{s=s>2]=s,n[v>>2]|0|0}function Fg(s,l){s=y(s),l=y(l);var c=0,f=0;c=g7(s)|0;do if((c&2147483647)>>>0<=2139095040){if(f=g7(l)|0,(f&2147483647)>>>0<=2139095040)if((f^c|0)<0){s=(c|0)<0?s:l;break}else{s=s>2]=s,n[v>>2]|0|0}function kR(s,l){s=y(s),l=y(l);var c=0,f=0,d=0,m=0,B=0,k=0,Q=0,M=0;m=(h[v>>2]=s,n[v>>2]|0),k=(h[v>>2]=l,n[v>>2]|0),c=m>>>23&255,B=k>>>23&255,Q=m&-2147483648,d=k<<1;e:do if((d|0)!=0&&!((c|0)==255|((e3e(l)|0)&2147483647)>>>0>2139095040)){if(f=m<<1,f>>>0<=d>>>0)return l=y(s*y(0)),y((f|0)==(d|0)?l:s);if(c)f=m&8388607|8388608;else{if(c=m<<9,(c|0)>-1){f=c,c=0;do c=c+-1|0,f=f<<1;while((f|0)>-1)}else c=0;f=m<<1-c}if(B)k=k&8388607|8388608;else{if(m=k<<9,(m|0)>-1){d=0;do d=d+-1|0,m=m<<1;while((m|0)>-1)}else d=0;B=d,k=k<<1-d}d=f-k|0,m=(d|0)>-1;t:do if((c|0)>(B|0)){for(;;){if(m)if(d)f=d;else break;if(f=f<<1,c=c+-1|0,d=f-k|0,m=(d|0)>-1,(c|0)<=(B|0))break t}l=y(s*y(0));break e}while(0);if(m)if(d)f=d;else{l=y(s*y(0));break}if(f>>>0<8388608)do f=f<<1,c=c+-1|0;while(f>>>0<8388608);(c|0)>0?c=f+-8388608|c<<23:c=f>>>(1-c|0),l=(n[v>>2]=c|Q,y(h[v>>2]))}else M=3;while(0);return(M|0)==3&&(l=y(s*l),l=y(l/l)),y(l)}function e3e(s){return s=y(s),h[v>>2]=s,n[v>>2]|0|0}function t3e(s,l){return s=s|0,l=l|0,l7(n[582]|0,s,l)|0}function Jr(s){s=s|0,Rt()}function Vm(s){s=s|0}function r3e(s,l){return s=s|0,l=l|0,0}function n3e(s){return s=s|0,(d7(s+4|0)|0)==-1?(ef[n[(n[s>>2]|0)+8>>2]&127](s),s=1):s=0,s|0}function d7(s){s=s|0;var l=0;return l=n[s>>2]|0,n[s>>2]=l+-1,l+-1|0}function bp(s){s=s|0,n3e(s)|0&&i3e(s)}function i3e(s){s=s|0;var l=0;l=s+8|0,(n[l>>2]|0)!=0&&(d7(l)|0)!=-1||ef[n[(n[s>>2]|0)+16>>2]&127](s)}function Kt(s){s=s|0;var l=0;for(l=(s|0)==0?1:s;s=pD(l)|0,!(s|0);){if(s=o3e()|0,!s){s=0;break}Q7[s&0]()}return s|0}function m7(s){return s=s|0,Kt(s)|0}function gt(s){s=s|0,hD(s)}function s3e(s){s=s|0,(o[s+11>>0]|0)<0&>(n[s>>2]|0)}function o3e(){var s=0;return s=n[2923]|0,n[2923]=s+0,s|0}function a3e(){}function dD(s,l,c,f){return s=s|0,l=l|0,c=c|0,f=f|0,f=l-f-(c>>>0>s>>>0|0)>>>0,De=f,s-c>>>0|0|0}function QR(s,l,c,f){return s=s|0,l=l|0,c=c|0,f=f|0,c=s+c>>>0,De=l+f+(c>>>0>>0|0)>>>0,c|0|0}function zm(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0,B=0;if(m=s+c|0,l=l&255,(c|0)>=67){for(;s&3;)o[s>>0]=l,s=s+1|0;for(f=m&-4|0,d=f-64|0,B=l|l<<8|l<<16|l<<24;(s|0)<=(d|0);)n[s>>2]=B,n[s+4>>2]=B,n[s+8>>2]=B,n[s+12>>2]=B,n[s+16>>2]=B,n[s+20>>2]=B,n[s+24>>2]=B,n[s+28>>2]=B,n[s+32>>2]=B,n[s+36>>2]=B,n[s+40>>2]=B,n[s+44>>2]=B,n[s+48>>2]=B,n[s+52>>2]=B,n[s+56>>2]=B,n[s+60>>2]=B,s=s+64|0;for(;(s|0)<(f|0);)n[s>>2]=B,s=s+4|0}for(;(s|0)<(m|0);)o[s>>0]=l,s=s+1|0;return m-c|0}function y7(s,l,c){return s=s|0,l=l|0,c=c|0,(c|0)<32?(De=l<>>32-c,s<>>c,s>>>c|(l&(1<>>c-32|0)}function Dr(s,l,c){s=s|0,l=l|0,c=c|0;var f=0,d=0,m=0;if((c|0)>=8192)return Ac(s|0,l|0,c|0)|0;if(m=s|0,d=s+c|0,(s&3)==(l&3)){for(;s&3;){if(!c)return m|0;o[s>>0]=o[l>>0]|0,s=s+1|0,l=l+1|0,c=c-1|0}for(c=d&-4|0,f=c-64|0;(s|0)<=(f|0);)n[s>>2]=n[l>>2],n[s+4>>2]=n[l+4>>2],n[s+8>>2]=n[l+8>>2],n[s+12>>2]=n[l+12>>2],n[s+16>>2]=n[l+16>>2],n[s+20>>2]=n[l+20>>2],n[s+24>>2]=n[l+24>>2],n[s+28>>2]=n[l+28>>2],n[s+32>>2]=n[l+32>>2],n[s+36>>2]=n[l+36>>2],n[s+40>>2]=n[l+40>>2],n[s+44>>2]=n[l+44>>2],n[s+48>>2]=n[l+48>>2],n[s+52>>2]=n[l+52>>2],n[s+56>>2]=n[l+56>>2],n[s+60>>2]=n[l+60>>2],s=s+64|0,l=l+64|0;for(;(s|0)<(c|0);)n[s>>2]=n[l>>2],s=s+4|0,l=l+4|0}else for(c=d-4|0;(s|0)<(c|0);)o[s>>0]=o[l>>0]|0,o[s+1>>0]=o[l+1>>0]|0,o[s+2>>0]=o[l+2>>0]|0,o[s+3>>0]=o[l+3>>0]|0,s=s+4|0,l=l+4|0;for(;(s|0)<(d|0);)o[s>>0]=o[l>>0]|0,s=s+1|0,l=l+1|0;return m|0}function E7(s){s=s|0;var l=0;return l=o[L+(s&255)>>0]|0,(l|0)<8?l|0:(l=o[L+(s>>8&255)>>0]|0,(l|0)<8?l+8|0:(l=o[L+(s>>16&255)>>0]|0,(l|0)<8?l+16|0:(o[L+(s>>>24)>>0]|0)+24|0))}function C7(s,l,c,f,d){s=s|0,l=l|0,c=c|0,f=f|0,d=d|0;var m=0,B=0,k=0,Q=0,M=0,O=0,q=0,se=0,Ge=0,Me=0;if(O=s,Q=l,M=Q,B=c,se=f,k=se,!M)return m=(d|0)!=0,k?m?(n[d>>2]=s|0,n[d+4>>2]=l&0,se=0,d=0,De=se,d|0):(se=0,d=0,De=se,d|0):(m&&(n[d>>2]=(O>>>0)%(B>>>0),n[d+4>>2]=0),se=0,d=(O>>>0)/(B>>>0)>>>0,De=se,d|0);m=(k|0)==0;do if(B){if(!m){if(m=(S(k|0)|0)-(S(M|0)|0)|0,m>>>0<=31){q=m+1|0,k=31-m|0,l=m-31>>31,B=q,s=O>>>(q>>>0)&l|M<>>(q>>>0)&l,m=0,k=O<>2]=s|0,n[d+4>>2]=Q|l&0,se=0,d=0,De=se,d|0):(se=0,d=0,De=se,d|0)}if(m=B-1|0,m&B|0){k=(S(B|0)|0)+33-(S(M|0)|0)|0,Me=64-k|0,q=32-k|0,Q=q>>31,Ge=k-32|0,l=Ge>>31,B=k,s=q-1>>31&M>>>(Ge>>>0)|(M<>>(k>>>0))&l,l=l&M>>>(k>>>0),m=O<>>(Ge>>>0))&Q|O<>31;break}return d|0&&(n[d>>2]=m&O,n[d+4>>2]=0),(B|0)==1?(Ge=Q|l&0,Me=s|0|0,De=Ge,Me|0):(Me=E7(B|0)|0,Ge=M>>>(Me>>>0)|0,Me=M<<32-Me|O>>>(Me>>>0)|0,De=Ge,Me|0)}else{if(m)return d|0&&(n[d>>2]=(M>>>0)%(B>>>0),n[d+4>>2]=0),Ge=0,Me=(M>>>0)/(B>>>0)>>>0,De=Ge,Me|0;if(!O)return d|0&&(n[d>>2]=0,n[d+4>>2]=(M>>>0)%(k>>>0)),Ge=0,Me=(M>>>0)/(k>>>0)>>>0,De=Ge,Me|0;if(m=k-1|0,!(m&k))return d|0&&(n[d>>2]=s|0,n[d+4>>2]=m&M|l&0),Ge=0,Me=M>>>((E7(k|0)|0)>>>0),De=Ge,Me|0;if(m=(S(k|0)|0)-(S(M|0)|0)|0,m>>>0<=30){l=m+1|0,k=31-m|0,B=l,s=M<>>(l>>>0),l=M>>>(l>>>0),m=0,k=O<>2]=s|0,n[d+4>>2]=Q|l&0,Ge=0,Me=0,De=Ge,Me|0):(Ge=0,Me=0,De=Ge,Me|0)}while(0);if(!B)M=k,Q=0,k=0;else{q=c|0|0,O=se|f&0,M=QR(q|0,O|0,-1,-1)|0,c=De,Q=k,k=0;do f=Q,Q=m>>>31|Q<<1,m=k|m<<1,f=s<<1|f>>>31|0,se=s>>>31|l<<1|0,dD(M|0,c|0,f|0,se|0)|0,Me=De,Ge=Me>>31|((Me|0)<0?-1:0)<<1,k=Ge&1,s=dD(f|0,se|0,Ge&q|0,(((Me|0)<0?-1:0)>>31|((Me|0)<0?-1:0)<<1)&O|0)|0,l=De,B=B-1|0;while((B|0)!=0);M=Q,Q=0}return B=0,d|0&&(n[d>>2]=s,n[d+4>>2]=l),Ge=(m|0)>>>31|(M|B)<<1|(B<<1|m>>>31)&0|Q,Me=(m<<1|0>>>31)&-2|k,De=Ge,Me|0}function FR(s,l,c,f){return s=s|0,l=l|0,c=c|0,f=f|0,C7(s,l,c,f,0)|0}function xp(s){s=s|0;var l=0,c=0;return c=s+15&-16|0,l=n[I>>2]|0,s=l+c|0,(c|0)>0&(s|0)<(l|0)|(s|0)<0?(ie()|0,vA(12),-1):(n[I>>2]=s,(s|0)>(Z()|0)&&(X()|0)==0?(n[I>>2]=l,vA(12),-1):l|0)}function Lw(s,l,c){s=s|0,l=l|0,c=c|0;var f=0;if((l|0)<(s|0)&(s|0)<(l+c|0)){for(f=s,l=l+c|0,s=s+c|0;(c|0)>0;)s=s-1|0,l=l-1|0,c=c-1|0,o[s>>0]=o[l>>0]|0;s=f}else Dr(s,l,c)|0;return s|0}function RR(s,l,c,f){s=s|0,l=l|0,c=c|0,f=f|0;var d=0,m=0;return m=E,E=E+16|0,d=m|0,C7(s,l,c,f,d)|0,E=m,De=n[d+4>>2]|0,n[d>>2]|0|0}function w7(s){return s=s|0,(s&255)<<24|(s>>8&255)<<16|(s>>16&255)<<8|s>>>24|0}function l3e(s,l,c,f,d,m){s=s|0,l=l|0,c=c|0,f=f|0,d=d|0,m=m|0,I7[s&1](l|0,c|0,f|0,d|0,m|0)}function c3e(s,l,c){s=s|0,l=l|0,c=y(c),B7[s&1](l|0,y(c))}function u3e(s,l,c){s=s|0,l=l|0,c=+c,v7[s&31](l|0,+c)}function A3e(s,l,c,f){return s=s|0,l=l|0,c=y(c),f=y(f),y(D7[s&0](l|0,y(c),y(f)))}function f3e(s,l){s=s|0,l=l|0,ef[s&127](l|0)}function p3e(s,l,c){s=s|0,l=l|0,c=c|0,tf[s&31](l|0,c|0)}function h3e(s,l){return s=s|0,l=l|0,Tg[s&31](l|0)|0}function g3e(s,l,c,f,d){s=s|0,l=l|0,c=+c,f=+f,d=d|0,P7[s&1](l|0,+c,+f,d|0)}function d3e(s,l,c,f){s=s|0,l=l|0,c=+c,f=+f,J3e[s&1](l|0,+c,+f)}function m3e(s,l,c,f){return s=s|0,l=l|0,c=c|0,f=f|0,ED[s&7](l|0,c|0,f|0)|0}function y3e(s,l,c,f){return s=s|0,l=l|0,c=c|0,f=f|0,+X3e[s&1](l|0,c|0,f|0)}function E3e(s,l){return s=s|0,l=l|0,+S7[s&15](l|0)}function C3e(s,l,c){return s=s|0,l=l|0,c=+c,Z3e[s&1](l|0,+c)|0}function w3e(s,l,c){return s=s|0,l=l|0,c=c|0,NR[s&15](l|0,c|0)|0}function I3e(s,l,c,f,d,m){s=s|0,l=l|0,c=c|0,f=+f,d=+d,m=m|0,$3e[s&1](l|0,c|0,+f,+d,m|0)}function B3e(s,l,c,f,d,m,B){s=s|0,l=l|0,c=c|0,f=f|0,d=d|0,m=m|0,B=B|0,e_e[s&1](l|0,c|0,f|0,d|0,m|0,B|0)}function v3e(s,l,c){return s=s|0,l=l|0,c=c|0,+b7[s&7](l|0,c|0)}function D3e(s){return s=s|0,CD[s&7]()|0}function P3e(s,l,c,f,d,m){return s=s|0,l=l|0,c=c|0,f=f|0,d=d|0,m=m|0,x7[s&1](l|0,c|0,f|0,d|0,m|0)|0}function S3e(s,l,c,f,d){s=s|0,l=l|0,c=c|0,f=f|0,d=+d,t_e[s&1](l|0,c|0,f|0,+d)}function b3e(s,l,c,f,d,m,B){s=s|0,l=l|0,c=c|0,f=y(f),d=d|0,m=y(m),B=B|0,k7[s&1](l|0,c|0,y(f),d|0,y(m),B|0)}function x3e(s,l,c,f){s=s|0,l=l|0,c=c|0,f=f|0,Uw[s&15](l|0,c|0,f|0)}function k3e(s){s=s|0,Q7[s&0]()}function Q3e(s,l,c,f){s=s|0,l=l|0,c=c|0,f=+f,F7[s&15](l|0,c|0,+f)}function F3e(s,l,c){return s=s|0,l=+l,c=+c,r_e[s&1](+l,+c)|0}function R3e(s,l,c,f,d){s=s|0,l=l|0,c=c|0,f=f|0,d=d|0,LR[s&15](l|0,c|0,f|0,d|0)}function T3e(s,l,c,f,d){s=s|0,l=l|0,c=c|0,f=f|0,d=d|0,F(0)}function N3e(s,l){s=s|0,l=y(l),F(1)}function ma(s,l){s=s|0,l=+l,F(2)}function L3e(s,l,c){return s=s|0,l=y(l),c=y(c),F(3),Ze}function Er(s){s=s|0,F(4)}function Ow(s,l){s=s|0,l=l|0,F(5)}function za(s){return s=s|0,F(6),0}function O3e(s,l,c,f){s=s|0,l=+l,c=+c,f=f|0,F(7)}function M3e(s,l,c){s=s|0,l=+l,c=+c,F(8)}function U3e(s,l,c){return s=s|0,l=l|0,c=c|0,F(9),0}function _3e(s,l,c){return s=s|0,l=l|0,c=c|0,F(10),0}function Rg(s){return s=s|0,F(11),0}function H3e(s,l){return s=s|0,l=+l,F(12),0}function Mw(s,l){return s=s|0,l=l|0,F(13),0}function j3e(s,l,c,f,d){s=s|0,l=l|0,c=+c,f=+f,d=d|0,F(14)}function q3e(s,l,c,f,d,m){s=s|0,l=l|0,c=c|0,f=f|0,d=d|0,m=m|0,F(15)}function TR(s,l){return s=s|0,l=l|0,F(16),0}function G3e(){return F(17),0}function Y3e(s,l,c,f,d){return s=s|0,l=l|0,c=c|0,f=f|0,d=d|0,F(18),0}function W3e(s,l,c,f){s=s|0,l=l|0,c=c|0,f=+f,F(19)}function K3e(s,l,c,f,d,m){s=s|0,l=l|0,c=y(c),f=f|0,d=y(d),m=m|0,F(20)}function yD(s,l,c){s=s|0,l=l|0,c=c|0,F(21)}function V3e(){F(22)}function Jm(s,l,c){s=s|0,l=l|0,c=+c,F(23)}function z3e(s,l){return s=+s,l=+l,F(24),0}function Xm(s,l,c,f){s=s|0,l=l|0,c=c|0,f=f|0,F(25)}var I7=[T3e,YLe],B7=[N3e,fo],v7=[ma,Sw,bw,wF,IF,Dl,xw,BF,_m,bu,Qw,vF,$v,WA,eD,Hm,tD,rD,jm,ma,ma,ma,ma,ma,ma,ma,ma,ma,ma,ma,ma,ma],D7=[L3e],ef=[Er,Vm,DDe,PDe,SDe,rxe,nxe,ixe,CNe,wNe,INe,FLe,RLe,TLe,eUe,tUe,rUe,hs,Vv,Um,YA,kw,wve,Ive,gDe,NDe,KDe,APe,SPe,GPe,aSe,ISe,OSe,$Se,gbe,Qbe,Kbe,wxe,Oxe,$xe,gke,Qke,Kke,fQe,SQe,HQe,nFe,Sc,TFe,JFe,gRe,RRe,VRe,gTe,DTe,bTe,YTe,VTe,ANe,vNe,SNe,GNe,lLe,l5,qOe,CMe,NMe,JMe,y4e,R4e,G4e,K4e,Er,Er,Er,Er,Er,Er,Er,Er,Er,Er,Er,Er,Er,Er,Er,Er,Er,Er,Er,Er,Er,Er,Er,Er,Er,Er,Er,Er,Er,Er,Er,Er,Er,Er,Er,Er,Er,Er,Er,Er,Er,Er,Er,Er,Er,Er,Er,Er,Er,Er,Er,Er,Er,Er,Er,Er],tf=[Ow,hF,gF,Pw,Su,dF,mF,wp,yF,EF,CF,Zv,KA,Ve,At,Wt,vr,Sn,Fr,PF,lve,Qve,dQe,kQe,ORe,WOe,dLe,W9,Ow,Ow,Ow,Ow],Tg=[za,QUe,pF,D,fe,ve,vt,wt,xt,_r,di,po,sve,ove,Bve,oFe,ZRe,KNe,JOe,Wa,za,za,za,za,za,za,za,za,za,za,za,za],P7=[O3e,vve],J3e=[M3e,hNe],ED=[U3e,o7,FUe,NUe,VPe,Dxe,MFe,e4e],X3e=[_3e,Ebe],S7=[Rg,Yo,rt,bn,Dve,Pve,Sve,bve,xve,kve,Rg,Rg,Rg,Rg,Rg,Rg],Z3e=[H3e,ITe],NR=[Mw,r3e,ave,EDe,gPe,uSe,DSe,Xbe,Hxe,YQe,Wv,UMe,Mw,Mw,Mw,Mw],$3e=[j3e,XDe],e_e=[q3e,I4e],b7=[TR,ai,Fve,Rve,Tve,Nbe,TR,TR],CD=[G3e,Nve,vw,ga,FTe,ZTe,QNe,X4e],x7=[Y3e,yw],t_e=[W3e,Eke],k7=[K3e,cve],Uw=[yD,T,is,en,ho,QPe,_Se,Nke,Xke,Mm,hOe,vMe,O4e,yD,yD,yD],Q7=[V3e],F7=[Jm,zv,Jv,Xv,GA,nD,DF,P,nke,eRe,yTe,Jm,Jm,Jm,Jm,Jm],r_e=[z3e,yNe],LR=[Xm,nbe,hFe,ERe,aTe,MTe,iNe,MNe,pLe,rMe,lUe,Xm,Xm,Xm,Xm,Xm];return{_llvm_bswap_i32:w7,dynCall_idd:F3e,dynCall_i:D3e,_i64Subtract:dD,___udivdi3:FR,dynCall_vif:c3e,setThrew:hu,dynCall_viii:x3e,_bitshift64Lshr:mD,_bitshift64Shl:y7,dynCall_vi:f3e,dynCall_viiddi:I3e,dynCall_diii:y3e,dynCall_iii:w3e,_memset:zm,_sbrk:xp,_memcpy:Dr,__GLOBAL__sub_I_Yoga_cpp:Om,dynCall_vii:p3e,___uremdi3:RR,dynCall_vid:u3e,stackAlloc:lo,_nbind_init:EUe,getTempRet0:Ua,dynCall_di:E3e,dynCall_iid:C3e,setTempRet0:bA,_i64Add:QR,dynCall_fiff:A3e,dynCall_iiii:m3e,_emscripten_get_global_libc:kUe,dynCall_viid:Q3e,dynCall_viiid:S3e,dynCall_viififi:b3e,dynCall_ii:h3e,__GLOBAL__sub_I_Binding_cc:NOe,dynCall_viiii:R3e,dynCall_iiiiii:P3e,stackSave:gc,dynCall_viiiii:l3e,__GLOBAL__sub_I_nbind_cc:Lve,dynCall_vidd:d3e,_free:hD,runPostSets:a3e,dynCall_viiiiii:B3e,establishStackSpace:ji,_memmove:Lw,stackRestore:pu,_malloc:pD,__GLOBAL__sub_I_common_cc:tLe,dynCall_viddi:g3e,dynCall_dii:v3e,dynCall_v:k3e}}(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(t){this.name="ExitStatus",this.message="Program terminated with exit("+t+")",this.status=t}ExitStatus.prototype=new Error,ExitStatus.prototype.constructor=ExitStatus;var initialStackTop,preloadStartTime=null,calledMain=!1;dependenciesFulfilled=function t(){Module.calledRun||run(),Module.calledRun||(dependenciesFulfilled=t)},Module.callMain=Module.callMain=function t(e){e=e||[],ensureInitRuntime();var r=e.length+1;function o(){for(var p=0;p<4-1;p++)a.push(0)}var a=[allocate(intArrayFromString(Module.thisProgram),"i8",ALLOC_NORMAL)];o();for(var n=0;n0||(preRun(),runDependencies>0)||Module.calledRun)return;function e(){Module.calledRun||(Module.calledRun=!0,!ABORT&&(ensureInitRuntime(),preMain(),Module.onRuntimeInitialized&&Module.onRuntimeInitialized(),Module._main&&shouldRunNow&&Module.callMain(t),postRun()))}Module.setStatus?(Module.setStatus("Running..."),setTimeout(function(){setTimeout(function(){Module.setStatus("")},1),e()},1)):e()}Module.run=Module.run=run;function exit(t,e){e&&Module.noExitRuntime||(Module.noExitRuntime||(ABORT=!0,EXITSTATUS=t,STACKTOP=initialStackTop,exitRuntime(),Module.onExit&&Module.onExit(t)),ENVIRONMENT_IS_NODE&&process.exit(t),Module.quit(t,new ExitStatus(t)))}Module.exit=Module.exit=exit;var abortDecorators=[];function abort(t){Module.onAbort&&Module.onAbort(t),t!==void 0?(Module.print(t),Module.printErr(t),t=JSON.stringify(t)):t="",ABORT=!0,EXITSTATUS=1;var e=` +If this abort() is unexpected, build with -s ASSERTIONS=1 which can give more information.`,r="abort("+t+") at "+stackTrace()+e;throw abortDecorators&&abortDecorators.forEach(function(o){r=o(r,t)}),r}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 sm=_((wKt,MEe)=>{"use strict";var Kyt=LEe(),Vyt=OEe(),Q6=!1,F6=null;Vyt({},function(t,e){if(!Q6){if(Q6=!0,t)throw t;F6=e}});if(!Q6)throw new Error("Failed to load the yoga module - it needed to be loaded synchronously, but didn't");MEe.exports=Kyt(F6.bind,F6.lib)});var T6=_((IKt,R6)=>{"use strict";var UEe=t=>Number.isNaN(t)?!1:t>=4352&&(t<=4447||t===9001||t===9002||11904<=t&&t<=12871&&t!==12351||12880<=t&&t<=19903||19968<=t&&t<=42182||43360<=t&&t<=43388||44032<=t&&t<=55203||63744<=t&&t<=64255||65040<=t&&t<=65049||65072<=t&&t<=65131||65281<=t&&t<=65376||65504<=t&&t<=65510||110592<=t&&t<=110593||127488<=t&&t<=127569||131072<=t&&t<=262141);R6.exports=UEe;R6.exports.default=UEe});var HEe=_((BKt,_Ee)=>{"use strict";_Ee.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 zk=_((vKt,N6)=>{"use strict";var zyt=OP(),Jyt=T6(),Xyt=HEe(),jEe=t=>{if(typeof t!="string"||t.length===0||(t=zyt(t),t.length===0))return 0;t=t.replace(Xyt()," ");let e=0;for(let r=0;r=127&&o<=159||o>=768&&o<=879||(o>65535&&r++,e+=Jyt(o)?2:1)}return e};N6.exports=jEe;N6.exports.default=jEe});var O6=_((DKt,L6)=>{"use strict";var Zyt=zk(),qEe=t=>{let e=0;for(let r of t.split(` +`))e=Math.max(e,Zyt(r));return e};L6.exports=qEe;L6.exports.default=qEe});var GEe=_(lB=>{"use strict";var $yt=lB&&lB.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(lB,"__esModule",{value:!0});var eEt=$yt(O6()),M6={};lB.default=t=>{if(t.length===0)return{width:0,height:0};if(M6[t])return M6[t];let e=eEt.default(t),r=t.split(` +`).length;return M6[t]={width:e,height:r},{width:e,height:r}}});var YEe=_(cB=>{"use strict";var tEt=cB&&cB.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(cB,"__esModule",{value:!0});var dn=tEt(sm()),rEt=(t,e)=>{"position"in e&&t.setPositionType(e.position==="absolute"?dn.default.POSITION_TYPE_ABSOLUTE:dn.default.POSITION_TYPE_RELATIVE)},nEt=(t,e)=>{"marginLeft"in e&&t.setMargin(dn.default.EDGE_START,e.marginLeft||0),"marginRight"in e&&t.setMargin(dn.default.EDGE_END,e.marginRight||0),"marginTop"in e&&t.setMargin(dn.default.EDGE_TOP,e.marginTop||0),"marginBottom"in e&&t.setMargin(dn.default.EDGE_BOTTOM,e.marginBottom||0)},iEt=(t,e)=>{"paddingLeft"in e&&t.setPadding(dn.default.EDGE_LEFT,e.paddingLeft||0),"paddingRight"in e&&t.setPadding(dn.default.EDGE_RIGHT,e.paddingRight||0),"paddingTop"in e&&t.setPadding(dn.default.EDGE_TOP,e.paddingTop||0),"paddingBottom"in e&&t.setPadding(dn.default.EDGE_BOTTOM,e.paddingBottom||0)},sEt=(t,e)=>{var r;"flexGrow"in e&&t.setFlexGrow((r=e.flexGrow)!==null&&r!==void 0?r:0),"flexShrink"in e&&t.setFlexShrink(typeof e.flexShrink=="number"?e.flexShrink:1),"flexDirection"in e&&(e.flexDirection==="row"&&t.setFlexDirection(dn.default.FLEX_DIRECTION_ROW),e.flexDirection==="row-reverse"&&t.setFlexDirection(dn.default.FLEX_DIRECTION_ROW_REVERSE),e.flexDirection==="column"&&t.setFlexDirection(dn.default.FLEX_DIRECTION_COLUMN),e.flexDirection==="column-reverse"&&t.setFlexDirection(dn.default.FLEX_DIRECTION_COLUMN_REVERSE)),"flexBasis"in e&&(typeof e.flexBasis=="number"?t.setFlexBasis(e.flexBasis):typeof e.flexBasis=="string"?t.setFlexBasisPercent(Number.parseInt(e.flexBasis,10)):t.setFlexBasis(NaN)),"alignItems"in e&&((e.alignItems==="stretch"||!e.alignItems)&&t.setAlignItems(dn.default.ALIGN_STRETCH),e.alignItems==="flex-start"&&t.setAlignItems(dn.default.ALIGN_FLEX_START),e.alignItems==="center"&&t.setAlignItems(dn.default.ALIGN_CENTER),e.alignItems==="flex-end"&&t.setAlignItems(dn.default.ALIGN_FLEX_END)),"alignSelf"in e&&((e.alignSelf==="auto"||!e.alignSelf)&&t.setAlignSelf(dn.default.ALIGN_AUTO),e.alignSelf==="flex-start"&&t.setAlignSelf(dn.default.ALIGN_FLEX_START),e.alignSelf==="center"&&t.setAlignSelf(dn.default.ALIGN_CENTER),e.alignSelf==="flex-end"&&t.setAlignSelf(dn.default.ALIGN_FLEX_END)),"justifyContent"in e&&((e.justifyContent==="flex-start"||!e.justifyContent)&&t.setJustifyContent(dn.default.JUSTIFY_FLEX_START),e.justifyContent==="center"&&t.setJustifyContent(dn.default.JUSTIFY_CENTER),e.justifyContent==="flex-end"&&t.setJustifyContent(dn.default.JUSTIFY_FLEX_END),e.justifyContent==="space-between"&&t.setJustifyContent(dn.default.JUSTIFY_SPACE_BETWEEN),e.justifyContent==="space-around"&&t.setJustifyContent(dn.default.JUSTIFY_SPACE_AROUND))},oEt=(t,e)=>{var r,o;"width"in e&&(typeof e.width=="number"?t.setWidth(e.width):typeof e.width=="string"?t.setWidthPercent(Number.parseInt(e.width,10)):t.setWidthAuto()),"height"in e&&(typeof e.height=="number"?t.setHeight(e.height):typeof e.height=="string"?t.setHeightPercent(Number.parseInt(e.height,10)):t.setHeightAuto()),"minWidth"in e&&(typeof e.minWidth=="string"?t.setMinWidthPercent(Number.parseInt(e.minWidth,10)):t.setMinWidth((r=e.minWidth)!==null&&r!==void 0?r:0)),"minHeight"in e&&(typeof e.minHeight=="string"?t.setMinHeightPercent(Number.parseInt(e.minHeight,10)):t.setMinHeight((o=e.minHeight)!==null&&o!==void 0?o:0))},aEt=(t,e)=>{"display"in e&&t.setDisplay(e.display==="flex"?dn.default.DISPLAY_FLEX:dn.default.DISPLAY_NONE)},lEt=(t,e)=>{if("borderStyle"in e){let r=typeof e.borderStyle=="string"?1:0;t.setBorder(dn.default.EDGE_TOP,r),t.setBorder(dn.default.EDGE_BOTTOM,r),t.setBorder(dn.default.EDGE_LEFT,r),t.setBorder(dn.default.EDGE_RIGHT,r)}};cB.default=(t,e={})=>{rEt(t,e),nEt(t,e),iEt(t,e),sEt(t,e),oEt(t,e),aEt(t,e),lEt(t,e)}});var VEe=_((bKt,KEe)=>{"use strict";var uB=zk(),cEt=OP(),uEt=BI(),_6=new Set(["\x1B","\x9B"]),AEt=39,WEe=t=>`${_6.values().next().value}[${t}m`,fEt=t=>t.split(" ").map(e=>uB(e)),U6=(t,e,r)=>{let o=[...e],a=!1,n=uB(cEt(t[t.length-1]));for(let[u,A]of o.entries()){let p=uB(A);if(n+p<=r?t[t.length-1]+=A:(t.push(A),n=0),_6.has(A))a=!0;else if(a&&A==="m"){a=!1;continue}a||(n+=p,n===r&&u0&&t.length>1&&(t[t.length-2]+=t.pop())},pEt=t=>{let e=t.split(" "),r=e.length;for(;r>0&&!(uB(e[r-1])>0);)r--;return r===e.length?t:e.slice(0,r).join(" ")+e.slice(r).join("")},hEt=(t,e,r={})=>{if(r.trim!==!1&&t.trim()==="")return"";let o="",a="",n,u=fEt(t),A=[""];for(let[p,h]of t.split(" ").entries()){r.trim!==!1&&(A[A.length-1]=A[A.length-1].trimLeft());let C=uB(A[A.length-1]);if(p!==0&&(C>=e&&(r.wordWrap===!1||r.trim===!1)&&(A.push(""),C=0),(C>0||r.trim===!1)&&(A[A.length-1]+=" ",C++)),r.hard&&u[p]>e){let I=e-C,v=1+Math.floor((u[p]-I-1)/e);Math.floor((u[p]-1)/e)e&&C>0&&u[p]>0){if(r.wordWrap===!1&&Ce&&r.wordWrap===!1){U6(A,h,e);continue}A[A.length-1]+=h}r.trim!==!1&&(A=A.map(pEt)),o=A.join(` +`);for(let[p,h]of[...o].entries()){if(a+=h,_6.has(h)){let I=parseFloat(/\d[^m]*/.exec(o.slice(p,p+4)));n=I===AEt?null:I}let C=uEt.codes.get(Number(n));n&&C&&(o[p+1]===` +`?a+=WEe(C):h===` +`&&(a+=WEe(n)))}return a};KEe.exports=(t,e,r)=>String(t).normalize().replace(/\r\n/g,` +`).split(` +`).map(o=>hEt(o,e,r)).join(` +`)});var XEe=_((xKt,JEe)=>{"use strict";var zEe="[\uD800-\uDBFF][\uDC00-\uDFFF]",gEt=t=>t&&t.exact?new RegExp(`^${zEe}$`):new RegExp(zEe,"g");JEe.exports=gEt});var H6=_((kKt,tCe)=>{"use strict";var dEt=T6(),mEt=XEe(),ZEe=BI(),eCe=["\x1B","\x9B"],Jk=t=>`${eCe[0]}[${t}m`,$Ee=(t,e,r)=>{let o=[];t=[...t];for(let a of t){let n=a;a.match(";")&&(a=a.split(";")[0][0]+"0");let u=ZEe.codes.get(parseInt(a,10));if(u){let A=t.indexOf(u.toString());A>=0?t.splice(A,1):o.push(Jk(e?u:n))}else if(e){o.push(Jk(0));break}else o.push(Jk(n))}if(e&&(o=o.filter((a,n)=>o.indexOf(a)===n),r!==void 0)){let a=Jk(ZEe.codes.get(parseInt(r,10)));o=o.reduce((n,u)=>u===a?[u,...n]:[...n,u],[])}return o.join("")};tCe.exports=(t,e,r)=>{let o=[...t.normalize()],a=[];r=typeof r=="number"?r:o.length;let n=!1,u,A=0,p="";for(let[h,C]of o.entries()){let I=!1;if(eCe.includes(C)){let v=/\d[^m]*/.exec(t.slice(h,h+18));u=v&&v.length>0?v[0]:void 0,Ae&&A<=r)p+=C;else if(A===e&&!n&&u!==void 0)p=$Ee(a);else if(A>=r){p+=$Ee(a,!0,u);break}}return p}});var nCe=_((QKt,rCe)=>{"use strict";var y0=H6(),yEt=zk();function Xk(t,e,r){if(t.charAt(e)===" ")return e;for(let o=1;o<=3;o++)if(r){if(t.charAt(e+o)===" ")return e+o}else if(t.charAt(e-o)===" ")return e-o;return e}rCe.exports=(t,e,r)=>{r={position:"end",preferTruncationOnSpace:!1,...r};let{position:o,space:a,preferTruncationOnSpace:n}=r,u="\u2026",A=1;if(typeof t!="string")throw new TypeError(`Expected \`input\` to be a string, got ${typeof t}`);if(typeof e!="number")throw new TypeError(`Expected \`columns\` to be a number, got ${typeof e}`);if(e<1)return"";if(e===1)return u;let p=yEt(t);if(p<=e)return t;if(o==="start"){if(n){let h=Xk(t,p-e+1,!0);return u+y0(t,h,p).trim()}return a===!0&&(u+=" ",A=2),u+y0(t,p-e+A,p)}if(o==="middle"){a===!0&&(u=" "+u+" ",A=3);let h=Math.floor(e/2);if(n){let C=Xk(t,h),I=Xk(t,p-(e-h)+1,!0);return y0(t,0,C)+u+y0(t,I,p).trim()}return y0(t,0,h)+u+y0(t,p-(e-h)+A,p)}if(o==="end"){if(n){let h=Xk(t,e-1);return y0(t,0,h)+u}return a===!0&&(u=" "+u,A=2),y0(t,0,e-A)+u}throw new Error(`Expected \`options.position\` to be either \`start\`, \`middle\` or \`end\`, got ${o}`)}});var q6=_(AB=>{"use strict";var iCe=AB&&AB.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(AB,"__esModule",{value:!0});var EEt=iCe(VEe()),CEt=iCe(nCe()),j6={};AB.default=(t,e,r)=>{let o=t+String(e)+String(r);if(j6[o])return j6[o];let a=t;if(r==="wrap"&&(a=EEt.default(t,e,{trim:!1,hard:!0})),r.startsWith("truncate")){let n="end";r==="truncate-middle"&&(n="middle"),r==="truncate-start"&&(n="start"),a=CEt.default(t,e,{position:n})}return j6[o]=a,a}});var Y6=_(G6=>{"use strict";Object.defineProperty(G6,"__esModule",{value:!0});var sCe=t=>{let e="";if(t.childNodes.length>0)for(let r of t.childNodes){let o="";r.nodeName==="#text"?o=r.nodeValue:((r.nodeName==="ink-text"||r.nodeName==="ink-virtual-text")&&(o=sCe(r)),o.length>0&&typeof r.internal_transform=="function"&&(o=r.internal_transform(o))),e+=o}return e};G6.default=sCe});var W6=_(pi=>{"use strict";var fB=pi&&pi.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(pi,"__esModule",{value:!0});pi.setTextNodeValue=pi.createTextNode=pi.setStyle=pi.setAttribute=pi.removeChildNode=pi.insertBeforeNode=pi.appendChildNode=pi.createNode=pi.TEXT_NAME=void 0;var wEt=fB(sm()),oCe=fB(GEe()),IEt=fB(YEe()),BEt=fB(q6()),vEt=fB(Y6());pi.TEXT_NAME="#text";pi.createNode=t=>{var e;let r={nodeName:t,style:{},attributes:{},childNodes:[],parentNode:null,yogaNode:t==="ink-virtual-text"?void 0:wEt.default.Node.create()};return t==="ink-text"&&((e=r.yogaNode)===null||e===void 0||e.setMeasureFunc(DEt.bind(null,r))),r};pi.appendChildNode=(t,e)=>{var r;e.parentNode&&pi.removeChildNode(e.parentNode,e),e.parentNode=t,t.childNodes.push(e),e.yogaNode&&((r=t.yogaNode)===null||r===void 0||r.insertChild(e.yogaNode,t.yogaNode.getChildCount())),(t.nodeName==="ink-text"||t.nodeName==="ink-virtual-text")&&Zk(t)};pi.insertBeforeNode=(t,e,r)=>{var o,a;e.parentNode&&pi.removeChildNode(e.parentNode,e),e.parentNode=t;let n=t.childNodes.indexOf(r);if(n>=0){t.childNodes.splice(n,0,e),e.yogaNode&&((o=t.yogaNode)===null||o===void 0||o.insertChild(e.yogaNode,n));return}t.childNodes.push(e),e.yogaNode&&((a=t.yogaNode)===null||a===void 0||a.insertChild(e.yogaNode,t.yogaNode.getChildCount())),(t.nodeName==="ink-text"||t.nodeName==="ink-virtual-text")&&Zk(t)};pi.removeChildNode=(t,e)=>{var r,o;e.yogaNode&&((o=(r=e.parentNode)===null||r===void 0?void 0:r.yogaNode)===null||o===void 0||o.removeChild(e.yogaNode)),e.parentNode=null;let a=t.childNodes.indexOf(e);a>=0&&t.childNodes.splice(a,1),(t.nodeName==="ink-text"||t.nodeName==="ink-virtual-text")&&Zk(t)};pi.setAttribute=(t,e,r)=>{t.attributes[e]=r};pi.setStyle=(t,e)=>{t.style=e,t.yogaNode&&IEt.default(t.yogaNode,e)};pi.createTextNode=t=>{let e={nodeName:"#text",nodeValue:t,yogaNode:void 0,parentNode:null,style:{}};return pi.setTextNodeValue(e,t),e};var DEt=function(t,e){var r,o;let a=t.nodeName==="#text"?t.nodeValue:vEt.default(t),n=oCe.default(a);if(n.width<=e||n.width>=1&&e>0&&e<1)return n;let u=(o=(r=t.style)===null||r===void 0?void 0:r.textWrap)!==null&&o!==void 0?o:"wrap",A=BEt.default(a,e,u);return oCe.default(A)},aCe=t=>{var e;if(!(!t||!t.parentNode))return(e=t.yogaNode)!==null&&e!==void 0?e:aCe(t.parentNode)},Zk=t=>{let e=aCe(t);e?.markDirty()};pi.setTextNodeValue=(t,e)=>{typeof e!="string"&&(e=String(e)),t.nodeValue=e,Zk(t)}});var fCe=_(pB=>{"use strict";var ACe=pB&&pB.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(pB,"__esModule",{value:!0});var lCe=b6(),PEt=ACe(kEe()),cCe=ACe(sm()),Oo=W6(),uCe=t=>{t?.unsetMeasureFunc(),t?.freeRecursive()};pB.default=PEt.default({schedulePassiveEffects:lCe.unstable_scheduleCallback,cancelPassiveEffects:lCe.unstable_cancelCallback,now:Date.now,getRootHostContext:()=>({isInsideText:!1}),prepareForCommit:()=>{},resetAfterCommit:t=>{if(t.isStaticDirty){t.isStaticDirty=!1,typeof t.onImmediateRender=="function"&&t.onImmediateRender();return}typeof t.onRender=="function"&&t.onRender()},getChildHostContext:(t,e)=>{let r=t.isInsideText,o=e==="ink-text"||e==="ink-virtual-text";return r===o?t:{isInsideText:o}},shouldSetTextContent:()=>!1,createInstance:(t,e,r,o)=>{if(o.isInsideText&&t==="ink-box")throw new Error(" can\u2019t be nested inside component");let a=t==="ink-text"&&o.isInsideText?"ink-virtual-text":t,n=Oo.createNode(a);for(let[u,A]of Object.entries(e))u!=="children"&&(u==="style"?Oo.setStyle(n,A):u==="internal_transform"?n.internal_transform=A:u==="internal_static"?n.internal_static=!0:Oo.setAttribute(n,u,A));return n},createTextInstance:(t,e,r)=>{if(!r.isInsideText)throw new Error(`Text string "${t}" must be rendered inside component`);return Oo.createTextNode(t)},resetTextContent:()=>{},hideTextInstance:t=>{Oo.setTextNodeValue(t,"")},unhideTextInstance:(t,e)=>{Oo.setTextNodeValue(t,e)},getPublicInstance:t=>t,hideInstance:t=>{var e;(e=t.yogaNode)===null||e===void 0||e.setDisplay(cCe.default.DISPLAY_NONE)},unhideInstance:t=>{var e;(e=t.yogaNode)===null||e===void 0||e.setDisplay(cCe.default.DISPLAY_FLEX)},appendInitialChild:Oo.appendChildNode,appendChild:Oo.appendChildNode,insertBefore:Oo.insertBeforeNode,finalizeInitialChildren:(t,e,r,o)=>(t.internal_static&&(o.isStaticDirty=!0,o.staticNode=t),!1),supportsMutation:!0,appendChildToContainer:Oo.appendChildNode,insertInContainerBefore:Oo.insertBeforeNode,removeChildFromContainer:(t,e)=>{Oo.removeChildNode(t,e),uCe(e.yogaNode)},prepareUpdate:(t,e,r,o,a)=>{t.internal_static&&(a.isStaticDirty=!0);let n={},u=Object.keys(o);for(let A of u)if(o[A]!==r[A]){if(A==="style"&&typeof o.style=="object"&&typeof r.style=="object"){let h=o.style,C=r.style,I=Object.keys(h);for(let v of I){if(v==="borderStyle"||v==="borderColor"){if(typeof n.style!="object"){let x={};n.style=x}n.style.borderStyle=h.borderStyle,n.style.borderColor=h.borderColor}if(h[v]!==C[v]){if(typeof n.style!="object"){let x={};n.style=x}n.style[v]=h[v]}}continue}n[A]=o[A]}return n},commitUpdate:(t,e)=>{for(let[r,o]of Object.entries(e))r!=="children"&&(r==="style"?Oo.setStyle(t,o):r==="internal_transform"?t.internal_transform=o:r==="internal_static"?t.internal_static=!0:Oo.setAttribute(t,r,o))},commitTextUpdate:(t,e,r)=>{Oo.setTextNodeValue(t,r)},removeChild:(t,e)=>{Oo.removeChildNode(t,e),uCe(e.yogaNode)}})});var hCe=_((LKt,pCe)=>{"use strict";pCe.exports=(t,e=1,r)=>{if(r={indent:" ",includeEmptyLines:!1,...r},typeof t!="string")throw new TypeError(`Expected \`input\` to be a \`string\`, got \`${typeof t}\``);if(typeof e!="number")throw new TypeError(`Expected \`count\` to be a \`number\`, got \`${typeof e}\``);if(typeof r.indent!="string")throw new TypeError(`Expected \`options.indent\` to be a \`string\`, got \`${typeof r.indent}\``);if(e===0)return t;let o=r.includeEmptyLines?/^/gm:/^(?!\s*$)/gm;return t.replace(o,r.indent.repeat(e))}});var gCe=_(hB=>{"use strict";var SEt=hB&&hB.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(hB,"__esModule",{value:!0});var $k=SEt(sm());hB.default=t=>t.getComputedWidth()-t.getComputedPadding($k.default.EDGE_LEFT)-t.getComputedPadding($k.default.EDGE_RIGHT)-t.getComputedBorder($k.default.EDGE_LEFT)-t.getComputedBorder($k.default.EDGE_RIGHT)});var dCe=_((MKt,bEt)=>{bEt.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 yCe=_((UKt,K6)=>{"use strict";var mCe=dCe();K6.exports=mCe;K6.exports.default=mCe});var CCe=_((_Kt,ECe)=>{"use strict";var xEt=(t,e,r)=>{let o=t.indexOf(e);if(o===-1)return t;let a=e.length,n=0,u="";do u+=t.substr(n,o-n)+e+r,n=o+a,o=t.indexOf(e,n);while(o!==-1);return u+=t.substr(n),u},kEt=(t,e,r,o)=>{let a=0,n="";do{let u=t[o-1]==="\r";n+=t.substr(a,(u?o-1:o)-a)+e+(u?`\r +`:` +`)+r,a=o+1,o=t.indexOf(` +`,a)}while(o!==-1);return n+=t.substr(a),n};ECe.exports={stringReplaceAll:xEt,stringEncaseCRLFWithFirstIndex:kEt}});var DCe=_((HKt,vCe)=>{"use strict";var QEt=/(?:\\(u(?:[a-f\d]{4}|\{[a-f\d]{1,6}\})|x[a-f\d]{2}|.))|(?:\{(~)?(\w+(?:\([^)]*\))?(?:\.\w+(?:\([^)]*\))?)*)(?:[ \t]|(?=\r?\n)))|(\})|((?:.|[\r\n\f])+?)/gi,wCe=/(?:^|\.)(\w+)(?:\(([^)]*)\))?/g,FEt=/^(['"])((?:\\.|(?!\1)[^\\])*)\1$/,REt=/\\(u(?:[a-f\d]{4}|{[a-f\d]{1,6}})|x[a-f\d]{2}|.)|([^\\])/gi,TEt=new Map([["n",` +`],["r","\r"],["t"," "],["b","\b"],["f","\f"],["v","\v"],["0","\0"],["\\","\\"],["e","\x1B"],["a","\x07"]]);function BCe(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)):TEt.get(t)||t}function NEt(t,e){let r=[],o=e.trim().split(/\s*,\s*/g),a;for(let n of o){let u=Number(n);if(!Number.isNaN(u))r.push(u);else if(a=n.match(FEt))r.push(a[2].replace(REt,(A,p,h)=>p?BCe(p):h));else throw new Error(`Invalid Chalk template style argument: ${n} (in style '${t}')`)}return r}function LEt(t){wCe.lastIndex=0;let e=[],r;for(;(r=wCe.exec(t))!==null;){let o=r[1];if(r[2]){let a=NEt(o,r[2]);e.push([o].concat(a))}else e.push([o])}return e}function ICe(t,e){let r={};for(let a of e)for(let n of a.styles)r[n[0]]=a.inverse?null:n.slice(1);let o=t;for(let[a,n]of Object.entries(r))if(!!Array.isArray(n)){if(!(a in o))throw new Error(`Unknown Chalk style: ${a}`);o=n.length>0?o[a](...n):o[a]}return o}vCe.exports=(t,e)=>{let r=[],o=[],a=[];if(e.replace(QEt,(n,u,A,p,h,C)=>{if(u)a.push(BCe(u));else if(p){let I=a.join("");a=[],o.push(r.length===0?I:ICe(t,r)(I)),r.push({inverse:A,styles:LEt(p)})}else if(h){if(r.length===0)throw new Error("Found extraneous } in Chalk template literal");o.push(ICe(t,r)(a.join(""))),a=[],r.pop()}else a.push(C)}),o.push(a.join("")),r.length>0){let n=`Chalk template literal is missing ${r.length} closing bracket${r.length===1?"":"s"} (\`}\`)`;throw new Error(n)}return o.join("")}});var iQ=_((jKt,QCe)=>{"use strict";var gB=BI(),{stdout:z6,stderr:J6}=yN(),{stringReplaceAll:OEt,stringEncaseCRLFWithFirstIndex:MEt}=CCe(),{isArray:eQ}=Array,SCe=["ansi","ansi","ansi256","ansi16m"],UC=Object.create(null),UEt=(t,e={})=>{if(e.level&&!(Number.isInteger(e.level)&&e.level>=0&&e.level<=3))throw new Error("The `level` option should be an integer from 0 to 3");let r=z6?z6.level:0;t.level=e.level===void 0?r:e.level},X6=class{constructor(e){return bCe(e)}},bCe=t=>{let e={};return UEt(e,t),e.template=(...r)=>kCe(e.template,...r),Object.setPrototypeOf(e,tQ.prototype),Object.setPrototypeOf(e.template,e),e.template.constructor=()=>{throw new Error("`chalk.constructor()` is deprecated. Use `new chalk.Instance()` instead.")},e.template.Instance=X6,e.template};function tQ(t){return bCe(t)}for(let[t,e]of Object.entries(gB))UC[t]={get(){let r=rQ(this,Z6(e.open,e.close,this._styler),this._isEmpty);return Object.defineProperty(this,t,{value:r}),r}};UC.visible={get(){let t=rQ(this,this._styler,!0);return Object.defineProperty(this,"visible",{value:t}),t}};var xCe=["rgb","hex","keyword","hsl","hsv","hwb","ansi","ansi256"];for(let t of xCe)UC[t]={get(){let{level:e}=this;return function(...r){let o=Z6(gB.color[SCe[e]][t](...r),gB.color.close,this._styler);return rQ(this,o,this._isEmpty)}}};for(let t of xCe){let e="bg"+t[0].toUpperCase()+t.slice(1);UC[e]={get(){let{level:r}=this;return function(...o){let a=Z6(gB.bgColor[SCe[r]][t](...o),gB.bgColor.close,this._styler);return rQ(this,a,this._isEmpty)}}}}var _Et=Object.defineProperties(()=>{},{...UC,level:{enumerable:!0,get(){return this._generator.level},set(t){this._generator.level=t}}}),Z6=(t,e,r)=>{let o,a;return r===void 0?(o=t,a=e):(o=r.openAll+t,a=e+r.closeAll),{open:t,close:e,openAll:o,closeAll:a,parent:r}},rQ=(t,e,r)=>{let o=(...a)=>eQ(a[0])&&eQ(a[0].raw)?PCe(o,kCe(o,...a)):PCe(o,a.length===1?""+a[0]:a.join(" "));return Object.setPrototypeOf(o,_Et),o._generator=t,o._styler=e,o._isEmpty=r,o},PCe=(t,e)=>{if(t.level<=0||!e)return t._isEmpty?"":e;let r=t._styler;if(r===void 0)return e;let{openAll:o,closeAll:a}=r;if(e.indexOf("\x1B")!==-1)for(;r!==void 0;)e=OEt(e,r.close,r.open),r=r.parent;let n=e.indexOf(` +`);return n!==-1&&(e=MEt(e,a,o,n)),o+e+a},V6,kCe=(t,...e)=>{let[r]=e;if(!eQ(r)||!eQ(r.raw))return e.join(" ");let o=e.slice(1),a=[r.raw[0]];for(let n=1;n{"use strict";var HEt=mB&&mB.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(mB,"__esModule",{value:!0});var dB=HEt(iQ()),jEt=/^(rgb|hsl|hsv|hwb)\(\s?(\d+),\s?(\d+),\s?(\d+)\s?\)$/,qEt=/^(ansi|ansi256)\(\s?(\d+)\s?\)$/,sQ=(t,e)=>e==="foreground"?t:"bg"+t[0].toUpperCase()+t.slice(1);mB.default=(t,e,r)=>{if(!e)return t;if(e in dB.default){let a=sQ(e,r);return dB.default[a](t)}if(e.startsWith("#")){let a=sQ("hex",r);return dB.default[a](e)(t)}if(e.startsWith("ansi")){let a=qEt.exec(e);if(!a)return t;let n=sQ(a[1],r),u=Number(a[2]);return dB.default[n](u)(t)}if(e.startsWith("rgb")||e.startsWith("hsl")||e.startsWith("hsv")||e.startsWith("hwb")){let a=jEt.exec(e);if(!a)return t;let n=sQ(a[1],r),u=Number(a[2]),A=Number(a[3]),p=Number(a[4]);return dB.default[n](u,A,p)(t)}return t}});var RCe=_(yB=>{"use strict";var FCe=yB&&yB.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(yB,"__esModule",{value:!0});var GEt=FCe(yCe()),ej=FCe($6());yB.default=(t,e,r,o)=>{if(typeof r.style.borderStyle=="string"){let a=r.yogaNode.getComputedWidth(),n=r.yogaNode.getComputedHeight(),u=r.style.borderColor,A=GEt.default[r.style.borderStyle],p=ej.default(A.topLeft+A.horizontal.repeat(a-2)+A.topRight,u,"foreground"),h=(ej.default(A.vertical,u,"foreground")+` +`).repeat(n-2),C=ej.default(A.bottomLeft+A.horizontal.repeat(a-2)+A.bottomRight,u,"foreground");o.write(t,e,p,{transformers:[]}),o.write(t,e+1,h,{transformers:[]}),o.write(t+a-1,e+1,h,{transformers:[]}),o.write(t,e+n-1,C,{transformers:[]})}}});var NCe=_(EB=>{"use strict";var om=EB&&EB.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(EB,"__esModule",{value:!0});var YEt=om(sm()),WEt=om(O6()),KEt=om(hCe()),VEt=om(q6()),zEt=om(gCe()),JEt=om(Y6()),XEt=om(RCe()),ZEt=(t,e)=>{var r;let o=(r=t.childNodes[0])===null||r===void 0?void 0:r.yogaNode;if(o){let a=o.getComputedLeft(),n=o.getComputedTop();e=` +`.repeat(n)+KEt.default(e,a)}return e},TCe=(t,e,r)=>{var o;let{offsetX:a=0,offsetY:n=0,transformers:u=[],skipStaticElements:A}=r;if(A&&t.internal_static)return;let{yogaNode:p}=t;if(p){if(p.getDisplay()===YEt.default.DISPLAY_NONE)return;let h=a+p.getComputedLeft(),C=n+p.getComputedTop(),I=u;if(typeof t.internal_transform=="function"&&(I=[t.internal_transform,...u]),t.nodeName==="ink-text"){let v=JEt.default(t);if(v.length>0){let x=WEt.default(v),E=zEt.default(p);if(x>E){let R=(o=t.style.textWrap)!==null&&o!==void 0?o:"wrap";v=VEt.default(v,E,R)}v=ZEt(t,v),e.write(h,C,v,{transformers:I})}return}if(t.nodeName==="ink-box"&&XEt.default(h,C,t,e),t.nodeName==="ink-root"||t.nodeName==="ink-box")for(let v of t.childNodes)TCe(v,e,{offsetX:h,offsetY:C,transformers:I,skipStaticElements:A})}};EB.default=TCe});var OCe=_((WKt,LCe)=>{"use strict";LCe.exports=t=>{t=Object.assign({onlyFirst:!1},t);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.onlyFirst?void 0:"g")}});var UCe=_((KKt,tj)=>{"use strict";var $Et=OCe(),MCe=t=>typeof t=="string"?t.replace($Et(),""):t;tj.exports=MCe;tj.exports.default=MCe});var jCe=_((VKt,HCe)=>{"use strict";var _Ce="[\uD800-\uDBFF][\uDC00-\uDFFF]";HCe.exports=t=>t&&t.exact?new RegExp(`^${_Ce}$`):new RegExp(_Ce,"g")});var GCe=_((zKt,rj)=>{"use strict";var eCt=UCe(),tCt=jCe(),qCe=t=>eCt(t).replace(tCt()," ").length;rj.exports=qCe;rj.exports.default=qCe});var KCe=_(CB=>{"use strict";var WCe=CB&&CB.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(CB,"__esModule",{value:!0});var YCe=WCe(H6()),rCt=WCe(GCe()),nj=class{constructor(e){this.writes=[];let{width:r,height:o}=e;this.width=r,this.height=o}write(e,r,o,a){let{transformers:n}=a;!o||this.writes.push({x:e,y:r,text:o,transformers:n})}get(){let e=[];for(let o=0;oo.trimRight()).join(` +`),height:e.length}}};CB.default=nj});var JCe=_(wB=>{"use strict";var ij=wB&&wB.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(wB,"__esModule",{value:!0});var nCt=ij(sm()),VCe=ij(NCe()),zCe=ij(KCe());wB.default=(t,e)=>{var r;if(t.yogaNode.setWidth(e),t.yogaNode){t.yogaNode.calculateLayout(void 0,void 0,nCt.default.DIRECTION_LTR);let o=new zCe.default({width:t.yogaNode.getComputedWidth(),height:t.yogaNode.getComputedHeight()});VCe.default(t,o,{skipStaticElements:!0});let a;!((r=t.staticNode)===null||r===void 0)&&r.yogaNode&&(a=new zCe.default({width:t.staticNode.yogaNode.getComputedWidth(),height:t.staticNode.yogaNode.getComputedHeight()}),VCe.default(t.staticNode,a,{skipStaticElements:!1}));let{output:n,height:u}=o.get();return{output:n,outputHeight:u,staticOutput:a?`${a.get().output} +`:""}}return{output:"",outputHeight:0,staticOutput:""}}});var ewe=_((ZKt,$Ce)=>{"use strict";var XCe=Be("stream"),ZCe=["assert","count","countReset","debug","dir","dirxml","error","group","groupCollapsed","groupEnd","info","log","table","time","timeEnd","timeLog","trace","warn"],sj={},iCt=t=>{let e=new XCe.PassThrough,r=new XCe.PassThrough;e.write=a=>t("stdout",a),r.write=a=>t("stderr",a);let o=new console.Console(e,r);for(let a of ZCe)sj[a]=console[a],console[a]=o[a];return()=>{for(let a of ZCe)console[a]=sj[a];sj={}}};$Ce.exports=iCt});var aj=_(oj=>{"use strict";Object.defineProperty(oj,"__esModule",{value:!0});oj.default=new WeakMap});var cj=_(lj=>{"use strict";Object.defineProperty(lj,"__esModule",{value:!0});var sCt=sn(),twe=sCt.createContext({exit:()=>{}});twe.displayName="InternalAppContext";lj.default=twe});var Aj=_(uj=>{"use strict";Object.defineProperty(uj,"__esModule",{value:!0});var oCt=sn(),rwe=oCt.createContext({stdin:void 0,setRawMode:()=>{},isRawModeSupported:!1,internal_exitOnCtrlC:!0});rwe.displayName="InternalStdinContext";uj.default=rwe});var pj=_(fj=>{"use strict";Object.defineProperty(fj,"__esModule",{value:!0});var aCt=sn(),nwe=aCt.createContext({stdout:void 0,write:()=>{}});nwe.displayName="InternalStdoutContext";fj.default=nwe});var gj=_(hj=>{"use strict";Object.defineProperty(hj,"__esModule",{value:!0});var lCt=sn(),iwe=lCt.createContext({stderr:void 0,write:()=>{}});iwe.displayName="InternalStderrContext";hj.default=iwe});var oQ=_(dj=>{"use strict";Object.defineProperty(dj,"__esModule",{value:!0});var cCt=sn(),swe=cCt.createContext({activeId:void 0,add:()=>{},remove:()=>{},activate:()=>{},deactivate:()=>{},enableFocus:()=>{},disableFocus:()=>{},focusNext:()=>{},focusPrevious:()=>{}});swe.displayName="InternalFocusContext";dj.default=swe});var awe=_((sVt,owe)=>{"use strict";var uCt=/[|\\{}()[\]^$+*?.-]/g;owe.exports=t=>{if(typeof t!="string")throw new TypeError("Expected a string");return t.replace(uCt,"\\$&")}});var Awe=_((oVt,uwe)=>{"use strict";var ACt=awe(),fCt=typeof process=="object"&&process&&typeof process.cwd=="function"?process.cwd():".",cwe=[].concat(Be("module").builtinModules,"bootstrap_node","node").map(t=>new RegExp(`(?:\\((?:node:)?${t}(?:\\.js)?:\\d+:\\d+\\)$|^\\s*at (?:node:)?${t}(?:\\.js)?:\\d+:\\d+$)`));cwe.push(/\((?:node:)?internal\/[^:]+:\d+:\d+\)$/,/\s*at (?:node:)?internal\/[^:]+:\d+:\d+$/,/\/\.node-spawn-wrap-\w+-\w+\/node:\d+:\d+\)?$/);var IB=class{constructor(e){e={ignoredPackages:[],...e},"internals"in e||(e.internals=IB.nodeInternals()),"cwd"in e||(e.cwd=fCt),this._cwd=e.cwd.replace(/\\/g,"/"),this._internals=[].concat(e.internals,pCt(e.ignoredPackages)),this._wrapCallSite=e.wrapCallSite||!1}static nodeInternals(){return[...cwe]}clean(e,r=0){r=" ".repeat(r),Array.isArray(e)||(e=e.split(` +`)),!/^\s*at /.test(e[0])&&/^\s*at /.test(e[1])&&(e=e.slice(1));let o=!1,a=null,n=[];return e.forEach(u=>{if(u=u.replace(/\\/g,"/"),this._internals.some(p=>p.test(u)))return;let A=/^\s*at /.test(u);o?u=u.trimEnd().replace(/^(\s+)at /,"$1"):(u=u.trim(),A&&(u=u.slice(3))),u=u.replace(`${this._cwd}/`,""),u&&(A?(a&&(n.push(a),a=null),n.push(u)):(o=!0,a=u))}),n.map(u=>`${r}${u} +`).join("")}captureString(e,r=this.captureString){typeof e=="function"&&(r=e,e=1/0);let{stackTraceLimit:o}=Error;e&&(Error.stackTraceLimit=e);let a={};Error.captureStackTrace(a,r);let{stack:n}=a;return Error.stackTraceLimit=o,this.clean(n)}capture(e,r=this.capture){typeof e=="function"&&(r=e,e=1/0);let{prepareStackTrace:o,stackTraceLimit:a}=Error;Error.prepareStackTrace=(A,p)=>this._wrapCallSite?p.map(this._wrapCallSite):p,e&&(Error.stackTraceLimit=e);let n={};Error.captureStackTrace(n,r);let{stack:u}=n;return Object.assign(Error,{prepareStackTrace:o,stackTraceLimit:a}),u}at(e=this.at){let[r]=this.capture(1,e);if(!r)return{};let o={line:r.getLineNumber(),column:r.getColumnNumber()};lwe(o,r.getFileName(),this._cwd),r.isConstructor()&&(o.constructor=!0),r.isEval()&&(o.evalOrigin=r.getEvalOrigin()),r.isNative()&&(o.native=!0);let a;try{a=r.getTypeName()}catch{}a&&a!=="Object"&&a!=="[object Object]"&&(o.type=a);let n=r.getFunctionName();n&&(o.function=n);let u=r.getMethodName();return u&&n!==u&&(o.method=u),o}parseLine(e){let r=e&&e.match(hCt);if(!r)return null;let o=r[1]==="new",a=r[2],n=r[3],u=r[4],A=Number(r[5]),p=Number(r[6]),h=r[7],C=r[8],I=r[9],v=r[10]==="native",x=r[11]===")",E,R={};if(C&&(R.line=Number(C)),I&&(R.column=Number(I)),x&&h){let L=0;for(let U=h.length-1;U>0;U--)if(h.charAt(U)===")")L++;else if(h.charAt(U)==="("&&h.charAt(U-1)===" "&&(L--,L===-1&&h.charAt(U-1)===" ")){let z=h.slice(0,U-1);h=h.slice(U+1),a+=` (${z}`;break}}if(a){let L=a.match(gCt);L&&(a=L[1],E=L[2])}return lwe(R,h,this._cwd),o&&(R.constructor=!0),n&&(R.evalOrigin=n,R.evalLine=A,R.evalColumn=p,R.evalFile=u&&u.replace(/\\/g,"/")),v&&(R.native=!0),a&&(R.function=a),E&&a!==E&&(R.method=E),R}};function lwe(t,e,r){e&&(e=e.replace(/\\/g,"/"),e.startsWith(`${r}/`)&&(e=e.slice(r.length+1)),t.file=e)}function pCt(t){if(t.length===0)return[];let e=t.map(r=>ACt(r));return new RegExp(`[/\\\\]node_modules[/\\\\](?:${e.join("|")})[/\\\\][^:]+:\\d+:\\d+`)}var hCt=new RegExp("^(?:\\s*at )?(?:(new) )?(?:(.*?) \\()?(?:eval at ([^ ]+) \\((.+?):(\\d+):(\\d+)\\), )?(?:(.+?):(\\d+):(\\d+)|(native))(\\)?)$"),gCt=/^(.*?) \[as (.*?)\]$/;uwe.exports=IB});var pwe=_((aVt,fwe)=>{"use strict";fwe.exports=(t,e)=>t.replace(/^\t+/gm,r=>" ".repeat(r.length*(e||2)))});var gwe=_((lVt,hwe)=>{"use strict";var dCt=pwe(),mCt=(t,e)=>{let r=[],o=t-e,a=t+e;for(let n=o;n<=a;n++)r.push(n);return r};hwe.exports=(t,e,r)=>{if(typeof t!="string")throw new TypeError("Source code is missing.");if(!e||e<1)throw new TypeError("Line number must start from `1`.");if(t=dCt(t).split(/\r?\n/),!(e>t.length))return r={around:3,...r},mCt(e,r.around).filter(o=>t[o-1]!==void 0).map(o=>({line:o,value:t[o-1]}))}});var aQ=_(ru=>{"use strict";var yCt=ru&&ru.__createBinding||(Object.create?function(t,e,r,o){o===void 0&&(o=r),Object.defineProperty(t,o,{enumerable:!0,get:function(){return e[r]}})}:function(t,e,r,o){o===void 0&&(o=r),t[o]=e[r]}),ECt=ru&&ru.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),CCt=ru&&ru.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.hasOwnProperty.call(t,r)&&yCt(e,t,r);return ECt(e,t),e},wCt=ru&&ru.__rest||function(t,e){var r={};for(var o in t)Object.prototype.hasOwnProperty.call(t,o)&&e.indexOf(o)<0&&(r[o]=t[o]);if(t!=null&&typeof Object.getOwnPropertySymbols=="function")for(var a=0,o=Object.getOwnPropertySymbols(t);a{var{children:r}=t,o=wCt(t,["children"]);let a=Object.assign(Object.assign({},o),{marginLeft:o.marginLeft||o.marginX||o.margin||0,marginRight:o.marginRight||o.marginX||o.margin||0,marginTop:o.marginTop||o.marginY||o.margin||0,marginBottom:o.marginBottom||o.marginY||o.margin||0,paddingLeft:o.paddingLeft||o.paddingX||o.padding||0,paddingRight:o.paddingRight||o.paddingX||o.padding||0,paddingTop:o.paddingTop||o.paddingY||o.padding||0,paddingBottom:o.paddingBottom||o.paddingY||o.padding||0});return dwe.default.createElement("ink-box",{ref:e,style:a},r)});mj.displayName="Box";mj.defaultProps={flexDirection:"row",flexGrow:0,flexShrink:1};ru.default=mj});var Cj=_(BB=>{"use strict";var yj=BB&&BB.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(BB,"__esModule",{value:!0});var ICt=yj(sn()),_C=yj(iQ()),mwe=yj($6()),Ej=({color:t,backgroundColor:e,dimColor:r,bold:o,italic:a,underline:n,strikethrough:u,inverse:A,wrap:p,children:h})=>{if(h==null)return null;let C=I=>(r&&(I=_C.default.dim(I)),t&&(I=mwe.default(I,t,"foreground")),e&&(I=mwe.default(I,e,"background")),o&&(I=_C.default.bold(I)),a&&(I=_C.default.italic(I)),n&&(I=_C.default.underline(I)),u&&(I=_C.default.strikethrough(I)),A&&(I=_C.default.inverse(I)),I);return ICt.default.createElement("ink-text",{style:{flexGrow:0,flexShrink:1,flexDirection:"row",textWrap:p},internal_transform:C},h)};Ej.displayName="Text";Ej.defaultProps={dimColor:!1,bold:!1,italic:!1,underline:!1,strikethrough:!1,wrap:"wrap"};BB.default=Ej});var wwe=_(nu=>{"use strict";var BCt=nu&&nu.__createBinding||(Object.create?function(t,e,r,o){o===void 0&&(o=r),Object.defineProperty(t,o,{enumerable:!0,get:function(){return e[r]}})}:function(t,e,r,o){o===void 0&&(o=r),t[o]=e[r]}),vCt=nu&&nu.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),DCt=nu&&nu.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.hasOwnProperty.call(t,r)&&BCt(e,t,r);return vCt(e,t),e},vB=nu&&nu.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(nu,"__esModule",{value:!0});var ywe=DCt(Be("fs")),fs=vB(sn()),Ewe=vB(Awe()),PCt=vB(gwe()),Jf=vB(aQ()),hA=vB(Cj()),Cwe=new Ewe.default({cwd:process.cwd(),internals:Ewe.default.nodeInternals()}),SCt=({error:t})=>{let e=t.stack?t.stack.split(` +`).slice(1):void 0,r=e?Cwe.parseLine(e[0]):void 0,o,a=0;if(r?.file&&r?.line&&ywe.existsSync(r.file)){let n=ywe.readFileSync(r.file,"utf8");if(o=PCt.default(n,r.line),o)for(let{line:u}of o)a=Math.max(a,String(u).length)}return fs.default.createElement(Jf.default,{flexDirection:"column",padding:1},fs.default.createElement(Jf.default,null,fs.default.createElement(hA.default,{backgroundColor:"red",color:"white"}," ","ERROR"," "),fs.default.createElement(hA.default,null," ",t.message)),r&&fs.default.createElement(Jf.default,{marginTop:1},fs.default.createElement(hA.default,{dimColor:!0},r.file,":",r.line,":",r.column)),r&&o&&fs.default.createElement(Jf.default,{marginTop:1,flexDirection:"column"},o.map(({line:n,value:u})=>fs.default.createElement(Jf.default,{key:n},fs.default.createElement(Jf.default,{width:a+1},fs.default.createElement(hA.default,{dimColor:n!==r.line,backgroundColor:n===r.line?"red":void 0,color:n===r.line?"white":void 0},String(n).padStart(a," "),":")),fs.default.createElement(hA.default,{key:n,backgroundColor:n===r.line?"red":void 0,color:n===r.line?"white":void 0}," "+u)))),t.stack&&fs.default.createElement(Jf.default,{marginTop:1,flexDirection:"column"},t.stack.split(` +`).slice(1).map(n=>{let u=Cwe.parseLine(n);return u?fs.default.createElement(Jf.default,{key:n},fs.default.createElement(hA.default,{dimColor:!0},"- "),fs.default.createElement(hA.default,{dimColor:!0,bold:!0},u.function),fs.default.createElement(hA.default,{dimColor:!0,color:"gray"}," ","(",u.file,":",u.line,":",u.column,")")):fs.default.createElement(Jf.default,{key:n},fs.default.createElement(hA.default,{dimColor:!0},"- "),fs.default.createElement(hA.default,{dimColor:!0,bold:!0},n))})))};nu.default=SCt});var Bwe=_(iu=>{"use strict";var bCt=iu&&iu.__createBinding||(Object.create?function(t,e,r,o){o===void 0&&(o=r),Object.defineProperty(t,o,{enumerable:!0,get:function(){return e[r]}})}:function(t,e,r,o){o===void 0&&(o=r),t[o]=e[r]}),xCt=iu&&iu.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),kCt=iu&&iu.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.hasOwnProperty.call(t,r)&&bCt(e,t,r);return xCt(e,t),e},lm=iu&&iu.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(iu,"__esModule",{value:!0});var am=kCt(sn()),Iwe=lm(m6()),QCt=lm(cj()),FCt=lm(Aj()),RCt=lm(pj()),TCt=lm(gj()),NCt=lm(oQ()),LCt=lm(wwe()),OCt=" ",MCt="\x1B[Z",UCt="\x1B",lQ=class extends am.PureComponent{constructor(){super(...arguments),this.state={isFocusEnabled:!0,activeFocusId:void 0,focusables:[],error:void 0},this.rawModeEnabledCount=0,this.handleSetRawMode=e=>{let{stdin:r}=this.props;if(!this.isRawModeSupported())throw r===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(r.setEncoding("utf8"),e){this.rawModeEnabledCount===0&&(r.addListener("data",this.handleInput),r.resume(),r.setRawMode(!0)),this.rawModeEnabledCount++;return}--this.rawModeEnabledCount===0&&(r.setRawMode(!1),r.removeListener("data",this.handleInput),r.pause())},this.handleInput=e=>{e===""&&this.props.exitOnCtrlC&&this.handleExit(),e===UCt&&this.state.activeFocusId&&this.setState({activeFocusId:void 0}),this.state.isFocusEnabled&&this.state.focusables.length>0&&(e===OCt&&this.focusNext(),e===MCt&&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=>{let r=e.focusables[0].id;return{activeFocusId:this.findNextFocusable(e)||r}})},this.focusPrevious=()=>{this.setState(e=>{let r=e.focusables[e.focusables.length-1].id;return{activeFocusId:this.findPreviousFocusable(e)||r}})},this.addFocusable=(e,{autoFocus:r})=>{this.setState(o=>{let a=o.activeFocusId;return!a&&r&&(a=e),{activeFocusId:a,focusables:[...o.focusables,{id:e,isActive:!0}]}})},this.removeFocusable=e=>{this.setState(r=>({activeFocusId:r.activeFocusId===e?void 0:r.activeFocusId,focusables:r.focusables.filter(o=>o.id!==e)}))},this.activateFocusable=e=>{this.setState(r=>({focusables:r.focusables.map(o=>o.id!==e?o:{id:e,isActive:!0})}))},this.deactivateFocusable=e=>{this.setState(r=>({activeFocusId:r.activeFocusId===e?void 0:r.activeFocusId,focusables:r.focusables.map(o=>o.id!==e?o:{id:e,isActive:!1})}))},this.findNextFocusable=e=>{let r=e.focusables.findIndex(o=>o.id===e.activeFocusId);for(let o=r+1;o{let r=e.focusables.findIndex(o=>o.id===e.activeFocusId);for(let o=r-1;o>=0;o--)if(e.focusables[o].isActive)return e.focusables[o].id}}static getDerivedStateFromError(e){return{error:e}}isRawModeSupported(){return this.props.stdin.isTTY}render(){return am.default.createElement(QCt.default.Provider,{value:{exit:this.handleExit}},am.default.createElement(FCt.default.Provider,{value:{stdin:this.props.stdin,setRawMode:this.handleSetRawMode,isRawModeSupported:this.isRawModeSupported(),internal_exitOnCtrlC:this.props.exitOnCtrlC}},am.default.createElement(RCt.default.Provider,{value:{stdout:this.props.stdout,write:this.props.writeToStdout}},am.default.createElement(TCt.default.Provider,{value:{stderr:this.props.stderr,write:this.props.writeToStderr}},am.default.createElement(NCt.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?am.default.createElement(LCt.default,{error:this.state.error}):this.props.children)))))}componentDidMount(){Iwe.default.hide(this.props.stdout)}componentWillUnmount(){Iwe.default.show(this.props.stdout),this.isRawModeSupported()&&this.handleSetRawMode(!1)}componentDidCatch(e){this.handleExit(e)}};iu.default=lQ;lQ.displayName="InternalApp"});var Pwe=_(su=>{"use strict";var _Ct=su&&su.__createBinding||(Object.create?function(t,e,r,o){o===void 0&&(o=r),Object.defineProperty(t,o,{enumerable:!0,get:function(){return e[r]}})}:function(t,e,r,o){o===void 0&&(o=r),t[o]=e[r]}),HCt=su&&su.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),jCt=su&&su.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.hasOwnProperty.call(t,r)&&_Ct(e,t,r);return HCt(e,t),e},ou=su&&su.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(su,"__esModule",{value:!0});var qCt=ou(sn()),vwe=uM(),GCt=ou(AEe()),YCt=ou(f6()),WCt=ou(mEe()),KCt=ou(EEe()),wj=ou(fCe()),VCt=ou(JCe()),zCt=ou(d6()),JCt=ou(ewe()),XCt=jCt(W6()),ZCt=ou(aj()),$Ct=ou(Bwe()),HC=process.env.CI==="false"?!1:WCt.default,Dwe=()=>{},Ij=class{constructor(e){this.resolveExitPromise=()=>{},this.rejectExitPromise=()=>{},this.unsubscribeExit=()=>{},this.onRender=()=>{if(this.isUnmounted)return;let{output:r,outputHeight:o,staticOutput:a}=VCt.default(this.rootNode,this.options.stdout.columns||80),n=a&&a!==` +`;if(this.options.debug){n&&(this.fullStaticOutput+=a),this.options.stdout.write(this.fullStaticOutput+r);return}if(HC){n&&this.options.stdout.write(a),this.lastOutput=r;return}if(n&&(this.fullStaticOutput+=a),o>=this.options.stdout.rows){this.options.stdout.write(YCt.default.clearTerminal+this.fullStaticOutput+r),this.lastOutput=r;return}n&&(this.log.clear(),this.options.stdout.write(a),this.log(r)),!n&&r!==this.lastOutput&&this.throttledLog(r),this.lastOutput=r},KCt.default(this),this.options=e,this.rootNode=XCt.createNode("ink-root"),this.rootNode.onRender=e.debug?this.onRender:vwe(this.onRender,32,{leading:!0,trailing:!0}),this.rootNode.onImmediateRender=this.onRender,this.log=GCt.default.create(e.stdout),this.throttledLog=e.debug?this.log:vwe(this.log,void 0,{leading:!0,trailing:!0}),this.isUnmounted=!1,this.lastOutput="",this.fullStaticOutput="",this.container=wj.default.createContainer(this.rootNode,!1,!1),this.unsubscribeExit=zCt.default(this.unmount,{alwaysLast:!1}),e.patchConsole&&this.patchConsole(),HC||(e.stdout.on("resize",this.onRender),this.unsubscribeResize=()=>{e.stdout.off("resize",this.onRender)})}render(e){let r=qCt.default.createElement($Ct.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);wj.default.updateContainer(r,this.container,null,Dwe)}writeToStdout(e){if(!this.isUnmounted){if(this.options.debug){this.options.stdout.write(e+this.fullStaticOutput+this.lastOutput);return}if(HC){this.options.stdout.write(e);return}this.log.clear(),this.options.stdout.write(e),this.log(this.lastOutput)}}writeToStderr(e){if(!this.isUnmounted){if(this.options.debug){this.options.stderr.write(e),this.options.stdout.write(this.fullStaticOutput+this.lastOutput);return}if(HC){this.options.stderr.write(e);return}this.log.clear(),this.options.stderr.write(e),this.log(this.lastOutput)}}unmount(e){this.isUnmounted||(this.onRender(),this.unsubscribeExit(),typeof this.restoreConsole=="function"&&this.restoreConsole(),typeof this.unsubscribeResize=="function"&&this.unsubscribeResize(),HC?this.options.stdout.write(this.lastOutput+` +`):this.options.debug||this.log.done(),this.isUnmounted=!0,wj.default.updateContainer(null,this.container,null,Dwe),ZCt.default.delete(this.options.stdout),e instanceof Error?this.rejectExitPromise(e):this.resolveExitPromise())}waitUntilExit(){return this.exitPromise||(this.exitPromise=new Promise((e,r)=>{this.resolveExitPromise=e,this.rejectExitPromise=r})),this.exitPromise}clear(){!HC&&!this.options.debug&&this.log.clear()}patchConsole(){this.options.debug||(this.restoreConsole=JCt.default((e,r)=>{e==="stdout"&&this.writeToStdout(r),e==="stderr"&&(r.startsWith("The above error occurred")||this.writeToStderr(r))}))}};su.default=Ij});var bwe=_(DB=>{"use strict";var Swe=DB&&DB.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(DB,"__esModule",{value:!0});var ewt=Swe(Pwe()),cQ=Swe(aj()),twt=Be("stream"),rwt=(t,e)=>{let r=Object.assign({stdout:process.stdout,stdin:process.stdin,stderr:process.stderr,debug:!1,exitOnCtrlC:!0,patchConsole:!0},nwt(e)),o=iwt(r.stdout,()=>new ewt.default(r));return o.render(t),{rerender:o.render,unmount:()=>o.unmount(),waitUntilExit:o.waitUntilExit,cleanup:()=>cQ.default.delete(r.stdout),clear:o.clear}};DB.default=rwt;var nwt=(t={})=>t instanceof twt.Stream?{stdout:t,stdin:process.stdin}:t,iwt=(t,e)=>{let r;return cQ.default.has(t)?r=cQ.default.get(t):(r=e(),cQ.default.set(t,r)),r}});var kwe=_(Xf=>{"use strict";var swt=Xf&&Xf.__createBinding||(Object.create?function(t,e,r,o){o===void 0&&(o=r),Object.defineProperty(t,o,{enumerable:!0,get:function(){return e[r]}})}:function(t,e,r,o){o===void 0&&(o=r),t[o]=e[r]}),owt=Xf&&Xf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),awt=Xf&&Xf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.hasOwnProperty.call(t,r)&&swt(e,t,r);return owt(e,t),e};Object.defineProperty(Xf,"__esModule",{value:!0});var PB=awt(sn()),xwe=t=>{let{items:e,children:r,style:o}=t,[a,n]=PB.useState(0),u=PB.useMemo(()=>e.slice(a),[e,a]);PB.useLayoutEffect(()=>{n(e.length)},[e.length]);let A=u.map((h,C)=>r(h,a+C)),p=PB.useMemo(()=>Object.assign({position:"absolute",flexDirection:"column"},o),[o]);return PB.default.createElement("ink-box",{internal_static:!0,style:p},A)};xwe.displayName="Static";Xf.default=xwe});var Fwe=_(SB=>{"use strict";var lwt=SB&&SB.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(SB,"__esModule",{value:!0});var cwt=lwt(sn()),Qwe=({children:t,transform:e})=>t==null?null:cwt.default.createElement("ink-text",{style:{flexGrow:0,flexShrink:1,flexDirection:"row"},internal_transform:e},t);Qwe.displayName="Transform";SB.default=Qwe});var Twe=_(bB=>{"use strict";var uwt=bB&&bB.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(bB,"__esModule",{value:!0});var Awt=uwt(sn()),Rwe=({count:t=1})=>Awt.default.createElement("ink-text",null,` +`.repeat(t));Rwe.displayName="Newline";bB.default=Rwe});var Owe=_(xB=>{"use strict";var Nwe=xB&&xB.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(xB,"__esModule",{value:!0});var fwt=Nwe(sn()),pwt=Nwe(aQ()),Lwe=()=>fwt.default.createElement(pwt.default,{flexGrow:1});Lwe.displayName="Spacer";xB.default=Lwe});var uQ=_(kB=>{"use strict";var hwt=kB&&kB.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(kB,"__esModule",{value:!0});var gwt=sn(),dwt=hwt(Aj()),mwt=()=>gwt.useContext(dwt.default);kB.default=mwt});var Uwe=_(QB=>{"use strict";var ywt=QB&&QB.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(QB,"__esModule",{value:!0});var Mwe=sn(),Ewt=ywt(uQ()),Cwt=(t,e={})=>{let{stdin:r,setRawMode:o,internal_exitOnCtrlC:a}=Ewt.default();Mwe.useEffect(()=>{if(e.isActive!==!1)return o(!0),()=>{o(!1)}},[e.isActive,o]),Mwe.useEffect(()=>{if(e.isActive===!1)return;let n=u=>{let A=String(u),p={upArrow:A==="\x1B[A",downArrow:A==="\x1B[B",leftArrow:A==="\x1B[D",rightArrow:A==="\x1B[C",pageDown:A==="\x1B[6~",pageUp:A==="\x1B[5~",return:A==="\r",escape:A==="\x1B",ctrl:!1,shift:!1,tab:A===" "||A==="\x1B[Z",backspace:A==="\b",delete:A==="\x7F"||A==="\x1B[3~",meta:!1};A<=""&&!p.return&&(A=String.fromCharCode(A.charCodeAt(0)+"a".charCodeAt(0)-1),p.ctrl=!0),A.startsWith("\x1B")&&(A=A.slice(1),p.meta=!0);let h=A>="A"&&A<="Z",C=A>="\u0410"&&A<="\u042F";A.length===1&&(h||C)&&(p.shift=!0),p.tab&&A==="[Z"&&(p.shift=!0),(p.tab||p.backspace||p.delete)&&(A=""),(!(A==="c"&&p.ctrl)||!a)&&t(A,p)};return r?.on("data",n),()=>{r?.off("data",n)}},[e.isActive,r,a,t])};QB.default=Cwt});var _we=_(FB=>{"use strict";var wwt=FB&&FB.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(FB,"__esModule",{value:!0});var Iwt=sn(),Bwt=wwt(cj()),vwt=()=>Iwt.useContext(Bwt.default);FB.default=vwt});var Hwe=_(RB=>{"use strict";var Dwt=RB&&RB.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(RB,"__esModule",{value:!0});var Pwt=sn(),Swt=Dwt(pj()),bwt=()=>Pwt.useContext(Swt.default);RB.default=bwt});var jwe=_(TB=>{"use strict";var xwt=TB&&TB.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(TB,"__esModule",{value:!0});var kwt=sn(),Qwt=xwt(gj()),Fwt=()=>kwt.useContext(Qwt.default);TB.default=Fwt});var Gwe=_(LB=>{"use strict";var qwe=LB&&LB.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(LB,"__esModule",{value:!0});var NB=sn(),Rwt=qwe(oQ()),Twt=qwe(uQ()),Nwt=({isActive:t=!0,autoFocus:e=!1}={})=>{let{isRawModeSupported:r,setRawMode:o}=Twt.default(),{activeId:a,add:n,remove:u,activate:A,deactivate:p}=NB.useContext(Rwt.default),h=NB.useMemo(()=>Math.random().toString().slice(2,7),[]);return NB.useEffect(()=>(n(h,{autoFocus:e}),()=>{u(h)}),[h,e]),NB.useEffect(()=>{t?A(h):p(h)},[t,h]),NB.useEffect(()=>{if(!(!r||!t))return o(!0),()=>{o(!1)}},[t]),{isFocused:Boolean(h)&&a===h}};LB.default=Nwt});var Ywe=_(OB=>{"use strict";var Lwt=OB&&OB.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(OB,"__esModule",{value:!0});var Owt=sn(),Mwt=Lwt(oQ()),Uwt=()=>{let t=Owt.useContext(Mwt.default);return{enableFocus:t.enableFocus,disableFocus:t.disableFocus,focusNext:t.focusNext,focusPrevious:t.focusPrevious}};OB.default=Uwt});var Wwe=_(Bj=>{"use strict";Object.defineProperty(Bj,"__esModule",{value:!0});Bj.default=t=>{var e,r,o,a;return{width:(r=(e=t.yogaNode)===null||e===void 0?void 0:e.getComputedWidth())!==null&&r!==void 0?r:0,height:(a=(o=t.yogaNode)===null||o===void 0?void 0:o.getComputedHeight())!==null&&a!==void 0?a:0}}});var ic=_(ro=>{"use strict";Object.defineProperty(ro,"__esModule",{value:!0});var _wt=bwe();Object.defineProperty(ro,"render",{enumerable:!0,get:function(){return _wt.default}});var Hwt=aQ();Object.defineProperty(ro,"Box",{enumerable:!0,get:function(){return Hwt.default}});var jwt=Cj();Object.defineProperty(ro,"Text",{enumerable:!0,get:function(){return jwt.default}});var qwt=kwe();Object.defineProperty(ro,"Static",{enumerable:!0,get:function(){return qwt.default}});var Gwt=Fwe();Object.defineProperty(ro,"Transform",{enumerable:!0,get:function(){return Gwt.default}});var Ywt=Twe();Object.defineProperty(ro,"Newline",{enumerable:!0,get:function(){return Ywt.default}});var Wwt=Owe();Object.defineProperty(ro,"Spacer",{enumerable:!0,get:function(){return Wwt.default}});var Kwt=Uwe();Object.defineProperty(ro,"useInput",{enumerable:!0,get:function(){return Kwt.default}});var Vwt=_we();Object.defineProperty(ro,"useApp",{enumerable:!0,get:function(){return Vwt.default}});var zwt=uQ();Object.defineProperty(ro,"useStdin",{enumerable:!0,get:function(){return zwt.default}});var Jwt=Hwe();Object.defineProperty(ro,"useStdout",{enumerable:!0,get:function(){return Jwt.default}});var Xwt=jwe();Object.defineProperty(ro,"useStderr",{enumerable:!0,get:function(){return Xwt.default}});var Zwt=Gwe();Object.defineProperty(ro,"useFocus",{enumerable:!0,get:function(){return Zwt.default}});var $wt=Ywe();Object.defineProperty(ro,"useFocusManager",{enumerable:!0,get:function(){return $wt.default}});var eIt=Wwe();Object.defineProperty(ro,"measureElement",{enumerable:!0,get:function(){return eIt.default}})});var Dj={};Vt(Dj,{Gem:()=>vj});var Kwe,cm,vj,AQ=Et(()=>{Kwe=$e(ic()),cm=$e(sn()),vj=(0,cm.memo)(({active:t})=>{let e=(0,cm.useMemo)(()=>t?"\u25C9":"\u25EF",[t]),r=(0,cm.useMemo)(()=>t?"green":"yellow",[t]);return cm.default.createElement(Kwe.Text,{color:r},e)})});var zwe={};Vt(zwe,{useKeypress:()=>um});function um({active:t},e,r){let{stdin:o}=(0,Vwe.useStdin)(),a=(0,fQ.useCallback)((n,u)=>e(n,u),r);(0,fQ.useEffect)(()=>{if(!(!t||!o))return o.on("keypress",a),()=>{o.off("keypress",a)}},[t,a,o])}var Vwe,fQ,MB=Et(()=>{Vwe=$e(ic()),fQ=$e(sn())});var Xwe={};Vt(Xwe,{FocusRequest:()=>Jwe,useFocusRequest:()=>Pj});var Jwe,Pj,Sj=Et(()=>{MB();Jwe=(r=>(r.BEFORE="before",r.AFTER="after",r))(Jwe||{}),Pj=function({active:t},e,r){um({active:t},(o,a)=>{a.name==="tab"&&(a.shift?e("before"):e("after"))},r)}});var Zwe={};Vt(Zwe,{useListInput:()=>UB});var UB,pQ=Et(()=>{MB();UB=function(t,e,{active:r,minus:o,plus:a,set:n,loop:u=!0}){um({active:r},(A,p)=>{let h=e.indexOf(t);switch(p.name){case o:{let C=h-1;if(u){n(e[(e.length+C)%e.length]);return}if(C<0)return;n(e[C])}break;case a:{let C=h+1;if(u){n(e[C%e.length]);return}if(C>=e.length)return;n(e[C])}break}},[e,t,a,n,u])}});var hQ={};Vt(hQ,{ScrollableItems:()=>tIt});var E0,La,tIt,gQ=Et(()=>{E0=$e(ic()),La=$e(sn());Sj();pQ();tIt=({active:t=!0,children:e=[],radius:r=10,size:o=1,loop:a=!0,onFocusRequest:n,willReachEnd:u})=>{let A=L=>{if(L.key===null)throw new Error("Expected all children to have a key");return L.key},p=La.default.Children.map(e,L=>A(L)),h=p[0],[C,I]=(0,La.useState)(h),v=p.indexOf(C);(0,La.useEffect)(()=>{p.includes(C)||I(h)},[e]),(0,La.useEffect)(()=>{u&&v>=p.length-2&&u()},[v]),Pj({active:t&&!!n},L=>{n?.(L)},[n]),UB(C,p,{active:t,minus:"up",plus:"down",set:I,loop:a});let x=v-r,E=v+r;E>p.length&&(x-=E-p.length,E=p.length),x<0&&(E+=-x,x=0),E>=p.length&&(E=p.length-1);let R=[];for(let L=x;L<=E;++L){let U=p[L],z=t&&U===C;R.push(La.default.createElement(E0.Box,{key:U,height:o},La.default.createElement(E0.Box,{marginLeft:1,marginRight:1},La.default.createElement(E0.Text,null,z?La.default.createElement(E0.Text,{color:"cyan",bold:!0},">"):" ")),La.default.createElement(E0.Box,null,La.default.cloneElement(e[L],{active:z}))))}return La.default.createElement(E0.Box,{flexDirection:"column",width:"100%"},R)}});var $we,Zf,eIe,bj,tIe,xj=Et(()=>{$we=$e(ic()),Zf=$e(sn()),eIe=Be("readline"),bj=Zf.default.createContext(null),tIe=({children:t})=>{let{stdin:e,setRawMode:r}=(0,$we.useStdin)();(0,Zf.useEffect)(()=>{r&&r(!0),e&&(0,eIe.emitKeypressEvents)(e)},[e,r]);let[o,a]=(0,Zf.useState)(new Map),n=(0,Zf.useMemo)(()=>({getAll:()=>o,get:u=>o.get(u),set:(u,A)=>a(new Map([...o,[u,A]]))}),[o,a]);return Zf.default.createElement(bj.Provider,{value:n,children:t})}});var kj={};Vt(kj,{useMinistore:()=>rIt});function rIt(t,e){let r=(0,dQ.useContext)(bj);if(r===null)throw new Error("Expected this hook to run with a ministore context attached");if(typeof t>"u")return r.getAll();let o=(0,dQ.useCallback)(n=>{r.set(t,n)},[t,r.set]),a=r.get(t);return typeof a>"u"&&(a=e),[a,o]}var dQ,Qj=Et(()=>{dQ=$e(sn());xj()});var yQ={};Vt(yQ,{renderForm:()=>nIt});async function nIt(t,e,{stdin:r,stdout:o,stderr:a}){let n,u=p=>{let{exit:h}=(0,mQ.useApp)();um({active:!0},(C,I)=>{I.name==="return"&&(n=p,h())},[h,p])},{waitUntilExit:A}=(0,mQ.render)(Fj.default.createElement(tIe,null,Fj.default.createElement(t,{...e,useSubmit:u})),{stdin:r,stdout:o,stderr:a});return await A(),n}var mQ,Fj,EQ=Et(()=>{mQ=$e(ic()),Fj=$e(sn());xj();MB()});var sIe=_(_B=>{"use strict";Object.defineProperty(_B,"__esModule",{value:!0});_B.UncontrolledTextInput=void 0;var nIe=sn(),Rj=sn(),rIe=ic(),Am=iQ(),iIe=({value:t,placeholder:e="",focus:r=!0,mask:o,highlightPastedText:a=!1,showCursor:n=!0,onChange:u,onSubmit:A})=>{let[{cursorOffset:p,cursorWidth:h},C]=Rj.useState({cursorOffset:(t||"").length,cursorWidth:0});Rj.useEffect(()=>{C(R=>{if(!r||!n)return R;let L=t||"";return R.cursorOffset>L.length-1?{cursorOffset:L.length,cursorWidth:0}:R})},[t,r,n]);let I=a?h:0,v=o?o.repeat(t.length):t,x=v,E=e?Am.grey(e):void 0;if(n&&r){E=e.length>0?Am.inverse(e[0])+Am.grey(e.slice(1)):Am.inverse(" "),x=v.length>0?"":Am.inverse(" ");let R=0;for(let L of v)R>=p-I&&R<=p?x+=Am.inverse(L):x+=L,R++;v.length>0&&p===v.length&&(x+=Am.inverse(" "))}return rIe.useInput((R,L)=>{if(L.upArrow||L.downArrow||L.ctrl&&R==="c"||L.tab||L.shift&&L.tab)return;if(L.return){A&&A(t);return}let U=p,z=t,te=0;L.leftArrow?n&&U--:L.rightArrow?n&&U++:L.backspace||L.delete?p>0&&(z=t.slice(0,p-1)+t.slice(p,t.length),U--):(z=t.slice(0,p)+R+t.slice(p,t.length),U+=R.length,R.length>1&&(te=R.length)),p<0&&(U=0),p>t.length&&(U=t.length),C({cursorOffset:U,cursorWidth:te}),z!==t&&u(z)},{isActive:r}),nIe.createElement(rIe.Text,null,e?v.length>0?x:E:x)};_B.default=iIe;_B.UncontrolledTextInput=t=>{let[e,r]=Rj.useState("");return nIe.createElement(iIe,Object.assign({},t,{value:e,onChange:r}))}});var lIe={};Vt(lIe,{Pad:()=>Tj});var oIe,aIe,Tj,Nj=Et(()=>{oIe=$e(ic()),aIe=$e(sn()),Tj=({length:t,active:e})=>{if(t===0)return null;let r=t>1?` ${"-".repeat(t-1)}`:" ";return aIe.default.createElement(oIe.Text,{dimColor:!e},r)}});var cIe={};Vt(cIe,{ItemOptions:()=>iIt});var jB,w0,iIt,uIe=Et(()=>{jB=$e(ic()),w0=$e(sn());pQ();AQ();Nj();iIt=function({active:t,skewer:e,options:r,value:o,onChange:a,sizes:n=[]}){let u=r.filter(({label:p})=>!!p).map(({value:p})=>p),A=r.findIndex(p=>p.value===o&&p.label!="");return UB(o,u,{active:t,minus:"left",plus:"right",set:a}),w0.default.createElement(w0.default.Fragment,null,r.map(({label:p},h)=>{let C=h===A,I=n[h]-1||0,v=p.replace(/[\u001b\u009b][[()#;?]*(?:[0-9]{1,4}(?:;[0-9]{0,4})*)?[0-9A-ORZcf-nqry=><]/g,""),x=Math.max(0,I-v.length-2);return p?w0.default.createElement(jB.Box,{key:p,width:I,marginLeft:1},w0.default.createElement(jB.Text,{wrap:"truncate"},w0.default.createElement(vj,{active:C})," ",p),e?w0.default.createElement(Tj,{active:t,length:x}):null):w0.default.createElement(jB.Box,{key:`spacer-${h}`,width:I,marginLeft:1})}))}});var PIe=_((Jzt,DIe)=>{var Gj;DIe.exports=()=>(typeof Gj>"u"&&(Gj=Be("zlib").brotliDecompressSync(Buffer.from("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","base64")).toString()),Gj)});var KIe=_((wJt,WIe)=>{var $j=Symbol("arg flag"),Oa=class extends Error{constructor(e,r){super(e),this.name="ArgError",this.code=r,Object.setPrototypeOf(this,Oa.prototype)}};function iv(t,{argv:e=process.argv.slice(2),permissive:r=!1,stopAtPositional:o=!1}={}){if(!t)throw new Oa("argument specification object is required","ARG_CONFIG_NO_SPEC");let a={_:[]},n={},u={};for(let A of Object.keys(t)){if(!A)throw new Oa("argument key cannot be an empty string","ARG_CONFIG_EMPTY_KEY");if(A[0]!=="-")throw new Oa(`argument key must start with '-' but found: '${A}'`,"ARG_CONFIG_NONOPT_KEY");if(A.length===1)throw new Oa(`argument key must have a name; singular '-' keys are not allowed: ${A}`,"ARG_CONFIG_NONAME_KEY");if(typeof t[A]=="string"){n[A]=t[A];continue}let p=t[A],h=!1;if(Array.isArray(p)&&p.length===1&&typeof p[0]=="function"){let[C]=p;p=(I,v,x=[])=>(x.push(C(I,v,x[x.length-1])),x),h=C===Boolean||C[$j]===!0}else if(typeof p=="function")h=p===Boolean||p[$j]===!0;else throw new Oa(`type missing or not a function or valid array type: ${A}`,"ARG_CONFIG_VAD_TYPE");if(A[1]!=="-"&&A.length>2)throw new Oa(`short argument keys (with a single hyphen) must have only one character: ${A}`,"ARG_CONFIG_SHORTOPT_TOOLONG");u[A]=[p,h]}for(let A=0,p=e.length;A0){a._=a._.concat(e.slice(A));break}if(h==="--"){a._=a._.concat(e.slice(A+1));break}if(h.length>1&&h[0]==="-"){let C=h[1]==="-"||h.length===2?[h]:h.slice(1).split("").map(I=>`-${I}`);for(let I=0;I1&&e[A+1][0]==="-"&&!(e[A+1].match(/^-?\d*(\.(?=\d))?\d*$/)&&(L===Number||typeof BigInt<"u"&&L===BigInt))){let z=x===R?"":` (alias for ${R})`;throw new Oa(`option requires argument: ${x}${z}`,"ARG_MISSING_REQUIRED_LONGARG")}a[R]=L(e[A+1],R,a[R]),++A}else a[R]=L(E,R,a[R])}}else a._.push(h)}return a}iv.flag=t=>(t[$j]=!0,t);iv.COUNT=iv.flag((t,e,r)=>(r||0)+1);iv.ArgError=Oa;WIe.exports=iv});var t1e=_((KJt,e1e)=>{var iq;e1e.exports=()=>(typeof iq>"u"&&(iq=Be("zlib").brotliDecompressSync(Buffer.from("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","base64")).toString()),iq)});var o1e=_((uq,Aq)=>{(function(t){uq&&typeof uq=="object"&&typeof Aq<"u"?Aq.exports=t():typeof define=="function"&&define.amd?define([],t):typeof window<"u"?window.isWindows=t():typeof global<"u"?global.isWindows=t():typeof self<"u"?self.isWindows=t():this.isWindows=t()})(function(){"use strict";return function(){return process&&(process.platform==="win32"||/^(msys|cygwin)$/.test(process.env.OSTYPE))}})});var u1e=_((YXt,c1e)=>{"use strict";fq.ifExists=t1t;var qC=Be("util"),sc=Be("path"),a1e=o1e(),ZIt=/^#!\s*(?:\/usr\/bin\/env)?\s*([^ \t]+)(.*)$/,$It={createPwshFile:!0,createCmdFile:a1e(),fs:Be("fs")},e1t=new Map([[".js","node"],[".cjs","node"],[".mjs","node"],[".cmd","cmd"],[".bat","cmd"],[".ps1","pwsh"],[".sh","sh"]]);function l1e(t){let e={...$It,...t},r=e.fs;return e.fs_={chmod:r.chmod?qC.promisify(r.chmod):async()=>{},mkdir:qC.promisify(r.mkdir),readFile:qC.promisify(r.readFile),stat:qC.promisify(r.stat),unlink:qC.promisify(r.unlink),writeFile:qC.promisify(r.writeFile)},e}async function fq(t,e,r){let o=l1e(r);await o.fs_.stat(t),await n1t(t,e,o)}function t1t(t,e,r){return fq(t,e,r).catch(()=>{})}function r1t(t,e){return e.fs_.unlink(t).catch(()=>{})}async function n1t(t,e,r){let o=await l1t(t,r);return await i1t(e,r),s1t(t,e,o,r)}function i1t(t,e){return e.fs_.mkdir(sc.dirname(t),{recursive:!0})}function s1t(t,e,r,o){let a=l1e(o),n=[{generator:A1t,extension:""}];return a.createCmdFile&&n.push({generator:u1t,extension:".cmd"}),a.createPwshFile&&n.push({generator:f1t,extension:".ps1"}),Promise.all(n.map(u=>c1t(t,e+u.extension,r,u.generator,a)))}function o1t(t,e){return r1t(t,e)}function a1t(t,e){return p1t(t,e)}async function l1t(t,e){let a=(await e.fs_.readFile(t,"utf8")).trim().split(/\r*\n/)[0].match(ZIt);if(!a){let n=sc.extname(t).toLowerCase();return{program:e1t.get(n)||null,additionalArgs:""}}return{program:a[1],additionalArgs:a[2]}}async function c1t(t,e,r,o,a){let n=a.preserveSymlinks?"--preserve-symlinks":"",u=[r.additionalArgs,n].filter(A=>A).join(" ");return a=Object.assign({},a,{prog:r.program,args:u}),await o1t(e,a),await a.fs_.writeFile(e,o(t,e,a),"utf8"),a1t(e,a)}function u1t(t,e,r){let a=sc.relative(sc.dirname(e),t).split("/").join("\\"),n=sc.isAbsolute(a)?`"${a}"`:`"%~dp0\\${a}"`,u,A=r.prog,p=r.args||"",h=pq(r.nodePath).win32;A?(u=`"%~dp0\\${A}.exe"`,a=n):(A=n,p="",a="");let C=r.progArgs?`${r.progArgs.join(" ")} `:"",I=h?`@SET NODE_PATH=${h}\r +`:"";return u?I+=`@IF EXIST ${u} (\r + ${u} ${p} ${a} ${C}%*\r +) ELSE (\r + @SETLOCAL\r + @SET PATHEXT=%PATHEXT:;.JS;=;%\r + ${A} ${p} ${a} ${C}%*\r +)\r +`:I+=`@${A} ${p} ${a} ${C}%*\r +`,I}function A1t(t,e,r){let o=sc.relative(sc.dirname(e),t),a=r.prog&&r.prog.split("\\").join("/"),n;o=o.split("\\").join("/");let u=sc.isAbsolute(o)?`"${o}"`:`"$basedir/${o}"`,A=r.args||"",p=pq(r.nodePath).posix;a?(n=`"$basedir/${r.prog}"`,o=u):(a=u,A="",o="");let h=r.progArgs?`${r.progArgs.join(" ")} `:"",C=`#!/bin/sh +basedir=$(dirname "$(echo "$0" | sed -e 's,\\\\,/,g')") + +case \`uname\` in + *CYGWIN*) basedir=\`cygpath -w "$basedir"\`;; +esac + +`,I=r.nodePath?`export NODE_PATH="${p}" +`:"";return n?C+=`${I}if [ -x ${n} ]; then + exec ${n} ${A} ${o} ${h}"$@" +else + exec ${a} ${A} ${o} ${h}"$@" +fi +`:C+=`${I}${a} ${A} ${o} ${h}"$@" +exit $? +`,C}function f1t(t,e,r){let o=sc.relative(sc.dirname(e),t),a=r.prog&&r.prog.split("\\").join("/"),n=a&&`"${a}$exe"`,u;o=o.split("\\").join("/");let A=sc.isAbsolute(o)?`"${o}"`:`"$basedir/${o}"`,p=r.args||"",h=pq(r.nodePath),C=h.win32,I=h.posix;n?(u=`"$basedir/${r.prog}$exe"`,o=A):(n=A,p="",o="");let v=r.progArgs?`${r.progArgs.join(" ")} `:"",x=`#!/usr/bin/env pwsh +$basedir=Split-Path $MyInvocation.MyCommand.Definition -Parent + +$exe="" +${r.nodePath?`$env_node_path=$env:NODE_PATH +$env:NODE_PATH="${C}" +`:""}if ($PSVersionTable.PSVersion -lt "6.0" -or $IsWindows) { + # Fix case when both the Windows and Linux builds of Node + # are installed in the same directory + $exe=".exe" +}`;return r.nodePath&&(x+=` else { + $env:NODE_PATH="${I}" +}`),u?x+=` +$ret=0 +if (Test-Path ${u}) { + # Support pipeline input + if ($MyInvocation.ExpectingInput) { + $input | & ${u} ${p} ${o} ${v}$args + } else { + & ${u} ${p} ${o} ${v}$args + } + $ret=$LASTEXITCODE +} else { + # Support pipeline input + if ($MyInvocation.ExpectingInput) { + $input | & ${n} ${p} ${o} ${v}$args + } else { + & ${n} ${p} ${o} ${v}$args + } + $ret=$LASTEXITCODE +} +${r.nodePath?`$env:NODE_PATH=$env_node_path +`:""}exit $ret +`:x+=` +# Support pipeline input +if ($MyInvocation.ExpectingInput) { + $input | & ${n} ${p} ${o} ${v}$args +} else { + & ${n} ${p} ${o} ${v}$args +} +${r.nodePath?`$env:NODE_PATH=$env_node_path +`:""}exit $LASTEXITCODE +`,x}function p1t(t,e){return e.fs_.chmod(t,493)}function pq(t){if(!t)return{win32:"",posix:""};let e=typeof t=="string"?t.split(sc.delimiter):Array.from(t),r={};for(let o=0;o`/mnt/${A.toLowerCase()}`):e[o];r.win32=r.win32?`${r.win32};${a}`:a,r.posix=r.posix?`${r.posix}:${n}`:n,r[o]={win32:a,posix:n}}return r}c1e.exports=fq});var bq=_((p$t,F1e)=>{F1e.exports=Be("stream")});var L1e=_((h$t,N1e)=>{"use strict";function R1e(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(t);e&&(o=o.filter(function(a){return Object.getOwnPropertyDescriptor(t,a).enumerable})),r.push.apply(r,o)}return r}function O1t(t){for(var e=1;e0?this.tail.next=o:this.head=o,this.tail=o,++this.length}},{key:"unshift",value:function(r){var o={data:r,next:this.head};this.length===0&&(this.tail=o),this.head=o,++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 o=this.head,a=""+o.data;o=o.next;)a+=r+o.data;return a}},{key:"concat",value:function(r){if(this.length===0)return QQ.alloc(0);for(var o=QQ.allocUnsafe(r>>>0),a=this.head,n=0;a;)G1t(a.data,o,n),n+=a.data.length,a=a.next;return o}},{key:"consume",value:function(r,o){var a;return ru.length?u.length:r;if(A===u.length?n+=u:n+=u.slice(0,r),r-=A,r===0){A===u.length?(++a,o.next?this.head=o.next:this.head=this.tail=null):(this.head=o,o.data=u.slice(A));break}++a}return this.length-=a,n}},{key:"_getBuffer",value:function(r){var o=QQ.allocUnsafe(r),a=this.head,n=1;for(a.data.copy(o),r-=a.data.length;a=a.next;){var u=a.data,A=r>u.length?u.length:r;if(u.copy(o,o.length-r,0,A),r-=A,r===0){A===u.length?(++n,a.next?this.head=a.next:this.head=this.tail=null):(this.head=a,a.data=u.slice(A));break}++n}return this.length-=n,o}},{key:q1t,value:function(r,o){return xq(this,O1t({},o,{depth:0,customInspect:!1}))}}]),t}()});var Qq=_((g$t,M1e)=>{"use strict";function Y1t(t,e){var r=this,o=this._readableState&&this._readableState.destroyed,a=this._writableState&&this._writableState.destroyed;return o||a?(e?e(t):t&&(this._writableState?this._writableState.errorEmitted||(this._writableState.errorEmitted=!0,process.nextTick(kq,this,t)):process.nextTick(kq,this,t)),this):(this._readableState&&(this._readableState.destroyed=!0),this._writableState&&(this._writableState.destroyed=!0),this._destroy(t||null,function(n){!e&&n?r._writableState?r._writableState.errorEmitted?process.nextTick(FQ,r):(r._writableState.errorEmitted=!0,process.nextTick(O1e,r,n)):process.nextTick(O1e,r,n):e?(process.nextTick(FQ,r),e(n)):process.nextTick(FQ,r)}),this)}function O1e(t,e){kq(t,e),FQ(t)}function FQ(t){t._writableState&&!t._writableState.emitClose||t._readableState&&!t._readableState.emitClose||t.emit("close")}function W1t(){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 kq(t,e){t.emit("error",e)}function K1t(t,e){var r=t._readableState,o=t._writableState;r&&r.autoDestroy||o&&o.autoDestroy?t.destroy(e):t.emit("error",e)}M1e.exports={destroy:Y1t,undestroy:W1t,errorOrDestroy:K1t}});var x0=_((d$t,H1e)=>{"use strict";var _1e={};function ac(t,e,r){r||(r=Error);function o(n,u,A){return typeof e=="string"?e:e(n,u,A)}class a extends r{constructor(u,A,p){super(o(u,A,p))}}a.prototype.name=r.name,a.prototype.code=t,_1e[t]=a}function U1e(t,e){if(Array.isArray(t)){let r=t.length;return t=t.map(o=>String(o)),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 V1t(t,e,r){return t.substr(!r||r<0?0:+r,e.length)===e}function z1t(t,e,r){return(r===void 0||r>t.length)&&(r=t.length),t.substring(r-e.length,r)===e}function J1t(t,e,r){return typeof r!="number"&&(r=0),r+e.length>t.length?!1:t.indexOf(e,r)!==-1}ac("ERR_INVALID_OPT_VALUE",function(t,e){return'The value "'+e+'" is invalid for option "'+t+'"'},TypeError);ac("ERR_INVALID_ARG_TYPE",function(t,e,r){let o;typeof e=="string"&&V1t(e,"not ")?(o="must not be",e=e.replace(/^not /,"")):o="must be";let a;if(z1t(t," argument"))a=`The ${t} ${o} ${U1e(e,"type")}`;else{let n=J1t(t,".")?"property":"argument";a=`The "${t}" ${n} ${o} ${U1e(e,"type")}`}return a+=`. Received type ${typeof r}`,a},TypeError);ac("ERR_STREAM_PUSH_AFTER_EOF","stream.push() after EOF");ac("ERR_METHOD_NOT_IMPLEMENTED",function(t){return"The "+t+" method is not implemented"});ac("ERR_STREAM_PREMATURE_CLOSE","Premature close");ac("ERR_STREAM_DESTROYED",function(t){return"Cannot call "+t+" after a stream was destroyed"});ac("ERR_MULTIPLE_CALLBACK","Callback called multiple times");ac("ERR_STREAM_CANNOT_PIPE","Cannot pipe, not readable");ac("ERR_STREAM_WRITE_AFTER_END","write after end");ac("ERR_STREAM_NULL_VALUES","May not write null values to stream",TypeError);ac("ERR_UNKNOWN_ENCODING",function(t){return"Unknown encoding: "+t},TypeError);ac("ERR_STREAM_UNSHIFT_AFTER_END_EVENT","stream.unshift() after end event");H1e.exports.codes=_1e});var Fq=_((m$t,j1e)=>{"use strict";var X1t=x0().codes.ERR_INVALID_OPT_VALUE;function Z1t(t,e,r){return t.highWaterMark!=null?t.highWaterMark:e?t[r]:null}function $1t(t,e,r,o){var a=Z1t(e,o,r);if(a!=null){if(!(isFinite(a)&&Math.floor(a)===a)||a<0){var n=o?r:"highWaterMark";throw new X1t(n,a)}return Math.floor(a)}return t.objectMode?16:16*1024}j1e.exports={getHighWaterMark:$1t}});var q1e=_((y$t,Rq)=>{typeof Object.create=="function"?Rq.exports=function(e,r){r&&(e.super_=r,e.prototype=Object.create(r.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}))}:Rq.exports=function(e,r){if(r){e.super_=r;var o=function(){};o.prototype=r.prototype,e.prototype=new o,e.prototype.constructor=e}}});var k0=_((E$t,Nq)=>{try{if(Tq=Be("util"),typeof Tq.inherits!="function")throw"";Nq.exports=Tq.inherits}catch{Nq.exports=q1e()}var Tq});var Y1e=_((C$t,G1e)=>{G1e.exports=Be("util").deprecate});var Mq=_((w$t,X1e)=>{"use strict";X1e.exports=Ri;function K1e(t){var e=this;this.next=null,this.entry=null,this.finish=function(){P2t(e,t)}}var VC;Ri.WritableState=mv;var e2t={deprecate:Y1e()},V1e=bq(),TQ=Be("buffer").Buffer,t2t=global.Uint8Array||function(){};function r2t(t){return TQ.from(t)}function n2t(t){return TQ.isBuffer(t)||t instanceof t2t}var Oq=Qq(),i2t=Fq(),s2t=i2t.getHighWaterMark,Q0=x0().codes,o2t=Q0.ERR_INVALID_ARG_TYPE,a2t=Q0.ERR_METHOD_NOT_IMPLEMENTED,l2t=Q0.ERR_MULTIPLE_CALLBACK,c2t=Q0.ERR_STREAM_CANNOT_PIPE,u2t=Q0.ERR_STREAM_DESTROYED,A2t=Q0.ERR_STREAM_NULL_VALUES,f2t=Q0.ERR_STREAM_WRITE_AFTER_END,p2t=Q0.ERR_UNKNOWN_ENCODING,zC=Oq.errorOrDestroy;k0()(Ri,V1e);function h2t(){}function mv(t,e,r){VC=VC||ym(),t=t||{},typeof r!="boolean"&&(r=e instanceof VC),this.objectMode=!!t.objectMode,r&&(this.objectMode=this.objectMode||!!t.writableObjectMode),this.highWaterMark=s2t(this,t,"writableHighWaterMark",r),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;var o=t.decodeStrings===!1;this.decodeStrings=!o,this.defaultEncoding=t.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(a){w2t(e,a)},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 K1e(this)}mv.prototype.getBuffer=function(){for(var e=this.bufferedRequest,r=[];e;)r.push(e),e=e.next;return r};(function(){try{Object.defineProperty(mv.prototype,"buffer",{get:e2t.deprecate(function(){return this.getBuffer()},"_writableState.buffer is deprecated. Use _writableState.getBuffer instead.","DEP0003")})}catch{}})();var RQ;typeof Symbol=="function"&&Symbol.hasInstance&&typeof Function.prototype[Symbol.hasInstance]=="function"?(RQ=Function.prototype[Symbol.hasInstance],Object.defineProperty(Ri,Symbol.hasInstance,{value:function(e){return RQ.call(this,e)?!0:this!==Ri?!1:e&&e._writableState instanceof mv}})):RQ=function(e){return e instanceof this};function Ri(t){VC=VC||ym();var e=this instanceof VC;if(!e&&!RQ.call(Ri,this))return new Ri(t);this._writableState=new mv(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)),V1e.call(this)}Ri.prototype.pipe=function(){zC(this,new c2t)};function g2t(t,e){var r=new f2t;zC(t,r),process.nextTick(e,r)}function d2t(t,e,r,o){var a;return r===null?a=new A2t:typeof r!="string"&&!e.objectMode&&(a=new o2t("chunk",["string","Buffer"],r)),a?(zC(t,a),process.nextTick(o,a),!1):!0}Ri.prototype.write=function(t,e,r){var o=this._writableState,a=!1,n=!o.objectMode&&n2t(t);return n&&!TQ.isBuffer(t)&&(t=r2t(t)),typeof e=="function"&&(r=e,e=null),n?e="buffer":e||(e=o.defaultEncoding),typeof r!="function"&&(r=h2t),o.ending?g2t(this,r):(n||d2t(this,o,t,r))&&(o.pendingcb++,a=y2t(this,o,n,t,e,r)),a};Ri.prototype.cork=function(){this._writableState.corked++};Ri.prototype.uncork=function(){var t=this._writableState;t.corked&&(t.corked--,!t.writing&&!t.corked&&!t.bufferProcessing&&t.bufferedRequest&&z1e(this,t))};Ri.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 p2t(e);return this._writableState.defaultEncoding=e,this};Object.defineProperty(Ri.prototype,"writableBuffer",{enumerable:!1,get:function(){return this._writableState&&this._writableState.getBuffer()}});function m2t(t,e,r){return!t.objectMode&&t.decodeStrings!==!1&&typeof e=="string"&&(e=TQ.from(e,r)),e}Object.defineProperty(Ri.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}});function y2t(t,e,r,o,a,n){if(!r){var u=m2t(e,o,a);o!==u&&(r=!0,a="buffer",o=u)}var A=e.objectMode?1:o.length;e.length+=A;var p=e.length{"use strict";var S2t=Object.keys||function(t){var e=[];for(var r in t)e.push(r);return e};$1e.exports=yA;var Z1e=Hq(),_q=Mq();k0()(yA,Z1e);for(Uq=S2t(_q.prototype),NQ=0;NQ{var OQ=Be("buffer"),rp=OQ.Buffer;function e2e(t,e){for(var r in t)e[r]=t[r]}rp.from&&rp.alloc&&rp.allocUnsafe&&rp.allocUnsafeSlow?t2e.exports=OQ:(e2e(OQ,jq),jq.Buffer=JC);function JC(t,e,r){return rp(t,e,r)}e2e(rp,JC);JC.from=function(t,e,r){if(typeof t=="number")throw new TypeError("Argument must not be a number");return rp(t,e,r)};JC.alloc=function(t,e,r){if(typeof t!="number")throw new TypeError("Argument must be a number");var o=rp(t);return e!==void 0?typeof r=="string"?o.fill(e,r):o.fill(e):o.fill(0),o};JC.allocUnsafe=function(t){if(typeof t!="number")throw new TypeError("Argument must be a number");return rp(t)};JC.allocUnsafeSlow=function(t){if(typeof t!="number")throw new TypeError("Argument must be a number");return OQ.SlowBuffer(t)}});var Yq=_(i2e=>{"use strict";var Gq=r2e().Buffer,n2e=Gq.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 k2t(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 Q2t(t){var e=k2t(t);if(typeof e!="string"&&(Gq.isEncoding===n2e||!n2e(t)))throw new Error("Unknown encoding: "+t);return e||t}i2e.StringDecoder=yv;function yv(t){this.encoding=Q2t(t);var e;switch(this.encoding){case"utf16le":this.text=O2t,this.end=M2t,e=4;break;case"utf8":this.fillLast=T2t,e=4;break;case"base64":this.text=U2t,this.end=_2t,e=3;break;default:this.write=H2t,this.end=j2t;return}this.lastNeed=0,this.lastTotal=0,this.lastChar=Gq.allocUnsafe(e)}yv.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 F2t(t,e,r){var o=e.length-1;if(o=0?(a>0&&(t.lastNeed=a-1),a):--o=0?(a>0&&(t.lastNeed=a-2),a):--o=0?(a>0&&(a===2?a=0:t.lastNeed=a-3),a):0))}function R2t(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 T2t(t){var e=this.lastTotal-this.lastNeed,r=R2t(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 N2t(t,e){var r=F2t(this,t,e);if(!this.lastNeed)return t.toString("utf8",e);this.lastTotal=r;var o=t.length-(r-this.lastNeed);return t.copy(this.lastChar,0,o),t.toString("utf8",e,o)}function L2t(t){var e=t&&t.length?this.write(t):"";return this.lastNeed?e+"\uFFFD":e}function O2t(t,e){if((t.length-e)%2===0){var r=t.toString("utf16le",e);if(r){var o=r.charCodeAt(r.length-1);if(o>=55296&&o<=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 M2t(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 U2t(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 _2t(t){var e=t&&t.length?this.write(t):"";return this.lastNeed?e+this.lastChar.toString("base64",0,3-this.lastNeed):e}function H2t(t){return t.toString(this.encoding)}function j2t(t){return t&&t.length?this.write(t):""}});var MQ=_((v$t,a2e)=>{"use strict";var s2e=x0().codes.ERR_STREAM_PREMATURE_CLOSE;function q2t(t){var e=!1;return function(){if(!e){e=!0;for(var r=arguments.length,o=new Array(r),a=0;a{"use strict";var UQ;function F0(t,e,r){return e in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}var W2t=MQ(),R0=Symbol("lastResolve"),Em=Symbol("lastReject"),Ev=Symbol("error"),_Q=Symbol("ended"),Cm=Symbol("lastPromise"),Wq=Symbol("handlePromise"),wm=Symbol("stream");function T0(t,e){return{value:t,done:e}}function K2t(t){var e=t[R0];if(e!==null){var r=t[wm].read();r!==null&&(t[Cm]=null,t[R0]=null,t[Em]=null,e(T0(r,!1)))}}function V2t(t){process.nextTick(K2t,t)}function z2t(t,e){return function(r,o){t.then(function(){if(e[_Q]){r(T0(void 0,!0));return}e[Wq](r,o)},o)}}var J2t=Object.getPrototypeOf(function(){}),X2t=Object.setPrototypeOf((UQ={get stream(){return this[wm]},next:function(){var e=this,r=this[Ev];if(r!==null)return Promise.reject(r);if(this[_Q])return Promise.resolve(T0(void 0,!0));if(this[wm].destroyed)return new Promise(function(u,A){process.nextTick(function(){e[Ev]?A(e[Ev]):u(T0(void 0,!0))})});var o=this[Cm],a;if(o)a=new Promise(z2t(o,this));else{var n=this[wm].read();if(n!==null)return Promise.resolve(T0(n,!1));a=new Promise(this[Wq])}return this[Cm]=a,a}},F0(UQ,Symbol.asyncIterator,function(){return this}),F0(UQ,"return",function(){var e=this;return new Promise(function(r,o){e[wm].destroy(null,function(a){if(a){o(a);return}r(T0(void 0,!0))})})}),UQ),J2t),Z2t=function(e){var r,o=Object.create(X2t,(r={},F0(r,wm,{value:e,writable:!0}),F0(r,R0,{value:null,writable:!0}),F0(r,Em,{value:null,writable:!0}),F0(r,Ev,{value:null,writable:!0}),F0(r,_Q,{value:e._readableState.endEmitted,writable:!0}),F0(r,Wq,{value:function(n,u){var A=o[wm].read();A?(o[Cm]=null,o[R0]=null,o[Em]=null,n(T0(A,!1))):(o[R0]=n,o[Em]=u)},writable:!0}),r));return o[Cm]=null,W2t(e,function(a){if(a&&a.code!=="ERR_STREAM_PREMATURE_CLOSE"){var n=o[Em];n!==null&&(o[Cm]=null,o[R0]=null,o[Em]=null,n(a)),o[Ev]=a;return}var u=o[R0];u!==null&&(o[Cm]=null,o[R0]=null,o[Em]=null,u(T0(void 0,!0))),o[_Q]=!0}),e.on("readable",V2t.bind(null,o)),o};l2e.exports=Z2t});var p2e=_((P$t,f2e)=>{"use strict";function u2e(t,e,r,o,a,n,u){try{var A=t[n](u),p=A.value}catch(h){r(h);return}A.done?e(p):Promise.resolve(p).then(o,a)}function $2t(t){return function(){var e=this,r=arguments;return new Promise(function(o,a){var n=t.apply(e,r);function u(p){u2e(n,o,a,u,A,"next",p)}function A(p){u2e(n,o,a,u,A,"throw",p)}u(void 0)})}}function A2e(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(t);e&&(o=o.filter(function(a){return Object.getOwnPropertyDescriptor(t,a).enumerable})),r.push.apply(r,o)}return r}function eBt(t){for(var e=1;e{"use strict";B2e.exports=mn;var XC;mn.ReadableState=m2e;var S$t=Be("events").EventEmitter,d2e=function(e,r){return e.listeners(r).length},wv=bq(),HQ=Be("buffer").Buffer,iBt=global.Uint8Array||function(){};function sBt(t){return HQ.from(t)}function oBt(t){return HQ.isBuffer(t)||t instanceof iBt}var Kq=Be("util"),$r;Kq&&Kq.debuglog?$r=Kq.debuglog("stream"):$r=function(){};var aBt=L1e(),eG=Qq(),lBt=Fq(),cBt=lBt.getHighWaterMark,jQ=x0().codes,uBt=jQ.ERR_INVALID_ARG_TYPE,ABt=jQ.ERR_STREAM_PUSH_AFTER_EOF,fBt=jQ.ERR_METHOD_NOT_IMPLEMENTED,pBt=jQ.ERR_STREAM_UNSHIFT_AFTER_END_EVENT,ZC,Vq,zq;k0()(mn,wv);var Cv=eG.errorOrDestroy,Jq=["error","close","destroy","pause","resume"];function hBt(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 m2e(t,e,r){XC=XC||ym(),t=t||{},typeof r!="boolean"&&(r=e instanceof XC),this.objectMode=!!t.objectMode,r&&(this.objectMode=this.objectMode||!!t.readableObjectMode),this.highWaterMark=cBt(this,t,"readableHighWaterMark",r),this.buffer=new aBt,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&&(ZC||(ZC=Yq().StringDecoder),this.decoder=new ZC(t.encoding),this.encoding=t.encoding)}function mn(t){if(XC=XC||ym(),!(this instanceof mn))return new mn(t);var e=this instanceof XC;this._readableState=new m2e(t,this,e),this.readable=!0,t&&(typeof t.read=="function"&&(this._read=t.read),typeof t.destroy=="function"&&(this._destroy=t.destroy)),wv.call(this)}Object.defineProperty(mn.prototype,"destroyed",{enumerable:!1,get:function(){return this._readableState===void 0?!1:this._readableState.destroyed},set:function(e){!this._readableState||(this._readableState.destroyed=e)}});mn.prototype.destroy=eG.destroy;mn.prototype._undestroy=eG.undestroy;mn.prototype._destroy=function(t,e){e(t)};mn.prototype.push=function(t,e){var r=this._readableState,o;return r.objectMode?o=!0:typeof t=="string"&&(e=e||r.defaultEncoding,e!==r.encoding&&(t=HQ.from(t,e),e=""),o=!0),y2e(this,t,e,!1,o)};mn.prototype.unshift=function(t){return y2e(this,t,null,!0,!1)};function y2e(t,e,r,o,a){$r("readableAddChunk",e);var n=t._readableState;if(e===null)n.reading=!1,mBt(t,n);else{var u;if(a||(u=gBt(n,e)),u)Cv(t,u);else if(n.objectMode||e&&e.length>0)if(typeof e!="string"&&!n.objectMode&&Object.getPrototypeOf(e)!==HQ.prototype&&(e=sBt(e)),o)n.endEmitted?Cv(t,new pBt):Xq(t,n,e,!0);else if(n.ended)Cv(t,new ABt);else{if(n.destroyed)return!1;n.reading=!1,n.decoder&&!r?(e=n.decoder.write(e),n.objectMode||e.length!==0?Xq(t,n,e,!1):$q(t,n)):Xq(t,n,e,!1)}else o||(n.reading=!1,$q(t,n))}return!n.ended&&(n.length=h2e?t=h2e:(t--,t|=t>>>1,t|=t>>>2,t|=t>>>4,t|=t>>>8,t|=t>>>16,t++),t}function g2e(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=dBt(t)),t<=e.length?t:e.ended?e.length:(e.needReadable=!0,0))}mn.prototype.read=function(t){$r("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 $r("read: emitReadable",e.length,e.ended),e.length===0&&e.ended?Zq(this):qQ(this),null;if(t=g2e(t,e),t===0&&e.ended)return e.length===0&&Zq(this),null;var o=e.needReadable;$r("need readable",o),(e.length===0||e.length-t0?a=w2e(t,e):a=null,a===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&&Zq(this)),a!==null&&this.emit("data",a),a};function mBt(t,e){if($r("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?qQ(t):(e.needReadable=!1,e.emittedReadable||(e.emittedReadable=!0,E2e(t)))}}function qQ(t){var e=t._readableState;$r("emitReadable",e.needReadable,e.emittedReadable),e.needReadable=!1,e.emittedReadable||($r("emitReadable",e.flowing),e.emittedReadable=!0,process.nextTick(E2e,t))}function E2e(t){var e=t._readableState;$r("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,tG(t)}function $q(t,e){e.readingMore||(e.readingMore=!0,process.nextTick(yBt,t,e))}function yBt(t,e){for(;!e.reading&&!e.ended&&(e.length1&&I2e(o.pipes,t)!==-1)&&!h&&($r("false write response, pause",o.awaitDrain),o.awaitDrain++),r.pause())}function v(L){$r("onerror",L),R(),t.removeListener("error",v),d2e(t,"error")===0&&Cv(t,L)}hBt(t,"error",v);function x(){t.removeListener("finish",E),R()}t.once("close",x);function E(){$r("onfinish"),t.removeListener("close",x),R()}t.once("finish",E);function R(){$r("unpipe"),r.unpipe(t)}return t.emit("pipe",r),o.flowing||($r("pipe resume"),r.resume()),t};function EBt(t){return function(){var r=t._readableState;$r("pipeOnDrain",r.awaitDrain),r.awaitDrain&&r.awaitDrain--,r.awaitDrain===0&&d2e(t,"data")&&(r.flowing=!0,tG(t))}}mn.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 o=e.pipes,a=e.pipesCount;e.pipes=null,e.pipesCount=0,e.flowing=!1;for(var n=0;n0,o.flowing!==!1&&this.resume()):t==="readable"&&!o.endEmitted&&!o.readableListening&&(o.readableListening=o.needReadable=!0,o.flowing=!1,o.emittedReadable=!1,$r("on readable",o.length,o.reading),o.length?qQ(this):o.reading||process.nextTick(CBt,this)),r};mn.prototype.addListener=mn.prototype.on;mn.prototype.removeListener=function(t,e){var r=wv.prototype.removeListener.call(this,t,e);return t==="readable"&&process.nextTick(C2e,this),r};mn.prototype.removeAllListeners=function(t){var e=wv.prototype.removeAllListeners.apply(this,arguments);return(t==="readable"||t===void 0)&&process.nextTick(C2e,this),e};function C2e(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 CBt(t){$r("readable nexttick read 0"),t.read(0)}mn.prototype.resume=function(){var t=this._readableState;return t.flowing||($r("resume"),t.flowing=!t.readableListening,wBt(this,t)),t.paused=!1,this};function wBt(t,e){e.resumeScheduled||(e.resumeScheduled=!0,process.nextTick(IBt,t,e))}function IBt(t,e){$r("resume",e.reading),e.reading||t.read(0),e.resumeScheduled=!1,t.emit("resume"),tG(t),e.flowing&&!e.reading&&t.read(0)}mn.prototype.pause=function(){return $r("call pause flowing=%j",this._readableState.flowing),this._readableState.flowing!==!1&&($r("pause"),this._readableState.flowing=!1,this.emit("pause")),this._readableState.paused=!0,this};function tG(t){var e=t._readableState;for($r("flow",e.flowing);e.flowing&&t.read()!==null;);}mn.prototype.wrap=function(t){var e=this,r=this._readableState,o=!1;t.on("end",function(){if($r("wrapped end"),r.decoder&&!r.ended){var u=r.decoder.end();u&&u.length&&e.push(u)}e.push(null)}),t.on("data",function(u){if($r("wrapped data"),r.decoder&&(u=r.decoder.write(u)),!(r.objectMode&&u==null)&&!(!r.objectMode&&(!u||!u.length))){var A=e.push(u);A||(o=!0,t.pause())}});for(var a in t)this[a]===void 0&&typeof t[a]=="function"&&(this[a]=function(A){return function(){return t[A].apply(t,arguments)}}(a));for(var n=0;n=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 Zq(t){var e=t._readableState;$r("endReadable",e.endEmitted),e.endEmitted||(e.ended=!0,process.nextTick(BBt,e,t))}function BBt(t,e){if($r("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"&&(mn.from=function(t,e){return zq===void 0&&(zq=p2e()),zq(mn,t,e)});function I2e(t,e){for(var r=0,o=t.length;r{"use strict";D2e.exports=np;var GQ=x0().codes,vBt=GQ.ERR_METHOD_NOT_IMPLEMENTED,DBt=GQ.ERR_MULTIPLE_CALLBACK,PBt=GQ.ERR_TRANSFORM_ALREADY_TRANSFORMING,SBt=GQ.ERR_TRANSFORM_WITH_LENGTH_0,YQ=ym();k0()(np,YQ);function bBt(t,e){var r=this._transformState;r.transforming=!1;var o=r.writecb;if(o===null)return this.emit("error",new DBt);r.writechunk=null,r.writecb=null,e!=null&&this.push(e),o(t);var a=this._readableState;a.reading=!1,(a.needReadable||a.length{"use strict";S2e.exports=Iv;var P2e=rG();k0()(Iv,P2e);function Iv(t){if(!(this instanceof Iv))return new Iv(t);P2e.call(this,t)}Iv.prototype._transform=function(t,e,r){r(null,t)}});var R2e=_((Q$t,F2e)=>{"use strict";var nG;function kBt(t){var e=!1;return function(){e||(e=!0,t.apply(void 0,arguments))}}var Q2e=x0().codes,QBt=Q2e.ERR_MISSING_ARGS,FBt=Q2e.ERR_STREAM_DESTROYED;function x2e(t){if(t)throw t}function RBt(t){return t.setHeader&&typeof t.abort=="function"}function TBt(t,e,r,o){o=kBt(o);var a=!1;t.on("close",function(){a=!0}),nG===void 0&&(nG=MQ()),nG(t,{readable:e,writable:r},function(u){if(u)return o(u);a=!0,o()});var n=!1;return function(u){if(!a&&!n){if(n=!0,RBt(t))return t.abort();if(typeof t.destroy=="function")return t.destroy();o(u||new FBt("pipe"))}}}function k2e(t){t()}function NBt(t,e){return t.pipe(e)}function LBt(t){return!t.length||typeof t[t.length-1]!="function"?x2e:t.pop()}function OBt(){for(var t=arguments.length,e=new Array(t),r=0;r0;return TBt(u,p,h,function(C){a||(a=C),C&&n.forEach(k2e),!p&&(n.forEach(k2e),o(a))})});return e.reduce(NBt)}F2e.exports=OBt});var $C=_((lc,vv)=>{var Bv=Be("stream");process.env.READABLE_STREAM==="disable"&&Bv?(vv.exports=Bv.Readable,Object.assign(vv.exports,Bv),vv.exports.Stream=Bv):(lc=vv.exports=Hq(),lc.Stream=Bv||lc,lc.Readable=lc,lc.Writable=Mq(),lc.Duplex=ym(),lc.Transform=rG(),lc.PassThrough=b2e(),lc.finished=MQ(),lc.pipeline=R2e())});var L2e=_((F$t,N2e)=>{"use strict";var{Buffer:lu}=Be("buffer"),T2e=Symbol.for("BufferList");function ni(t){if(!(this instanceof ni))return new ni(t);ni._init.call(this,t)}ni._init=function(e){Object.defineProperty(this,T2e,{value:!0}),this._bufs=[],this.length=0,e&&this.append(e)};ni.prototype._new=function(e){return new ni(e)};ni.prototype._offset=function(e){if(e===0)return[0,0];let r=0;for(let o=0;othis.length||e<0)return;let r=this._offset(e);return this._bufs[r[0]][r[1]]};ni.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)};ni.prototype.copy=function(e,r,o,a){if((typeof o!="number"||o<0)&&(o=0),(typeof a!="number"||a>this.length)&&(a=this.length),o>=this.length||a<=0)return e||lu.alloc(0);let n=!!e,u=this._offset(o),A=a-o,p=A,h=n&&r||0,C=u[1];if(o===0&&a===this.length){if(!n)return this._bufs.length===1?this._bufs[0]:lu.concat(this._bufs,this.length);for(let I=0;Iv)this._bufs[I].copy(e,h,C),h+=v;else{this._bufs[I].copy(e,h,C,C+p),h+=v;break}p-=v,C&&(C=0)}return e.length>h?e.slice(0,h):e};ni.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 o=this._offset(e),a=this._offset(r),n=this._bufs.slice(o[0],a[0]+1);return a[1]===0?n.pop():n[n.length-1]=n[n.length-1].slice(0,a[1]),o[1]!==0&&(n[0]=n[0].slice(o[1])),this._new(n)};ni.prototype.toString=function(e,r,o){return this.slice(r,o).toString(e)};ni.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};ni.prototype.duplicate=function(){let e=this._new();for(let r=0;rthis.length?this.length:e;let o=this._offset(e),a=o[0],n=o[1];for(;a=t.length){let p=u.indexOf(t,n);if(p!==-1)return this._reverseOffset([a,p]);n=u.length-t.length+1}else{let p=this._reverseOffset([a,n]);if(this._match(p,t))return p;n++}n=0}return-1};ni.prototype._match=function(t,e){if(this.length-t{"use strict";var iG=$C().Duplex,MBt=k0(),Dv=L2e();function Uo(t){if(!(this instanceof Uo))return new Uo(t);if(typeof t=="function"){this._callback=t;let e=function(o){this._callback&&(this._callback(o),this._callback=null)}.bind(this);this.on("pipe",function(o){o.on("error",e)}),this.on("unpipe",function(o){o.removeListener("error",e)}),t=null}Dv._init.call(this,t),iG.call(this)}MBt(Uo,iG);Object.assign(Uo.prototype,Dv.prototype);Uo.prototype._new=function(e){return new Uo(e)};Uo.prototype._write=function(e,r,o){this._appendBuffer(e),typeof o=="function"&&o()};Uo.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)};Uo.prototype.end=function(e){iG.prototype.end.call(this,e),this._callback&&(this._callback(null,this.slice()),this._callback=null)};Uo.prototype._destroy=function(e,r){this._bufs.length=0,this.length=0,r(e)};Uo.prototype._isBufferList=function(e){return e instanceof Uo||e instanceof Dv||Uo.isBufferList(e)};Uo.isBufferList=Dv.isBufferList;WQ.exports=Uo;WQ.exports.BufferListStream=Uo;WQ.exports.BufferList=Dv});var aG=_(tw=>{var UBt=Buffer.alloc,_Bt="0000000000000000000",HBt="7777777777777777777",M2e="0".charCodeAt(0),U2e=Buffer.from("ustar\0","binary"),jBt=Buffer.from("00","binary"),qBt=Buffer.from("ustar ","binary"),GBt=Buffer.from(" \0","binary"),YBt=parseInt("7777",8),Pv=257,oG=263,WBt=function(t,e,r){return typeof t!="number"?r:(t=~~t,t>=e?e:t>=0||(t+=e,t>=0)?t:0)},KBt=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},VBt=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},_2e=function(t,e,r,o){for(;re?HBt.slice(0,e)+" ":_Bt.slice(0,e-t.length)+t+" "};function zBt(t){var e;if(t[0]===128)e=!0;else if(t[0]===255)e=!1;else return null;for(var r=[],o=t.length-1;o>0;o--){var a=t[o];e?r.push(a):r.push(255-a)}var n=0,u=r.length;for(o=0;o=Math.pow(10,r)&&r++,e+r+t};tw.decodeLongPath=function(t,e){return ew(t,0,t.length,e)};tw.encodePax=function(t){var e="";t.name&&(e+=sG(" path="+t.name+` +`)),t.linkname&&(e+=sG(" linkpath="+t.linkname+` +`));var r=t.pax;if(r)for(var o in r)e+=sG(" "+o+"="+r[o]+` +`);return Buffer.from(e)};tw.decodePax=function(t){for(var e={};t.length;){for(var r=0;r100;){var a=r.indexOf("/");if(a===-1)return null;o+=o?"/"+r.slice(0,a):r.slice(0,a),r=r.slice(a+1)}return Buffer.byteLength(r)>100||Buffer.byteLength(o)>155||t.linkname&&Buffer.byteLength(t.linkname)>100?null:(e.write(r),e.write(N0(t.mode&YBt,6),100),e.write(N0(t.uid,6),108),e.write(N0(t.gid,6),116),e.write(N0(t.size,11),124),e.write(N0(t.mtime.getTime()/1e3|0,11),136),e[156]=M2e+VBt(t.type),t.linkname&&e.write(t.linkname,157),U2e.copy(e,Pv),jBt.copy(e,oG),t.uname&&e.write(t.uname,265),t.gname&&e.write(t.gname,297),e.write(N0(t.devmajor||0,6),329),e.write(N0(t.devminor||0,6),337),o&&e.write(o,345),e.write(N0(H2e(e),6),148),e)};tw.decode=function(t,e,r){var o=t[156]===0?0:t[156]-M2e,a=ew(t,0,100,e),n=L0(t,100,8),u=L0(t,108,8),A=L0(t,116,8),p=L0(t,124,12),h=L0(t,136,12),C=KBt(o),I=t[157]===0?null:ew(t,157,100,e),v=ew(t,265,32),x=ew(t,297,32),E=L0(t,329,8),R=L0(t,337,8),L=H2e(t);if(L===8*32)return null;if(L!==L0(t,148,8))throw new Error("Invalid tar header. Maybe the tar is corrupted or it needs to be gunzipped?");if(U2e.compare(t,Pv,Pv+6)===0)t[345]&&(a=ew(t,345,155,e)+"/"+a);else if(!(qBt.compare(t,Pv,Pv+6)===0&&GBt.compare(t,oG,oG+2)===0)){if(!r)throw new Error("Invalid tar header: unknown format.")}return o===0&&a&&a[a.length-1]==="/"&&(o=5),{name:a,mode:n,uid:u,gid:A,size:p,mtime:new Date(1e3*h),type:C,linkname:I,uname:v,gname:x,devmajor:E,devminor:R}}});var V2e=_((N$t,K2e)=>{var q2e=Be("util"),JBt=O2e(),Sv=aG(),G2e=$C().Writable,Y2e=$C().PassThrough,W2e=function(){},j2e=function(t){return t&=511,t&&512-t},XBt=function(t,e){var r=new KQ(t,e);return r.end(),r},ZBt=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},KQ=function(t,e){this._parent=t,this.offset=e,Y2e.call(this,{autoDestroy:!1})};q2e.inherits(KQ,Y2e);KQ.prototype.destroy=function(t){this._parent.destroy(t)};var ip=function(t){if(!(this instanceof ip))return new ip(t);G2e.call(this,t),t=t||{},this._offset=0,this._buffer=JBt(),this._missing=0,this._partial=!1,this._onparse=W2e,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,o=function(){e._continue()},a=function(v){if(e._locked=!1,v)return e.destroy(v);e._stream||o()},n=function(){e._stream=null;var v=j2e(e._header.size);v?e._parse(v,u):e._parse(512,I),e._locked||o()},u=function(){e._buffer.consume(j2e(e._header.size)),e._parse(512,I),o()},A=function(){var v=e._header.size;e._paxGlobal=Sv.decodePax(r.slice(0,v)),r.consume(v),n()},p=function(){var v=e._header.size;e._pax=Sv.decodePax(r.slice(0,v)),e._paxGlobal&&(e._pax=Object.assign({},e._paxGlobal,e._pax)),r.consume(v),n()},h=function(){var v=e._header.size;this._gnuLongPath=Sv.decodeLongPath(r.slice(0,v),t.filenameEncoding),r.consume(v),n()},C=function(){var v=e._header.size;this._gnuLongLinkPath=Sv.decodeLongPath(r.slice(0,v),t.filenameEncoding),r.consume(v),n()},I=function(){var v=e._offset,x;try{x=e._header=Sv.decode(r.slice(0,512),t.filenameEncoding,t.allowUnknownFormat)}catch(E){e.emit("error",E)}if(r.consume(512),!x){e._parse(512,I),o();return}if(x.type==="gnu-long-path"){e._parse(x.size,h),o();return}if(x.type==="gnu-long-link-path"){e._parse(x.size,C),o();return}if(x.type==="pax-global-header"){e._parse(x.size,A),o();return}if(x.type==="pax-header"){e._parse(x.size,p),o();return}if(e._gnuLongPath&&(x.name=e._gnuLongPath,e._gnuLongPath=null),e._gnuLongLinkPath&&(x.linkname=e._gnuLongLinkPath,e._gnuLongLinkPath=null),e._pax&&(e._header=x=ZBt(x,e._pax),e._pax=null),e._locked=!0,!x.size||x.type==="directory"){e._parse(512,I),e.emit("entry",x,XBt(e,v),a);return}e._stream=new KQ(e,v),e.emit("entry",x,e._stream,a),e._parse(x.size,n),o()};this._onheader=I,this._parse(512,I)};q2e.inherits(ip,G2e);ip.prototype.destroy=function(t){this._destroyed||(this._destroyed=!0,t&&this.emit("error",t),this.emit("close"),this._stream&&this._stream.emit("close"))};ip.prototype._parse=function(t,e){this._destroyed||(this._offset+=t,this._missing=t,e===this._onheader&&(this._partial=!1),this._onparse=e)};ip.prototype._continue=function(){if(!this._destroyed){var t=this._cb;this._cb=W2e,this._overflow?this._write(this._overflow,void 0,t):t()}};ip.prototype._write=function(t,e,r){if(!this._destroyed){var o=this._stream,a=this._buffer,n=this._missing;if(t.length&&(this._partial=!0),t.lengthn&&(u=t.slice(n),t=t.slice(0,n)),o?o.end(t):a.append(t),this._overflow=u,this._onparse()}};ip.prototype._final=function(t){if(this._partial)return this.destroy(new Error("Unexpected end of data"));t()};K2e.exports=ip});var J2e=_((L$t,z2e)=>{z2e.exports=Be("fs").constants||Be("constants")});var tBe=_((O$t,eBe)=>{var rw=J2e(),X2e=MM(),zQ=k0(),$Bt=Buffer.alloc,Z2e=$C().Readable,nw=$C().Writable,evt=Be("string_decoder").StringDecoder,VQ=aG(),tvt=parseInt("755",8),rvt=parseInt("644",8),$2e=$Bt(1024),cG=function(){},lG=function(t,e){e&=511,e&&t.push($2e.slice(0,512-e))};function nvt(t){switch(t&rw.S_IFMT){case rw.S_IFBLK:return"block-device";case rw.S_IFCHR:return"character-device";case rw.S_IFDIR:return"directory";case rw.S_IFIFO:return"fifo";case rw.S_IFLNK:return"symlink"}return"file"}var JQ=function(t){nw.call(this),this.written=0,this._to=t,this._destroyed=!1};zQ(JQ,nw);JQ.prototype._write=function(t,e,r){if(this.written+=t.length,this._to.push(t))return r();this._to._drain=r};JQ.prototype.destroy=function(){this._destroyed||(this._destroyed=!0,this.emit("close"))};var XQ=function(){nw.call(this),this.linkname="",this._decoder=new evt("utf-8"),this._destroyed=!1};zQ(XQ,nw);XQ.prototype._write=function(t,e,r){this.linkname+=this._decoder.write(t),r()};XQ.prototype.destroy=function(){this._destroyed||(this._destroyed=!0,this.emit("close"))};var bv=function(){nw.call(this),this._destroyed=!1};zQ(bv,nw);bv.prototype._write=function(t,e,r){r(new Error("No body allowed for this entry"))};bv.prototype.destroy=function(){this._destroyed||(this._destroyed=!0,this.emit("close"))};var EA=function(t){if(!(this instanceof EA))return new EA(t);Z2e.call(this,t),this._drain=cG,this._finalized=!1,this._finalizing=!1,this._destroyed=!1,this._stream=null};zQ(EA,Z2e);EA.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=cG);var o=this;if((!t.size||t.type==="symlink")&&(t.size=0),t.type||(t.type=nvt(t.mode)),t.mode||(t.mode=t.type==="directory"?tvt:rvt),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 a=this.push(e);return lG(o,t.size),a?process.nextTick(r):this._drain=r,new bv}if(t.type==="symlink"&&!t.linkname){var n=new XQ;return X2e(n,function(A){if(A)return o.destroy(),r(A);t.linkname=n.linkname,o._encode(t),r()}),n}if(this._encode(t),t.type!=="file"&&t.type!=="contiguous-file")return process.nextTick(r),new bv;var u=new JQ(this);return this._stream=u,X2e(u,function(A){if(o._stream=null,A)return o.destroy(),r(A);if(u.written!==t.size)return o.destroy(),r(new Error("size mismatch"));lG(o,t.size),o._finalizing&&o.finalize(),r()}),u}};EA.prototype.finalize=function(){if(this._stream){this._finalizing=!0;return}this._finalized||(this._finalized=!0,this.push($2e),this.push(null))};EA.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())};EA.prototype._encode=function(t){if(!t.pax){var e=VQ.encode(t);if(e){this.push(e);return}}this._encodePax(t)};EA.prototype._encodePax=function(t){var e=VQ.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(VQ.encode(r)),this.push(e),lG(this,e.length),r.size=t.size,r.type=t.type,this.push(VQ.encode(r))};EA.prototype._read=function(t){var e=this._drain;this._drain=cG,e()};eBe.exports=EA});var rBe=_(uG=>{uG.extract=V2e();uG.pack=tBe()});var hBe=_((ner,pBe)=>{"use strict";var Im=class{constructor(e,r,o){this.__specs=e||{},Object.keys(this.__specs).forEach(a=>{if(typeof this.__specs[a]=="string"){let n=this.__specs[a],u=this.__specs[n];if(u){let A=u.aliases||[];A.push(a,n),u.aliases=[...new Set(A)],this.__specs[a]=u}else throw new Error(`Alias refers to invalid key: ${n} -> ${a}`)}}),this.__opts=r||{},this.__providers=ABe(o.filter(a=>a!=null&&typeof a=="object")),this.__isFiggyPudding=!0}get(e){return dG(this,e,!0)}get[Symbol.toStringTag](){return"FiggyPudding"}forEach(e,r=this){for(let[o,a]of this.entries())e.call(r,a,o,this)}toJSON(){let e={};return this.forEach((r,o)=>{e[o]=r}),e}*entries(e){for(let o of Object.keys(this.__specs))yield[o,this.get(o)];let r=e||this.__opts.other;if(r){let o=new Set;for(let a of this.__providers){let n=a.entries?a.entries(r):yvt(a);for(let[u,A]of n)r(u)&&!o.has(u)&&(o.add(u),yield[u,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 Im(this.__specs,this.__opts,ABe(this.__providers).concat(e)),fBe)}};try{let t=Be("util");Im.prototype[t.inspect.custom]=function(e,r){return this[Symbol.toStringTag]+" "+t.inspect(this.toJSON(),r)}}catch{}function dvt(t){throw Object.assign(new Error(`invalid config key requested: ${t}`),{code:"EBADKEY"})}function dG(t,e,r){let o=t.__specs[e];if(r&&!o&&(!t.__opts.other||!t.__opts.other(e)))dvt(e);else{o||(o={});let a;for(let n of t.__providers){if(a=uBe(e,n),a===void 0&&o.aliases&&o.aliases.length){for(let u of o.aliases)if(u!==e&&(a=uBe(u,n),a!==void 0))break}if(a!==void 0)break}return a===void 0&&o.default!==void 0?typeof o.default=="function"?o.default(t):o.default:a}}function uBe(t,e){let r;return e.__isFiggyPudding?r=dG(e,t,!1):typeof e.get=="function"?r=e.get(t):r=e[t],r}var fBe={has(t,e){return e in t.__specs&&dG(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 Im.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.")}};pBe.exports=mvt;function mvt(t,e){function r(...o){return new Proxy(new Im(t,e,o),fBe)}return r}function ABe(t){let e=[];return t.forEach(r=>e.unshift(r)),e}function yvt(t){return Object.keys(t).map(e=>[e,t[e]])}});var mBe=_((ier,IA)=>{"use strict";var kv=Be("crypto"),Evt=hBe(),Cvt=Be("stream").Transform,gBe=["sha256","sha384","sha512"],wvt=/^[a-z0-9+/]+(?:=?=?)$/i,Ivt=/^([^-]+)-([^?]+)([?\S*]*)$/,Bvt=/^([^-]+)-([A-Za-z0-9+/=]{44,88})(\?[\x21-\x7E]*)*$/,vvt=/^[\x21-\x7E]+$/,ia=Evt({algorithms:{default:["sha512"]},error:{default:!1},integrity:{},options:{default:[]},pickAlgorithm:{default:()=>Fvt},Promise:{default:()=>Promise},sep:{default:" "},single:{default:!1},size:{},strict:{default:!1}}),M0=class{get isHash(){return!0}constructor(e,r){r=ia(r);let o=!!r.strict;this.source=e.trim();let a=this.source.match(o?Bvt:Ivt);if(!a||o&&!gBe.some(u=>u===a[1]))return;this.algorithm=a[1],this.digest=a[2];let n=a[3];this.options=n?n.slice(1).split("?"):[]}hexDigest(){return this.digest&&Buffer.from(this.digest,"base64").toString("hex")}toJSON(){return this.toString()}toString(e){if(e=ia(e),e.strict&&!(gBe.some(o=>o===this.algorithm)&&this.digest.match(wvt)&&(this.options||[]).every(o=>o.match(vvt))))return"";let r=this.options&&this.options.length?`?${this.options.join("?")}`:"";return`${this.algorithm}-${this.digest}${r}`}},Bm=class{get isIntegrity(){return!0}toJSON(){return this.toString()}toString(e){e=ia(e);let r=e.sep||" ";return e.strict&&(r=r.replace(/\S+/g," ")),Object.keys(this).map(o=>this[o].map(a=>M0.prototype.toString.call(a,e)).filter(a=>a.length).join(r)).filter(o=>o.length).join(r)}concat(e,r){r=ia(r);let o=typeof e=="string"?e:xv(e,r);return wA(`${this.toString(r)} ${o}`,r)}hexDigest(){return wA(this,{single:!0}).hexDigest()}match(e,r){r=ia(r);let o=wA(e,r),a=o.pickAlgorithm(r);return this[a]&&o[a]&&this[a].find(n=>o[a].find(u=>n.digest===u.digest))||!1}pickAlgorithm(e){e=ia(e);let r=e.pickAlgorithm,o=Object.keys(this);if(!o.length)throw new Error(`No algorithms available for ${JSON.stringify(this.toString())}`);return o.reduce((a,n)=>r(a,n)||a)}};IA.exports.parse=wA;function wA(t,e){if(e=ia(e),typeof t=="string")return mG(t,e);if(t.algorithm&&t.digest){let r=new Bm;return r[t.algorithm]=[t],mG(xv(r,e),e)}else return mG(xv(t,e),e)}function mG(t,e){return e.single?new M0(t,e):t.trim().split(/\s+/).reduce((r,o)=>{let a=new M0(o,e);if(a.algorithm&&a.digest){let n=a.algorithm;r[n]||(r[n]=[]),r[n].push(a)}return r},new Bm)}IA.exports.stringify=xv;function xv(t,e){return e=ia(e),t.algorithm&&t.digest?M0.prototype.toString.call(t,e):typeof t=="string"?xv(wA(t,e),e):Bm.prototype.toString.call(t,e)}IA.exports.fromHex=Dvt;function Dvt(t,e,r){r=ia(r);let o=r.options&&r.options.length?`?${r.options.join("?")}`:"";return wA(`${e}-${Buffer.from(t,"hex").toString("base64")}${o}`,r)}IA.exports.fromData=Pvt;function Pvt(t,e){e=ia(e);let r=e.algorithms,o=e.options&&e.options.length?`?${e.options.join("?")}`:"";return r.reduce((a,n)=>{let u=kv.createHash(n).update(t).digest("base64"),A=new M0(`${n}-${u}${o}`,e);if(A.algorithm&&A.digest){let p=A.algorithm;a[p]||(a[p]=[]),a[p].push(A)}return a},new Bm)}IA.exports.fromStream=Svt;function Svt(t,e){e=ia(e);let r=e.Promise||Promise,o=yG(e);return new r((a,n)=>{t.pipe(o),t.on("error",n),o.on("error",n);let u;o.on("integrity",A=>{u=A}),o.on("end",()=>a(u)),o.on("data",()=>{})})}IA.exports.checkData=bvt;function bvt(t,e,r){if(r=ia(r),e=wA(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 o=e.pickAlgorithm(r),a=kv.createHash(o).update(t).digest("base64"),n=wA({algorithm:o,digest:a}),u=n.match(e,r);if(u||!r.error)return u;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 ${o}: Wanted ${e}, but got ${n}. (${t.length} bytes)`);throw A.code="EINTEGRITY",A.found=n,A.expected=e,A.algorithm=o,A.sri=e,A}}IA.exports.checkStream=xvt;function xvt(t,e,r){r=ia(r);let o=r.Promise||Promise,a=yG(r.concat({integrity:e}));return new o((n,u)=>{t.pipe(a),t.on("error",u),a.on("error",u);let A;a.on("verified",p=>{A=p}),a.on("end",()=>n(A)),a.on("data",()=>{})})}IA.exports.integrityStream=yG;function yG(t){t=ia(t);let e=t.integrity&&wA(t.integrity,t),r=e&&Object.keys(e).length,o=r&&e.pickAlgorithm(t),a=r&&e[o],n=Array.from(new Set(t.algorithms.concat(o?[o]:[]))),u=n.map(kv.createHash),A=0,p=new Cvt({transform(h,C,I){A+=h.length,u.forEach(v=>v.update(h,C)),I(null,h,C)}}).on("end",()=>{let h=t.options&&t.options.length?`?${t.options.join("?")}`:"",C=wA(u.map((v,x)=>`${n[x]}-${v.digest("base64")}${h}`).join(" "),t),I=r&&C.match(e,t);if(typeof t.size=="number"&&A!==t.size){let v=new Error(`stream size mismatch when checking ${e}. + Wanted: ${t.size} + Found: ${A}`);v.code="EBADSIZE",v.found=A,v.expected=t.size,v.sri=e,p.emit("error",v)}else if(t.integrity&&!I){let v=new Error(`${e} integrity checksum failed when using ${o}: wanted ${a} but got ${C}. (${A} bytes)`);v.code="EINTEGRITY",v.found=C,v.expected=a,v.algorithm=o,v.sri=e,p.emit("error",v)}else p.emit("size",A),p.emit("integrity",C),I&&p.emit("verified",I)});return p}IA.exports.create=kvt;function kvt(t){t=ia(t);let e=t.algorithms,r=t.options.length?`?${t.options.join("?")}`:"",o=e.map(kv.createHash);return{update:function(a,n){return o.forEach(u=>u.update(a,n)),this},digest:function(a){return e.reduce((u,A)=>{let p=o.shift().digest("base64"),h=new M0(`${A}-${p}${r}`,t);if(h.algorithm&&h.digest){let C=h.algorithm;u[C]||(u[C]=[]),u[C].push(h)}return u},new Bm)}}}var Qvt=new Set(kv.getHashes()),dBe=["md5","whirlpool","sha1","sha224","sha256","sha384","sha512","sha3","sha3-256","sha3-384","sha3-512","sha3_256","sha3_384","sha3_512"].filter(t=>Qvt.has(t));function Fvt(t,e){return dBe.indexOf(t.toLowerCase())>=dBe.indexOf(e.toLowerCase())?t:e}});var KBe=_((air,WBe)=>{var QDt=uL();function FDt(t){return QDt(t)?void 0:t}WBe.exports=FDt});var zBe=_((lir,VBe)=>{var RDt=qb(),TDt=Q8(),NDt=N8(),LDt=Hd(),ODt=hd(),MDt=KBe(),UDt=P_(),_Dt=k8(),HDt=1,jDt=2,qDt=4,GDt=UDt(function(t,e){var r={};if(t==null)return r;var o=!1;e=RDt(e,function(n){return n=LDt(n,t),o||(o=n.length>1),n}),ODt(t,_Dt(t),r),o&&(r=TDt(r,HDt|jDt|qDt,MDt));for(var a=e.length;a--;)NDt(r,e[a]);return r});VBe.exports=GDt});Pt();Ye();Pt();var eve=Be("child_process"),tve=$e($g());qt();var cC=new Map([]);var s2={};Vt(s2,{BaseCommand:()=>ut,WorkspaceRequiredError:()=>rr,getCli:()=>rhe,getDynamicLibs:()=>the,getPluginConfiguration:()=>AC,openWorkspace:()=>uC,pluginCommands:()=>cC,runExit:()=>sk});qt();var ut=class extends nt{constructor(){super(...arguments);this.cwd=ge.String("--cwd",{hidden:!0})}validateAndExecute(){if(typeof this.cwd<"u")throw new it("The --cwd option is ambiguous when used anywhere else than the very first parameter provided in the command line, before even the command path");return super.validateAndExecute()}};Ye();Pt();qt();var rr=class extends it{constructor(e,r){let o=V.relative(e,r),a=V.join(e,Ot.fileName);super(`This command can only be run from within a workspace of your project (${o} isn't a workspace of ${a}).`)}};Ye();Pt();nA();Nl();b1();qt();var OAt=$e(Jn());Za();var the=()=>new Map([["@yarnpkg/cli",s2],["@yarnpkg/core",i2],["@yarnpkg/fslib",Ww],["@yarnpkg/libzip",S1],["@yarnpkg/parsers",eI],["@yarnpkg/shell",F1],["clipanion",fI],["semver",OAt],["typanion",Vo]]);Ye();async function uC(t,e){let{project:r,workspace:o}=await St.find(t,e);if(!o)throw new rr(r.cwd,e);return o}Ye();Pt();nA();Nl();b1();qt();var $Dt=$e(Jn());Za();var tH={};Vt(tH,{AddCommand:()=>xh,BinCommand:()=>kh,CacheCleanCommand:()=>Qh,ClipanionCommand:()=>Yd,ConfigCommand:()=>Nh,ConfigGetCommand:()=>Fh,ConfigSetCommand:()=>Rh,ConfigUnsetCommand:()=>Th,DedupeCommand:()=>Lh,EntryCommand:()=>gC,ExecCommand:()=>Oh,ExplainCommand:()=>_h,ExplainPeerRequirementsCommand:()=>Mh,HelpCommand:()=>Wd,InfoCommand:()=>Hh,LinkCommand:()=>qh,NodeCommand:()=>Gh,PluginCheckCommand:()=>Yh,PluginImportCommand:()=>Vh,PluginImportSourcesCommand:()=>zh,PluginListCommand:()=>Wh,PluginRemoveCommand:()=>Jh,PluginRuntimeCommand:()=>Xh,RebuildCommand:()=>Zh,RemoveCommand:()=>$h,RunCommand:()=>e0,RunIndexCommand:()=>zd,SetResolutionCommand:()=>t0,SetVersionCommand:()=>Uh,SetVersionSourcesCommand:()=>Kh,UnlinkCommand:()=>r0,UpCommand:()=>Kf,VersionCommand:()=>Kd,WhyCommand:()=>n0,WorkspaceCommand:()=>o0,WorkspacesListCommand:()=>s0,YarnCommand:()=>jh,dedupeUtils:()=>gk,default:()=>xgt,suggestUtils:()=>Jc});var Tde=$e($g());Ye();Ye();Ye();qt();var q0e=$e(u2());Za();var Jc={};Vt(Jc,{Modifier:()=>D8,Strategy:()=>fk,Target:()=>A2,WorkspaceModifier:()=>M0e,applyModifier:()=>npt,extractDescriptorFromPath:()=>P8,extractRangeModifier:()=>U0e,fetchDescriptorFrom:()=>S8,findProjectDescriptors:()=>j0e,getModifier:()=>f2,getSuggestedDescriptors:()=>p2,makeWorkspaceDescriptor:()=>H0e,toWorkspaceModifier:()=>_0e});Ye();Ye();Pt();var v8=$e(Jn()),tpt="workspace:",A2=(o=>(o.REGULAR="dependencies",o.DEVELOPMENT="devDependencies",o.PEER="peerDependencies",o))(A2||{}),D8=(o=>(o.CARET="^",o.TILDE="~",o.EXACT="",o))(D8||{}),M0e=(o=>(o.CARET="^",o.TILDE="~",o.EXACT="*",o))(M0e||{}),fk=(n=>(n.KEEP="keep",n.REUSE="reuse",n.PROJECT="project",n.LATEST="latest",n.CACHE="cache",n))(fk||{});function f2(t,e){return t.exact?"":t.caret?"^":t.tilde?"~":e.configuration.get("defaultSemverRangePrefix")}var rpt=/^([\^~]?)[0-9]+(?:\.[0-9]+){0,2}(?:-\S+)?$/;function U0e(t,{project:e}){let r=t.match(rpt);return r?r[1]:e.configuration.get("defaultSemverRangePrefix")}function npt(t,e){let{protocol:r,source:o,params:a,selector:n}=W.parseRange(t.range);return v8.default.valid(n)&&(n=`${e}${t.range}`),W.makeDescriptor(t,W.makeRange({protocol:r,source:o,params:a,selector:n}))}function _0e(t){switch(t){case"^":return"^";case"~":return"~";case"":return"*";default:throw new Error(`Assertion failed: Unknown modifier: "${t}"`)}}function H0e(t,e){return W.makeDescriptor(t.anchoredDescriptor,`${tpt}${_0e(e)}`)}async function j0e(t,{project:e,target:r}){let o=new Map,a=n=>{let u=o.get(n.descriptorHash);return u||o.set(n.descriptorHash,u={descriptor:n,locators:[]}),u};for(let n of e.workspaces)if(r==="peerDependencies"){let u=n.manifest.peerDependencies.get(t.identHash);u!==void 0&&a(u).locators.push(n.anchoredLocator)}else{let u=n.manifest.dependencies.get(t.identHash),A=n.manifest.devDependencies.get(t.identHash);r==="devDependencies"?A!==void 0?a(A).locators.push(n.anchoredLocator):u!==void 0&&a(u).locators.push(n.anchoredLocator):u!==void 0?a(u).locators.push(n.anchoredLocator):A!==void 0&&a(A).locators.push(n.anchoredLocator)}return o}async function P8(t,{cwd:e,workspace:r}){return await ipt(async o=>{V.isAbsolute(t)||(t=V.relative(r.cwd,V.resolve(e,t)),t.match(/^\.{0,2}\//)||(t=`./${t}`));let{project:a}=r,n=await S8(W.makeIdent(null,"archive"),t,{project:r.project,cache:o,workspace:r});if(!n)throw new Error("Assertion failed: The descriptor should have been found");let u=new Qi,A=a.configuration.makeResolver(),p=a.configuration.makeFetcher(),h={checksums:a.storedChecksums,project:a,cache:o,fetcher:p,report:u,resolver:A},C=A.bindDescriptor(n,r.anchoredLocator,h),I=W.convertDescriptorToLocator(C),v=await p.fetch(I,h),x=await Ot.find(v.prefixPath,{baseFs:v.packageFs});if(!x.name)throw new Error("Target path doesn't have a name");return W.makeDescriptor(x.name,t)})}async function p2(t,{project:e,workspace:r,cache:o,target:a,fixed:n,modifier:u,strategies:A,maxResults:p=1/0}){if(!(p>=0))throw new Error(`Invalid maxResults (${p})`);let[h,C]=t.range!=="unknown"?n||kr.validRange(t.range)||!t.range.match(/^[a-z0-9._-]+$/i)?[t.range,"latest"]:["unknown",t.range]:["unknown","latest"];if(h!=="unknown")return{suggestions:[{descriptor:t,name:`Use ${W.prettyDescriptor(e.configuration,t)}`,reason:"(unambiguous explicit request)"}],rejections:[]};let I=typeof r<"u"&&r!==null&&r.manifest[a].get(t.identHash)||null,v=[],x=[],E=async R=>{try{await R()}catch(L){x.push(L)}};for(let R of A){if(v.length>=p)break;switch(R){case"keep":await E(async()=>{I&&v.push({descriptor:I,name:`Keep ${W.prettyDescriptor(e.configuration,I)}`,reason:"(no changes)"})});break;case"reuse":await E(async()=>{for(let{descriptor:L,locators:U}of(await j0e(t,{project:e,target:a})).values()){if(U.length===1&&U[0].locatorHash===r.anchoredLocator.locatorHash&&A.includes("keep"))continue;let z=`(originally used by ${W.prettyLocator(e.configuration,U[0])}`;z+=U.length>1?` and ${U.length-1} other${U.length>2?"s":""})`:")",v.push({descriptor:L,name:`Reuse ${W.prettyDescriptor(e.configuration,L)}`,reason:z})}});break;case"cache":await E(async()=>{for(let L of e.storedDescriptors.values())L.identHash===t.identHash&&v.push({descriptor:L,name:`Reuse ${W.prettyDescriptor(e.configuration,L)}`,reason:"(already used somewhere in the lockfile)"})});break;case"project":await E(async()=>{if(r.manifest.name!==null&&t.identHash===r.manifest.name.identHash)return;let L=e.tryWorkspaceByIdent(t);if(L===null)return;let U=H0e(L,u);v.push({descriptor:U,name:`Attach ${W.prettyDescriptor(e.configuration,U)}`,reason:`(local workspace at ${de.pretty(e.configuration,L.relativeCwd,de.Type.PATH)})`})});break;case"latest":{let L=e.configuration.get("enableNetwork"),U=e.configuration.get("enableOfflineMode");await E(async()=>{if(a==="peerDependencies")v.push({descriptor:W.makeDescriptor(t,"*"),name:"Use *",reason:"(catch-all peer dependency pattern)"});else if(!L&&!U)v.push({descriptor:null,name:"Resolve from latest",reason:de.pretty(e.configuration,"(unavailable because enableNetwork is toggled off)","grey")});else{let z=await S8(t,C,{project:e,cache:o,workspace:r,modifier:u});z&&v.push({descriptor:z,name:`Use ${W.prettyDescriptor(e.configuration,z)}`,reason:`(resolved from ${U?"the cache":"latest"})`})}})}break}}return{suggestions:v.slice(0,p),rejections:x.slice(0,p)}}async function S8(t,e,{project:r,cache:o,workspace:a,preserveModifier:n=!0,modifier:u}){let A=r.configuration.normalizeDependency(W.makeDescriptor(t,e)),p=new Qi,h=r.configuration.makeFetcher(),C=r.configuration.makeResolver(),I={project:r,fetcher:h,cache:o,checksums:r.storedChecksums,report:p,cacheOptions:{skipIntegrityCheck:!0}},v={...I,resolver:C,fetchOptions:I},x=C.bindDescriptor(A,a.anchoredLocator,v),E=await C.getCandidates(x,{},v);if(E.length===0)return null;let R=E[0],{protocol:L,source:U,params:z,selector:te}=W.parseRange(W.convertToManifestRange(R.reference));if(L===r.configuration.get("defaultProtocol")&&(L=null),v8.default.valid(te)){let le=te;if(typeof u<"u")te=u+te;else if(n!==!1){let ye=typeof n=="string"?n:A.range;te=U0e(ye,{project:r})+te}let he=W.makeDescriptor(R,W.makeRange({protocol:L,source:U,params:z,selector:te}));(await C.getCandidates(r.configuration.normalizeDependency(he),{},v)).length!==1&&(te=le)}return W.makeDescriptor(R,W.makeRange({protocol:L,source:U,params:z,selector:te}))}async function ipt(t){return await oe.mktempPromise(async e=>{let r=Ke.create(e);return r.useWithSource(e,{enableMirror:!1,compressionLevel:0},e,{overwrite:!0}),await t(new Lr(e,{configuration:r,check:!1,immutable:!1}))})}var xh=class extends ut{constructor(){super(...arguments);this.json=ge.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"});this.fixed=ge.Boolean("-F,--fixed",!1,{description:"Store dependency tags as-is instead of resolving them"});this.exact=ge.Boolean("-E,--exact",!1,{description:"Don't use any semver modifier on the resolved range"});this.tilde=ge.Boolean("-T,--tilde",!1,{description:"Use the `~` semver modifier on the resolved range"});this.caret=ge.Boolean("-C,--caret",!1,{description:"Use the `^` semver modifier on the resolved range"});this.dev=ge.Boolean("-D,--dev",!1,{description:"Add a package as a dev dependency"});this.peer=ge.Boolean("-P,--peer",!1,{description:"Add a package as a peer dependency"});this.optional=ge.Boolean("-O,--optional",!1,{description:"Add / upgrade a package to an optional regular / peer dependency"});this.preferDev=ge.Boolean("--prefer-dev",!1,{description:"Add / upgrade a package to a dev dependency"});this.interactive=ge.Boolean("-i,--interactive",{description:"Reuse the specified package from other workspaces in the project"});this.cached=ge.Boolean("--cached",!1,{description:"Reuse the highest version already used somewhere within the project"});this.mode=ge.String("--mode",{description:"Change what artifacts installs generate",validator:Ks(pl)});this.silent=ge.Boolean("--silent",{hidden:!0});this.packages=ge.Rest()}async execute(){let r=await Ke.find(this.context.cwd,this.context.plugins),{project:o,workspace:a}=await St.find(r,this.context.cwd),n=await Lr.find(r);if(!a)throw new rr(o.cwd,this.context.cwd);await o.restoreInstallState({restoreResolutions:!1});let u=this.fixed,A=this.interactive??r.get("preferInteractive"),p=A||r.get("preferReuse"),h=f2(this,o),C=[p?"reuse":void 0,"project",this.cached?"cache":void 0,"latest"].filter(U=>typeof U<"u"),I=A?1/0:1,v=await Promise.all(this.packages.map(async U=>{let z=U.match(/^\.{0,2}\//)?await P8(U,{cwd:this.context.cwd,workspace:a}):W.tryParseDescriptor(U),te=U.match(/^(https?:|git@github)/);if(te)throw new it(`It seems you are trying to add a package using a ${de.pretty(r,`${te[0]}...`,de.Type.RANGE)} url; we now require package names to be explicitly specified. +Try running the command again with the package name prefixed: ${de.pretty(r,"yarn add",de.Type.CODE)} ${de.pretty(r,W.makeDescriptor(W.makeIdent(null,"my-package"),`${te[0]}...`),de.Type.DESCRIPTOR)}`);if(!z)throw new it(`The ${de.pretty(r,U,de.Type.CODE)} string didn't match the required format (package-name@range). Did you perhaps forget to explicitly reference the package name?`);let le=spt(a,z,{dev:this.dev,peer:this.peer,preferDev:this.preferDev,optional:this.optional});return await Promise.all(le.map(async Ae=>{let ye=await p2(z,{project:o,workspace:a,cache:n,fixed:u,target:Ae,modifier:h,strategies:C,maxResults:I});return{request:z,suggestedDescriptors:ye,target:Ae}}))})).then(U=>U.flat()),x=await AA.start({configuration:r,stdout:this.context.stdout,suggestInstall:!1},async U=>{for(let{request:z,suggestedDescriptors:{suggestions:te,rejections:le}}of v)if(te.filter(Ae=>Ae.descriptor!==null).length===0){let[Ae]=le;if(typeof Ae>"u")throw new Error("Assertion failed: Expected an error to have been set");o.configuration.get("enableNetwork")?U.reportError(27,`${W.prettyDescriptor(r,z)} can't be resolved to a satisfying range`):U.reportError(27,`${W.prettyDescriptor(r,z)} can't be resolved to a satisfying range (note: network resolution has been disabled)`),U.reportSeparator(),U.reportExceptionOnce(Ae)}});if(x.hasErrors())return x.exitCode();let E=!1,R=[],L=[];for(let{suggestedDescriptors:{suggestions:U},target:z}of v){let te,le=U.filter(ae=>ae.descriptor!==null),he=le[0].descriptor,Ae=le.every(ae=>W.areDescriptorsEqual(ae.descriptor,he));le.length===1||Ae?te=he:(E=!0,{answer:te}=await(0,q0e.prompt)({type:"select",name:"answer",message:"Which range do you want to use?",choices:U.map(({descriptor:ae,name:Ie,reason:Fe})=>ae?{name:Ie,hint:Fe,descriptor:ae}:{name:Ie,hint:Fe,disabled:!0}),onCancel:()=>process.exit(130),result(ae){return this.find(ae,"descriptor")},stdin:this.context.stdin,stdout:this.context.stdout}));let ye=a.manifest[z].get(te.identHash);(typeof ye>"u"||ye.descriptorHash!==te.descriptorHash)&&(a.manifest[z].set(te.identHash,te),this.optional&&(z==="dependencies"?a.manifest.ensureDependencyMeta({...te,range:"unknown"}).optional=!0:z==="peerDependencies"&&(a.manifest.ensurePeerDependencyMeta({...te,range:"unknown"}).optional=!0)),typeof ye>"u"?R.push([a,z,te,C]):L.push([a,z,ye,te]))}return await r.triggerMultipleHooks(U=>U.afterWorkspaceDependencyAddition,R),await r.triggerMultipleHooks(U=>U.afterWorkspaceDependencyReplacement,L),E&&this.context.stdout.write(` +`),await o.installWithNewReport({json:this.json,stdout:this.context.stdout,quiet:this.context.quiet},{cache:n,mode:this.mode})}};xh.paths=[["add"]],xh.usage=nt.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 latter 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"]]});function spt(t,e,{dev:r,peer:o,preferDev:a,optional:n}){let u=t.manifest["dependencies"].has(e.identHash),A=t.manifest["devDependencies"].has(e.identHash),p=t.manifest["peerDependencies"].has(e.identHash);if((r||o)&&u)throw new it(`Package "${W.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&&!o&&p)throw new it(`Package "${W.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(n&&A)throw new it(`Package "${W.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(n&&!o&&p)throw new it(`Package "${W.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||a)&&n)throw new it(`Package "${W.prettyIdent(t.project.configuration,e)}" cannot simultaneously be a dev dependency and an optional dependency`);let h=[];return o&&h.push("peerDependencies"),(r||a)&&h.push("devDependencies"),n&&h.push("dependencies"),h.length>0?h:A?["devDependencies"]:p?["peerDependencies"]:["dependencies"]}Ye();Ye();qt();var kh=class extends ut{constructor(){super(...arguments);this.verbose=ge.Boolean("-v,--verbose",!1,{description:"Print both the binary name and the locator of the package that provides the binary"});this.json=ge.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"});this.name=ge.String({required:!1})}async execute(){let r=await Ke.find(this.context.cwd,this.context.plugins),{project:o,locator:a}=await St.find(r,this.context.cwd);if(await o.restoreInstallState(),this.name){let A=(await un.getPackageAccessibleBinaries(a,{project:o})).get(this.name);if(!A)throw new it(`Couldn't find a binary named "${this.name}" for package "${W.prettyLocator(r,a)}"`);let[,p]=A;return this.context.stdout.write(`${p} +`),0}return(await Nt.start({configuration:r,json:this.json,stdout:this.context.stdout},async u=>{let A=await un.getPackageAccessibleBinaries(a,{project:o}),h=Array.from(A.keys()).reduce((C,I)=>Math.max(C,I.length),0);for(let[C,[I,v]]of A)u.reportJson({name:C,source:W.stringifyIdent(I),path:v});if(this.verbose)for(let[C,[I]]of A)u.reportInfo(null,`${C.padEnd(h," ")} ${W.prettyLocator(r,I)}`);else for(let C of A.keys())u.reportInfo(null,C)})).exitCode()}};kh.paths=[["bin"]],kh.usage=nt.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"]]});Ye();Pt();qt();var Qh=class extends ut{constructor(){super(...arguments);this.mirror=ge.Boolean("--mirror",!1,{description:"Remove the global cache files instead of the local cache files"});this.all=ge.Boolean("--all",!1,{description:"Remove both the global cache files and the local cache files of the current project"})}async execute(){let r=await Ke.find(this.context.cwd,this.context.plugins),o=await Lr.find(r);return(await Nt.start({configuration:r,stdout:this.context.stdout},async()=>{let n=(this.all||this.mirror)&&o.mirrorCwd!==null,u=!this.mirror;n&&(await oe.removePromise(o.mirrorCwd),await r.triggerHook(A=>A.cleanGlobalArtifacts,r)),u&&await oe.removePromise(o.cwd)})).exitCode()}};Qh.paths=[["cache","clean"],["cache","clear"]],Qh.usage=nt.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"]]});Ye();qt();var Y0e=$e(h2()),b8=Be("util"),Fh=class extends ut{constructor(){super(...arguments);this.why=ge.Boolean("--why",!1,{description:"Print the explanation for why a setting has its value"});this.json=ge.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"});this.unsafe=ge.Boolean("--no-redacted",!1,{description:"Don't redact secrets (such as tokens) from the output"});this.name=ge.String()}async execute(){let r=await Ke.find(this.context.cwd,this.context.plugins),o=this.name.replace(/[.[].*$/,""),a=this.name.replace(/^[^.[]*/,"");if(typeof r.settings.get(o)>"u")throw new it(`Couldn't find a configuration settings named "${o}"`);let u=r.getSpecial(o,{hideSecrets:!this.unsafe,getNativePaths:!0}),A=je.convertMapsToIndexableObjects(u),p=a?(0,Y0e.default)(A,a):A,h=await Nt.start({configuration:r,includeFooter:!1,json:this.json,stdout:this.context.stdout},async C=>{C.reportJson(p)});if(!this.json){if(typeof p=="string")return this.context.stdout.write(`${p} +`),h.exitCode();b8.inspect.styles.name="cyan",this.context.stdout.write(`${(0,b8.inspect)(p,{depth:1/0,colors:r.get("enableColors"),compact:!1})} +`)}return h.exitCode()}};Fh.paths=[["config","get"]],Fh.usage=nt.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"]]});Ye();qt();var Nge=$e(F8()),Lge=$e(h2()),Oge=$e(R8()),T8=Be("util"),Rh=class extends ut{constructor(){super(...arguments);this.json=ge.Boolean("--json",!1,{description:"Set complex configuration settings to JSON values"});this.home=ge.Boolean("-H,--home",!1,{description:"Update the home configuration instead of the project configuration"});this.name=ge.String();this.value=ge.String()}async execute(){let r=await Ke.find(this.context.cwd,this.context.plugins),o=()=>{if(!r.projectCwd)throw new it("This command must be run from within a project folder");return r.projectCwd},a=this.name.replace(/[.[].*$/,""),n=this.name.replace(/^[^.[]*\.?/,"");if(typeof r.settings.get(a)>"u")throw new it(`Couldn't find a configuration settings named "${a}"`);if(a==="enableStrictSettings")throw new it("This setting only affects the file it's in, and thus cannot be set from the CLI");let A=this.json?JSON.parse(this.value):this.value;await(this.home?E=>Ke.updateHomeConfiguration(E):E=>Ke.updateConfiguration(o(),E))(E=>{if(n){let R=(0,Nge.default)(E);return(0,Oge.default)(R,this.name,A),R}else return{...E,[a]:A}});let C=(await Ke.find(this.context.cwd,this.context.plugins)).getSpecial(a,{hideSecrets:!0,getNativePaths:!0}),I=je.convertMapsToIndexableObjects(C),v=n?(0,Lge.default)(I,n):I;return(await Nt.start({configuration:r,includeFooter:!1,stdout:this.context.stdout},async E=>{T8.inspect.styles.name="cyan",E.reportInfo(0,`Successfully set ${this.name} to ${(0,T8.inspect)(v,{depth:1/0,colors:r.get("enableColors"),compact:!1})}`)})).exitCode()}};Rh.paths=[["config","set"]],Rh.usage=nt.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"`]]});Ye();qt();var Vge=$e(F8()),zge=$e(Hge()),Jge=$e(L8()),Th=class extends ut{constructor(){super(...arguments);this.home=ge.Boolean("-H,--home",!1,{description:"Update the home configuration instead of the project configuration"});this.name=ge.String()}async execute(){let r=await Ke.find(this.context.cwd,this.context.plugins),o=()=>{if(!r.projectCwd)throw new it("This command must be run from within a project folder");return r.projectCwd},a=this.name.replace(/[.[].*$/,""),n=this.name.replace(/^[^.[]*\.?/,"");if(typeof r.settings.get(a)>"u")throw new it(`Couldn't find a configuration settings named "${a}"`);let A=this.home?h=>Ke.updateHomeConfiguration(h):h=>Ke.updateConfiguration(o(),h);return(await Nt.start({configuration:r,includeFooter:!1,stdout:this.context.stdout},async h=>{let C=!1;await A(I=>{if(!(0,zge.default)(I,this.name))return h.reportWarning(0,`Configuration doesn't contain setting ${this.name}; there is nothing to unset`),C=!0,I;let v=n?(0,Vge.default)(I):{...I};return(0,Jge.default)(v,this.name),v}),C||h.reportInfo(0,`Successfully unset ${this.name}`)})).exitCode()}};Th.paths=[["config","unset"]],Th.usage=nt.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"]]});Ye();Pt();qt();var hk=Be("util"),Nh=class extends ut{constructor(){super(...arguments);this.noDefaults=ge.Boolean("--no-defaults",!1,{description:"Omit the default values from the display"});this.json=ge.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"});this.verbose=ge.Boolean("-v,--verbose",{hidden:!0});this.why=ge.Boolean("--why",{hidden:!0});this.names=ge.Rest()}async execute(){let r=await Ke.find(this.context.cwd,this.context.plugins,{strict:!1}),o=await TE({configuration:r,stdout:this.context.stdout,forceError:this.json},[{option:this.verbose,message:"The --verbose option is deprecated, the settings' descriptions are now always displayed"},{option:this.why,message:"The --why option is deprecated, the settings' sources are now always displayed"}]);if(o!==null)return o;let a=this.names.length>0?[...new Set(this.names)].sort():[...r.settings.keys()].sort(),n,u=await Nt.start({configuration:r,json:this.json,stdout:this.context.stdout,includeFooter:!1},async A=>{if(r.invalid.size>0&&!this.json){for(let[p,h]of r.invalid)A.reportError(34,`Invalid configuration key "${p}" in ${h}`);A.reportSeparator()}if(this.json)for(let p of a){let h=r.settings.get(p);typeof h>"u"&&A.reportError(34,`No configuration key named "${p}"`);let C=r.getSpecial(p,{hideSecrets:!0,getNativePaths:!0}),I=r.sources.get(p)??"",v=I&&I[0]!=="<"?ue.fromPortablePath(I):I;A.reportJson({key:p,effective:C,source:v,...h})}else{let p={breakLength:1/0,colors:r.get("enableColors"),maxArrayLength:2},h={},C={children:h};for(let I of a){if(this.noDefaults&&!r.sources.has(I))continue;let v=r.settings.get(I),x=r.sources.get(I)??"",E=r.getSpecial(I,{hideSecrets:!0,getNativePaths:!0}),R={Description:{label:"Description",value:de.tuple(de.Type.MARKDOWN,{text:v.description,format:this.cli.format(),paragraphs:!1})},Source:{label:"Source",value:de.tuple(x[0]==="<"?de.Type.CODE:de.Type.PATH,x)}};h[I]={value:de.tuple(de.Type.CODE,I),children:R};let L=(U,z)=>{for(let[te,le]of z)if(le instanceof Map){let he={};U[te]={children:he},L(he,le)}else U[te]={label:te,value:de.tuple(de.Type.NO_HINT,(0,hk.inspect)(le,p))}};E instanceof Map?L(R,E):R.Value={label:"Value",value:de.tuple(de.Type.NO_HINT,(0,hk.inspect)(E,p))}}a.length!==1&&(n=void 0),$s.emitTree(C,{configuration:r,json:this.json,stdout:this.context.stdout,separators:2})}});if(!this.json&&typeof n<"u"){let A=a[0],p=(0,hk.inspect)(r.getSpecial(A,{hideSecrets:!0,getNativePaths:!0}),{colors:r.get("enableColors")});this.context.stdout.write(` +`),this.context.stdout.write(`${p} +`)}return u.exitCode()}};Nh.paths=[["config"]],Nh.usage=nt.Usage({description:"display the current configuration",details:` + This command prints the current active configuration settings. + `,examples:[["Print the active configuration settings","$0 config"]]});Ye();qt();Za();var gk={};Vt(gk,{Strategy:()=>g2,acceptedStrategies:()=>H0t,dedupe:()=>O8});Ye();Ye();var Xge=$e(Zo()),g2=(e=>(e.HIGHEST="highest",e))(g2||{}),H0t=new Set(Object.values(g2)),j0t={highest:async(t,e,{resolver:r,fetcher:o,resolveOptions:a,fetchOptions:n})=>{let u=new Map;for(let[p,h]of t.storedResolutions){let C=t.storedDescriptors.get(p);if(typeof C>"u")throw new Error(`Assertion failed: The descriptor (${p}) should have been registered`);je.getSetWithDefault(u,C.identHash).add(h)}let A=new Map(je.mapAndFilter(t.storedDescriptors.values(),p=>W.isVirtualDescriptor(p)?je.mapAndFilter.skip:[p.descriptorHash,je.makeDeferred()]));for(let p of t.storedDescriptors.values()){let h=A.get(p.descriptorHash);if(typeof h>"u")throw new Error(`Assertion failed: The descriptor (${p.descriptorHash}) should have been registered`);let C=t.storedResolutions.get(p.descriptorHash);if(typeof C>"u")throw new Error(`Assertion failed: The resolution (${p.descriptorHash}) should have been registered`);let I=t.originalPackages.get(C);if(typeof I>"u")throw new Error(`Assertion failed: The package (${C}) should have been registered`);Promise.resolve().then(async()=>{let v=r.getResolutionDependencies(p,a),x=Object.fromEntries(await je.allSettledSafe(Object.entries(v).map(async([te,le])=>{let he=A.get(le.descriptorHash);if(typeof he>"u")throw new Error(`Assertion failed: The descriptor (${le.descriptorHash}) should have been registered`);let Ae=await he.promise;if(!Ae)throw new Error("Assertion failed: Expected the dependency to have been through the dedupe process itself");return[te,Ae.updatedPackage]})));if(e.length&&!Xge.default.isMatch(W.stringifyIdent(p),e)||!r.shouldPersistResolution(I,a))return I;let E=u.get(p.identHash);if(typeof E>"u")throw new Error(`Assertion failed: The resolutions (${p.identHash}) should have been registered`);if(E.size===1)return I;let R=[...E].map(te=>{let le=t.originalPackages.get(te);if(typeof le>"u")throw new Error(`Assertion failed: The package (${te}) should have been registered`);return le}),L=await r.getSatisfying(p,x,R,a),U=L.locators?.[0];if(typeof U>"u"||!L.sorted)return I;let z=t.originalPackages.get(U.locatorHash);if(typeof z>"u")throw new Error(`Assertion failed: The package (${U.locatorHash}) should have been registered`);return z}).then(async v=>{let x=await t.preparePackage(v,{resolver:r,resolveOptions:a});h.resolve({descriptor:p,currentPackage:I,updatedPackage:v,resolvedPackage:x})}).catch(v=>{h.reject(v)})}return[...A.values()].map(p=>p.promise)}};async function O8(t,{strategy:e,patterns:r,cache:o,report:a}){let{configuration:n}=t,u=new Qi,A=n.makeResolver(),p=n.makeFetcher(),h={cache:o,checksums:t.storedChecksums,fetcher:p,project:t,report:u,cacheOptions:{skipIntegrityCheck:!0}},C={project:t,resolver:A,report:u,fetchOptions:h};return await a.startTimerPromise("Deduplication step",async()=>{let I=j0t[e],v=await I(t,r,{resolver:A,resolveOptions:C,fetcher:p,fetchOptions:h}),x=Xs.progressViaCounter(v.length);await a.reportProgress(x);let E=0;await Promise.all(v.map(U=>U.then(z=>{if(z===null||z.currentPackage.locatorHash===z.updatedPackage.locatorHash)return;E++;let{descriptor:te,currentPackage:le,updatedPackage:he}=z;a.reportInfo(0,`${W.prettyDescriptor(n,te)} can be deduped from ${W.prettyLocator(n,le)} to ${W.prettyLocator(n,he)}`),a.reportJson({descriptor:W.stringifyDescriptor(te),currentResolution:W.stringifyLocator(le),updatedResolution:W.stringifyLocator(he)}),t.storedResolutions.set(te.descriptorHash,he.locatorHash)}).finally(()=>x.tick())));let R;switch(E){case 0:R="No packages";break;case 1:R="One package";break;default:R=`${E} packages`}let L=de.pretty(n,e,de.Type.CODE);return a.reportInfo(0,`${R} can be deduped using the ${L} strategy`),E})}var Lh=class extends ut{constructor(){super(...arguments);this.strategy=ge.String("-s,--strategy","highest",{description:"The strategy to use when deduping dependencies",validator:Ks(g2)});this.check=ge.Boolean("-c,--check",!1,{description:"Exit with exit code 1 when duplicates are found, without persisting the dependency tree"});this.json=ge.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"});this.mode=ge.String("--mode",{description:"Change what artifacts installs generate",validator:Ks(pl)});this.patterns=ge.Rest()}async execute(){let r=await Ke.find(this.context.cwd,this.context.plugins),{project:o}=await St.find(r,this.context.cwd),a=await Lr.find(r);await o.restoreInstallState({restoreResolutions:!1});let n=0,u=await Nt.start({configuration:r,includeFooter:!1,stdout:this.context.stdout,json:this.json},async A=>{n=await O8(o,{strategy:this.strategy,patterns:this.patterns,cache:a,report:A})});return u.hasErrors()?u.exitCode():this.check?n?1:0:await o.installWithNewReport({json:this.json,stdout:this.context.stdout},{cache:a,mode:this.mode})}};Lh.paths=[["dedupe"]],Lh.usage=nt.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 latter 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"]]});Ye();qt();var Yd=class extends ut{async execute(){let{plugins:e}=await Ke.find(this.context.cwd,this.context.plugins),r=[];for(let u of e){let{commands:A}=u[1];if(A){let h=as.from(A).definitions();r.push([u[0],h])}}let o=this.cli.definitions(),a=(u,A)=>u.split(" ").slice(1).join()===A.split(" ").slice(1).join(),n=Zge()["@yarnpkg/builder"].bundles.standard;for(let u of r){let A=u[1];for(let p of A)o.find(h=>a(h.path,p.path)).plugin={name:u[0],isDefault:n.includes(u[0])}}this.context.stdout.write(`${JSON.stringify(o,null,2)} +`)}};Yd.paths=[["--clipanion=definitions"]];var Wd=class extends ut{async execute(){this.context.stdout.write(this.cli.usage(null))}};Wd.paths=[["help"],["--help"],["-h"]];Ye();Pt();qt();var gC=class extends ut{constructor(){super(...arguments);this.leadingArgument=ge.String();this.args=ge.Proxy()}async execute(){if(this.leadingArgument.match(/[\\/]/)&&!W.tryParseIdent(this.leadingArgument)){let r=V.resolve(this.context.cwd,ue.toPortablePath(this.leadingArgument));return await this.cli.run(this.args,{cwd:r})}else return await this.cli.run(["run",this.leadingArgument,...this.args])}};Ye();var Kd=class extends ut{async execute(){this.context.stdout.write(`${tn||""} +`)}};Kd.paths=[["-v"],["--version"]];Ye();Ye();qt();var Oh=class extends ut{constructor(){super(...arguments);this.commandName=ge.String();this.args=ge.Proxy()}async execute(){let r=await Ke.find(this.context.cwd,this.context.plugins),{project:o,locator:a}=await St.find(r,this.context.cwd);return await o.restoreInstallState(),await un.executePackageShellcode(a,this.commandName,this.args,{cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,project:o})}};Oh.paths=[["exec"]],Oh.usage=nt.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 single shell command","$0 exec echo Hello World"],["Execute a shell script",'$0 exec "tsc & babel src --out-dir lib"']]});Ye();qt();Za();var Mh=class extends ut{constructor(){super(...arguments);this.hash=ge.String({validator:aP(yy(),[iI(/^p[0-9a-f]{5}$/)])})}async execute(){let r=await Ke.find(this.context.cwd,this.context.plugins),{project:o}=await St.find(r,this.context.cwd);return await o.restoreInstallState({restoreResolutions:!1}),await o.applyLightResolution(),await G0t(this.hash,o,{stdout:this.context.stdout})}};Mh.paths=[["explain","peer-requirements"]],Mh.usage=nt.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. + + 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"]]});async function G0t(t,e,r){let o=e.peerWarnings.find(n=>n.hash===t);if(typeof o>"u")throw new Error(`No peerDependency requirements found for hash: "${t}"`);return(await Nt.start({configuration:e.configuration,stdout:r.stdout,includeFooter:!1,includePrefix:!1},async n=>{let u=de.mark(e.configuration);switch(o.type){case 2:{n.reportInfo(0,`We have a problem with ${de.pretty(e.configuration,o.requested,de.Type.IDENT)}, which is provided with version ${W.prettyReference(e.configuration,o.version)}.`),n.reportInfo(0,"It is needed by the following direct dependencies of workspaces in your project:"),n.reportSeparator();for(let h of o.requesters.values()){let C=e.storedPackages.get(h.locatorHash);if(!C)throw new Error("Assertion failed: Expected the package to be registered");let I=C?.peerDependencies.get(o.requested.identHash);if(!I)throw new Error("Assertion failed: Expected the package to list the peer dependency");let v=kr.satisfiesWithPrereleases(o.version,I.range)?u.Check:u.Cross;n.reportInfo(null,` ${v} ${W.prettyLocator(e.configuration,h)} (via ${W.prettyRange(e.configuration,I.range)})`)}let A=[...o.links.values()].filter(h=>!o.requesters.has(h.locatorHash));if(A.length>0){n.reportSeparator(),n.reportInfo(0,`However, those packages themselves have more dependencies listing ${W.prettyIdent(e.configuration,o.requested)} as peer dependency:`),n.reportSeparator();for(let h of A){let C=e.storedPackages.get(h.locatorHash);if(!C)throw new Error("Assertion failed: Expected the package to be registered");let I=C?.peerDependencies.get(o.requested.identHash);if(!I)throw new Error("Assertion failed: Expected the package to list the peer dependency");let v=kr.satisfiesWithPrereleases(o.version,I.range)?u.Check:u.Cross;n.reportInfo(null,` ${v} ${W.prettyLocator(e.configuration,h)} (via ${W.prettyRange(e.configuration,I.range)})`)}}let p=Array.from(o.links.values(),h=>{let C=e.storedPackages.get(h.locatorHash);if(typeof C>"u")throw new Error("Assertion failed: Expected the package to be registered");let I=C.peerDependencies.get(o.requested.identHash);if(typeof I>"u")throw new Error("Assertion failed: Expected the ident to be registered");return I.range});if(p.length>1){let h=kr.simplifyRanges(p);n.reportSeparator(),h===null?(n.reportInfo(0,"Unfortunately, put together, we found no single range that can satisfy all those peer requirements."),n.reportInfo(0,`Your best option may be to try to upgrade some dependencies with ${de.pretty(e.configuration,"yarn up",de.Type.CODE)}, or silence the warning via ${de.pretty(e.configuration,"logFilters",de.Type.CODE)}.`)):n.reportInfo(0,`Put together, the final range we computed is ${de.pretty(e.configuration,h,de.Type.RANGE)}`)}}break;default:n.reportInfo(0,`The ${de.pretty(e.configuration,"yarn explain peer-requirements",de.Type.CODE)} command doesn't support this warning type yet.`);break}})).exitCode()}Ye();qt();Za();Ye();Ye();Pt();qt();var $ge=$e(Jn()),Uh=class extends ut{constructor(){super(...arguments);this.useYarnPath=ge.Boolean("--yarn-path",{description:"Set the yarnPath setting even if the version can be accessed by Corepack"});this.onlyIfNeeded=ge.Boolean("--only-if-needed",!1,{description:"Only lock the Yarn version if it isn't already locked"});this.version=ge.String()}async execute(){let r=await Ke.find(this.context.cwd,this.context.plugins);if(this.onlyIfNeeded&&r.get("yarnPath")){let A=r.sources.get("yarnPath");if(!A)throw new Error("Assertion failed: Expected 'yarnPath' to have a source");let p=r.projectCwd??r.startingCwd;if(V.contains(p,A))return 0}let o=()=>{if(typeof tn>"u")throw new it("The --install flag can only be used without explicit version specifier from the Yarn CLI");return`file://${process.argv[1]}`},a,n=(A,p)=>({version:p,url:A.replace(/\{\}/g,p)});if(this.version==="self")a={url:o(),version:tn??"self"};else if(this.version==="latest"||this.version==="berry"||this.version==="stable")a=n("https://repo.yarnpkg.com/{}/packages/yarnpkg-cli/bin/yarn.js",await d2(r,"stable"));else if(this.version==="canary")a=n("https://repo.yarnpkg.com/{}/packages/yarnpkg-cli/bin/yarn.js",await d2(r,"canary"));else if(this.version==="classic")a={url:"https://classic.yarnpkg.com/latest.js",version:"classic"};else if(this.version.match(/^https?:/))a={url:this.version,version:"remote"};else if(this.version.match(/^\.{0,2}[\\/]/)||ue.isAbsolute(this.version))a={url:`file://${V.resolve(ue.toPortablePath(this.version))}`,version:"file"};else if(kr.satisfiesWithPrereleases(this.version,">=2.0.0"))a=n("https://repo.yarnpkg.com/{}/packages/yarnpkg-cli/bin/yarn.js",this.version);else if(kr.satisfiesWithPrereleases(this.version,"^0.x || ^1.x"))a=n("https://github.com/yarnpkg/yarn/releases/download/v{}/yarn-{}.js",this.version);else if(kr.validRange(this.version))a=n("https://repo.yarnpkg.com/{}/packages/yarnpkg-cli/bin/yarn.js",await Y0t(r,this.version));else throw new it(`Invalid version descriptor "${this.version}"`);return(await Nt.start({configuration:r,stdout:this.context.stdout,includeLogs:!this.context.quiet},async A=>{let p=async()=>{let h="file://";return a.url.startsWith(h)?(A.reportInfo(0,`Retrieving ${de.pretty(r,a.url,de.Type.PATH)}`),await oe.readFilePromise(a.url.slice(h.length))):(A.reportInfo(0,`Downloading ${de.pretty(r,a.url,de.Type.URL)}`),await rn.get(a.url,{configuration:r}))};await M8(r,a.version,p,{report:A,useYarnPath:this.useYarnPath})})).exitCode()}};Uh.paths=[["set","version"]],Uh.usage=nt.Usage({description:"lock the Yarn version used by the project",details:"\n This command will set a specific release of Yarn to be used by Corepack: https://nodejs.org/api/corepack.html.\n\n By default it only will set the `packageManager` field at the root of your project, but if the referenced release cannot be represented this way, if you already have `yarnPath` configured, or if you set the `--yarn-path` command line flag, then the release will also be downloaded from the Yarn GitHub repository, stored inside your project, and referenced via the `yarnPath` settings from your project `.yarnrc.yml` file.\n\n A very good use case for this command is to enforce the version of Yarn used by any single member of your team inside the same project - by doing this you ensure that you have control over 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 different behavior.\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"],["Use a release from a URL","$0 set version https://repo.yarnpkg.com/3.1.0/packages/yarnpkg-cli/bin/yarn.js"],["Download the version used to invoke the command","$0 set version self"]]});async function Y0t(t,e){let o=(await rn.get("https://repo.yarnpkg.com/tags",{configuration:t,jsonResponse:!0})).tags.filter(a=>kr.satisfiesWithPrereleases(a,e));if(o.length===0)throw new it(`No matching release found for range ${de.pretty(t,e,de.Type.RANGE)}.`);return o[0]}async function d2(t,e){let r=await rn.get("https://repo.yarnpkg.com/tags",{configuration:t,jsonResponse:!0});if(!r.latest[e])throw new it(`Tag ${de.pretty(t,e,de.Type.RANGE)} not found`);return r.latest[e]}async function M8(t,e,r,{report:o,useYarnPath:a}){let n,u=async()=>(typeof n>"u"&&(n=await r()),n);if(e===null){let te=await u();await oe.mktempPromise(async le=>{let he=V.join(le,"yarn.cjs");await oe.writeFilePromise(he,te);let{stdout:Ae}=await Ur.execvp(process.execPath,[ue.fromPortablePath(he),"--version"],{cwd:le,env:{...t.env,YARN_IGNORE_PATH:"1"}});if(e=Ae.trim(),!$ge.default.valid(e))throw new Error(`Invalid semver version. ${de.pretty(t,"yarn --version",de.Type.CODE)} returned: +${e}`)})}let A=t.projectCwd??t.startingCwd,p=V.resolve(A,".yarn/releases"),h=V.resolve(p,`yarn-${e}.cjs`),C=V.relative(t.startingCwd,h),I=je.isTaggedYarnVersion(e),v=t.get("yarnPath"),x=!I,E=x||!!v||!!a;if(a===!1){if(x)throw new Jt(0,"You explicitly opted out of yarnPath usage in your command line, but the version you specified cannot be represented by Corepack");E=!1}else!E&&!process.env.COREPACK_ROOT&&(o.reportWarning(0,`You don't seem to have ${de.applyHyperlink(t,"Corepack","https://nodejs.org/api/corepack.html")} enabled; we'll have to rely on ${de.applyHyperlink(t,"yarnPath","https://yarnpkg.com/configuration/yarnrc#yarnPath")} instead`),E=!0);if(E){let te=await u();o.reportInfo(0,`Saving the new release in ${de.pretty(t,C,"magenta")}`),await oe.removePromise(V.dirname(h)),await oe.mkdirPromise(V.dirname(h),{recursive:!0}),await oe.writeFilePromise(h,te,{mode:493}),await Ke.updateConfiguration(A,{yarnPath:V.relative(A,h)})}else await oe.removePromise(V.dirname(h)),await Ke.updateConfiguration(A,{yarnPath:Ke.deleteProperty});let R=await Ot.tryFind(A)||new Ot;R.packageManager=`yarn@${I?e:await d2(t,"stable")}`;let L={};R.exportTo(L);let U=V.join(A,Ot.fileName),z=`${JSON.stringify(L,null,R.indent)} +`;return await oe.changeFilePromise(U,z,{automaticNewlines:!0}),{bundleVersion:e}}function ede(t){return wr[fP(t)]}var W0t=/## (?YN[0-9]{4}) - `(?[A-Z_]+)`\n\n(?
(?:.(?!##))+)/gs;async function K0t(t){let r=`https://repo.yarnpkg.com/${je.isTaggedYarnVersion(tn)?tn:await d2(t,"canary")}/packages/gatsby/content/advanced/error-codes.md`,o=await rn.get(r,{configuration:t});return new Map(Array.from(o.toString().matchAll(W0t),({groups:a})=>{if(!a)throw new Error("Assertion failed: Expected the match to have been successful");let n=ede(a.code);if(a.name!==n)throw new Error(`Assertion failed: Invalid error code data: Expected "${a.name}" to be named "${n}"`);return[a.code,a.details]}))}var _h=class extends ut{constructor(){super(...arguments);this.code=ge.String({required:!1,validator:sI(yy(),[iI(/^YN[0-9]{4}$/)])});this.json=ge.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"})}async execute(){let r=await Ke.find(this.context.cwd,this.context.plugins);if(typeof this.code<"u"){let o=ede(this.code),a=de.pretty(r,o,de.Type.CODE),n=this.cli.format().header(`${this.code} - ${a}`),A=(await K0t(r)).get(this.code),p=typeof A<"u"?de.jsonOrPretty(this.json,r,de.tuple(de.Type.MARKDOWN,{text:A,format:this.cli.format(),paragraphs:!0})):`This error code does not have a description. + +You can help us by editing this page on GitHub \u{1F642}: +${de.jsonOrPretty(this.json,r,de.tuple(de.Type.URL,"https://github.com/yarnpkg/berry/blob/master/packages/gatsby/content/advanced/error-codes.md"))} +`;this.json?this.context.stdout.write(`${JSON.stringify({code:this.code,name:o,details:p})} +`):this.context.stdout.write(`${n} + +${p} +`)}else{let o={children:je.mapAndFilter(Object.entries(wr),([a,n])=>Number.isNaN(Number(a))?je.mapAndFilter.skip:{label:Wu(Number(a)),value:de.tuple(de.Type.CODE,n)})};$s.emitTree(o,{configuration:r,stdout:this.context.stdout,json:this.json})}}};_h.paths=[["explain"]],_h.usage=nt.Usage({description:"explain an error code",details:` + When the code argument is specified, this command prints its name and its details. + + When used without arguments, this command lists all error codes and their names. + `,examples:[["Explain an error code","$0 explain YN0006"],["List all error codes","$0 explain"]]});Ye();Pt();qt();var tde=$e(Zo()),Hh=class extends ut{constructor(){super(...arguments);this.all=ge.Boolean("-A,--all",!1,{description:"Print versions of a package from the whole project"});this.recursive=ge.Boolean("-R,--recursive",!1,{description:"Print information for all packages, including transitive dependencies"});this.extra=ge.Array("-X,--extra",[],{description:"An array of requests of extra data provided by plugins"});this.cache=ge.Boolean("--cache",!1,{description:"Print information about the cache entry of a package (path, size, checksum)"});this.dependents=ge.Boolean("--dependents",!1,{description:"Print all dependents for each matching package"});this.manifest=ge.Boolean("--manifest",!1,{description:"Print data obtained by looking at the package archive (license, homepage, ...)"});this.nameOnly=ge.Boolean("--name-only",!1,{description:"Only print the name for the matching packages"});this.virtuals=ge.Boolean("--virtuals",!1,{description:"Print each instance of the virtual packages"});this.json=ge.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"});this.patterns=ge.Rest()}async execute(){let r=await Ke.find(this.context.cwd,this.context.plugins),{project:o,workspace:a}=await St.find(r,this.context.cwd),n=await Lr.find(r);if(!a&&!this.all)throw new rr(o.cwd,this.context.cwd);await o.restoreInstallState();let u=new Set(this.extra);this.cache&&u.add("cache"),this.dependents&&u.add("dependents"),this.manifest&&u.add("manifest");let A=(le,{recursive:he})=>{let Ae=le.anchoredLocator.locatorHash,ye=new Map,ae=[Ae];for(;ae.length>0;){let Ie=ae.shift();if(ye.has(Ie))continue;let Fe=o.storedPackages.get(Ie);if(typeof Fe>"u")throw new Error("Assertion failed: Expected the package to be registered");if(ye.set(Ie,Fe),W.isVirtualLocator(Fe)&&ae.push(W.devirtualizeLocator(Fe).locatorHash),!(!he&&Ie!==Ae))for(let g of Fe.dependencies.values()){let Ee=o.storedResolutions.get(g.descriptorHash);if(typeof Ee>"u")throw new Error("Assertion failed: Expected the resolution to be registered");ae.push(Ee)}}return ye.values()},p=({recursive:le})=>{let he=new Map;for(let Ae of o.workspaces)for(let ye of A(Ae,{recursive:le}))he.set(ye.locatorHash,ye);return he.values()},h=({all:le,recursive:he})=>le&&he?o.storedPackages.values():le?p({recursive:he}):A(a,{recursive:he}),C=({all:le,recursive:he})=>{let Ae=h({all:le,recursive:he}),ye=this.patterns.map(Fe=>{let g=W.parseLocator(Fe),Ee=tde.default.makeRe(W.stringifyIdent(g)),De=W.isVirtualLocator(g),ce=De?W.devirtualizeLocator(g):g;return ne=>{let ee=W.stringifyIdent(ne);if(!Ee.test(ee))return!1;if(g.reference==="unknown")return!0;let we=W.isVirtualLocator(ne),xe=we?W.devirtualizeLocator(ne):ne;return!(De&&we&&g.reference!==ne.reference||ce.reference!==xe.reference)}}),ae=je.sortMap([...Ae],Fe=>W.stringifyLocator(Fe));return{selection:ae.filter(Fe=>ye.length===0||ye.some(g=>g(Fe))),sortedLookup:ae}},{selection:I,sortedLookup:v}=C({all:this.all,recursive:this.recursive});if(I.length===0)throw new it("No package matched your request");let x=new Map;if(this.dependents)for(let le of v)for(let he of le.dependencies.values()){let Ae=o.storedResolutions.get(he.descriptorHash);if(typeof Ae>"u")throw new Error("Assertion failed: Expected the resolution to be registered");je.getArrayWithDefault(x,Ae).push(le)}let E=new Map;for(let le of v){if(!W.isVirtualLocator(le))continue;let he=W.devirtualizeLocator(le);je.getArrayWithDefault(E,he.locatorHash).push(le)}let R={},L={children:R},U=r.makeFetcher(),z={project:o,fetcher:U,cache:n,checksums:o.storedChecksums,report:new Qi,cacheOptions:{skipIntegrityCheck:!0}},te=[async(le,he,Ae)=>{if(!he.has("manifest"))return;let ye=await U.fetch(le,z),ae;try{ae=await Ot.find(ye.prefixPath,{baseFs:ye.packageFs})}finally{ye.releaseFs?.()}Ae("Manifest",{License:de.tuple(de.Type.NO_HINT,ae.license),Homepage:de.tuple(de.Type.URL,ae.raw.homepage??null)})},async(le,he,Ae)=>{if(!he.has("cache"))return;let ye=o.storedChecksums.get(le.locatorHash)??null,ae=n.getLocatorPath(le,ye),Ie;if(ae!==null)try{Ie=await oe.statPromise(ae)}catch{}let Fe=typeof Ie<"u"?[Ie.size,de.Type.SIZE]:void 0;Ae("Cache",{Checksum:de.tuple(de.Type.NO_HINT,ye),Path:de.tuple(de.Type.PATH,ae),Size:Fe})}];for(let le of I){let he=W.isVirtualLocator(le);if(!this.virtuals&&he)continue;let Ae={},ye={value:[le,de.Type.LOCATOR],children:Ae};if(R[W.stringifyLocator(le)]=ye,this.nameOnly){delete ye.children;continue}let ae=E.get(le.locatorHash);typeof ae<"u"&&(Ae.Instances={label:"Instances",value:de.tuple(de.Type.NUMBER,ae.length)}),Ae.Version={label:"Version",value:de.tuple(de.Type.NO_HINT,le.version)};let Ie=(g,Ee)=>{let De={};if(Ae[g]=De,Array.isArray(Ee))De.children=Ee.map(ce=>({value:ce}));else{let ce={};De.children=ce;for(let[ne,ee]of Object.entries(Ee))typeof ee>"u"||(ce[ne]={label:ne,value:ee})}};if(!he){for(let g of te)await g(le,u,Ie);await r.triggerHook(g=>g.fetchPackageInfo,le,u,Ie)}le.bin.size>0&&!he&&Ie("Exported Binaries",[...le.bin.keys()].map(g=>de.tuple(de.Type.PATH,g)));let Fe=x.get(le.locatorHash);typeof Fe<"u"&&Fe.length>0&&Ie("Dependents",Fe.map(g=>de.tuple(de.Type.LOCATOR,g))),le.dependencies.size>0&&!he&&Ie("Dependencies",[...le.dependencies.values()].map(g=>{let Ee=o.storedResolutions.get(g.descriptorHash),De=typeof Ee<"u"?o.storedPackages.get(Ee)??null:null;return de.tuple(de.Type.RESOLUTION,{descriptor:g,locator:De})})),le.peerDependencies.size>0&&he&&Ie("Peer dependencies",[...le.peerDependencies.values()].map(g=>{let Ee=le.dependencies.get(g.identHash),De=typeof Ee<"u"?o.storedResolutions.get(Ee.descriptorHash)??null:null,ce=De!==null?o.storedPackages.get(De)??null:null;return de.tuple(de.Type.RESOLUTION,{descriptor:g,locator:ce})}))}$s.emitTree(L,{configuration:r,json:this.json,stdout:this.context.stdout,separators:this.nameOnly?0:2})}};Hh.paths=[["info"]],Hh.usage=nt.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"]]});Ye();Pt();Nl();var dk=$e($g());qt();var U8=$e(Jn());Za();var V0t=[{selector:t=>t===-1,name:"nodeLinker",value:"node-modules"},{selector:t=>t!==-1&&t<8,name:"enableGlobalCache",value:!1},{selector:t=>t!==-1&&t<8,name:"compressionLevel",value:"mixed"}],jh=class extends ut{constructor(){super(...arguments);this.json=ge.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"});this.immutable=ge.Boolean("--immutable",{description:"Abort with an error exit code if the lockfile was to be modified"});this.immutableCache=ge.Boolean("--immutable-cache",{description:"Abort with an error exit code if the cache folder was to be modified"});this.refreshLockfile=ge.Boolean("--refresh-lockfile",{description:"Refresh the package metadata stored in the lockfile"});this.checkCache=ge.Boolean("--check-cache",{description:"Always refetch the packages and ensure that their checksums are consistent"});this.checkResolutions=ge.Boolean("--check-resolutions",{description:"Validates that the package resolutions are coherent"});this.inlineBuilds=ge.Boolean("--inline-builds",{description:"Verbosely print the output of the build steps of dependencies"});this.mode=ge.String("--mode",{description:"Change what artifacts installs generate",validator:Ks(pl)});this.cacheFolder=ge.String("--cache-folder",{hidden:!0});this.frozenLockfile=ge.Boolean("--frozen-lockfile",{hidden:!0});this.ignoreEngines=ge.Boolean("--ignore-engines",{hidden:!0});this.nonInteractive=ge.Boolean("--non-interactive",{hidden:!0});this.preferOffline=ge.Boolean("--prefer-offline",{hidden:!0});this.production=ge.Boolean("--production",{hidden:!0});this.registry=ge.String("--registry",{hidden:!0});this.silent=ge.Boolean("--silent",{hidden:!0});this.networkTimeout=ge.String("--network-timeout",{hidden:!0})}async execute(){let r=await Ke.find(this.context.cwd,this.context.plugins);typeof this.inlineBuilds<"u"&&r.useWithSource("",{enableInlineBuilds:this.inlineBuilds},r.startingCwd,{overwrite:!0});let o=!!process.env.FUNCTION_TARGET||!!process.env.GOOGLE_RUNTIME,a=await TE({configuration:r,stdout:this.context.stdout},[{option:this.ignoreEngines,message:"The --ignore-engines option is deprecated; engine checking isn't a core feature anymore",error:!dk.default.VERCEL},{option:this.registry,message:"The --registry option is deprecated; prefer setting npmRegistryServer in your .yarnrc.yml file"},{option:this.preferOffline,message:"The --prefer-offline flag is deprecated; use the --cached flag with 'yarn add' instead",error:!dk.default.VERCEL},{option:this.production,message:"The --production option is deprecated on 'install'; use 'yarn workspaces focus' instead",error:!0},{option:this.nonInteractive,message:"The --non-interactive option is deprecated",error:!o},{option:this.frozenLockfile,message:"The --frozen-lockfile option is deprecated; use --immutable and/or --immutable-cache instead",callback:()=>this.immutable=this.frozenLockfile},{option:this.cacheFolder,message:"The cache-folder option has been deprecated; use rc settings instead",error:!dk.default.NETLIFY}]);if(a!==null)return a;let n=this.mode==="update-lockfile";if(n&&(this.immutable||this.immutableCache))throw new it(`${de.pretty(r,"--immutable",de.Type.CODE)} and ${de.pretty(r,"--immutable-cache",de.Type.CODE)} cannot be used with ${de.pretty(r,"--mode=update-lockfile",de.Type.CODE)}`);let u=(this.immutable??r.get("enableImmutableInstalls"))&&!n,A=this.immutableCache&&!n;if(r.projectCwd!==null){let E=await Nt.start({configuration:r,json:this.json,stdout:this.context.stdout,includeFooter:!1},async R=>{let L=!1;await X0t(r,u)&&(R.reportInfo(48,"Automatically removed core plugins that are now builtins \u{1F44D}"),L=!0),await J0t(r,u)&&(R.reportInfo(48,"Automatically fixed merge conflicts \u{1F44D}"),L=!0),L&&R.reportSeparator()});if(E.hasErrors())return E.exitCode()}if(r.projectCwd!==null){let E=await Nt.start({configuration:r,json:this.json,stdout:this.context.stdout,includeFooter:!1},async R=>{if(Ke.telemetry?.isNew)Ke.telemetry.commitTips(),R.reportInfo(65,"Yarn will periodically gather anonymous telemetry: https://yarnpkg.com/advanced/telemetry"),R.reportInfo(65,`Run ${de.pretty(r,"yarn config set --home enableTelemetry 0",de.Type.CODE)} to disable`),R.reportSeparator();else if(Ke.telemetry?.shouldShowTips){let L=await rn.get("https://repo.yarnpkg.com/tags",{configuration:r,jsonResponse:!0}).catch(()=>null);if(L!==null){let U=null;if(tn!==null){let te=U8.default.prerelease(tn)?"canary":"stable",le=L.latest[te];U8.default.gt(le,tn)&&(U=[te,le])}if(U)Ke.telemetry.commitTips(),R.reportInfo(88,`${de.applyStyle(r,`A new ${U[0]} version of Yarn is available:`,de.Style.BOLD)} ${W.prettyReference(r,U[1])}!`),R.reportInfo(88,`Upgrade now by running ${de.pretty(r,`yarn set version ${U[1]}`,de.Type.CODE)}`),R.reportSeparator();else{let z=Ke.telemetry.selectTip(L.tips);z&&(R.reportInfo(89,de.pretty(r,z.message,de.Type.MARKDOWN_INLINE)),z.url&&R.reportInfo(89,`Learn more at ${z.url}`),R.reportSeparator())}}}});if(E.hasErrors())return E.exitCode()}let{project:p,workspace:h}=await St.find(r,this.context.cwd),C=p.lockfileLastVersion;if(C!==null){let E=await Nt.start({configuration:r,json:this.json,stdout:this.context.stdout,includeFooter:!1},async R=>{let L={};for(let U of V0t)U.selector(C)&&typeof r.sources.get(U.name)>"u"&&(r.use("",{[U.name]:U.value},p.cwd,{overwrite:!0}),L[U.name]=U.value);Object.keys(L).length>0&&(await Ke.updateConfiguration(p.cwd,L),R.reportInfo(87,"Migrated your project to the latest Yarn version \u{1F680}"),R.reportSeparator())});if(E.hasErrors())return E.exitCode()}let I=await Lr.find(r,{immutable:A,check:this.checkCache});if(!h)throw new rr(p.cwd,this.context.cwd);await p.restoreInstallState({restoreResolutions:!1});let v=r.get("enableHardenedMode");(this.refreshLockfile??v)&&(p.lockfileNeedsRefresh=!0);let x=this.checkResolutions??v;return await p.installWithNewReport({json:this.json,stdout:this.context.stdout},{cache:I,immutable:u,checkResolutions:x,mode:this.mode})}};jh.paths=[["install"],nt.Default],jh.usage=nt.Usage({description:"install the project dependencies",details:"\n This command sets up your project if needed. The installation is split into four different steps that each have their own characteristics:\n\n - **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: ).\n\n - **Fetch:** Then we download all the dependencies if needed, and make sure that they're all stored within our cache (check the value of `cacheFolder` in `yarn config` to see where the cache files are stored).\n\n - **Link:** Then we send the dependency tree information to internal plugins tasked with writing them on the disk in some form (for example by generating the .pnp.cjs file you might know).\n\n - **Build:** Once the dependency tree has been written on the disk, the package manager will now be free to run the build scripts for all packages that might need it, in a topological order compatible with the way they depend on one another. See https://yarnpkg.com/advanced/lifecycle-scripts for detail.\n\n Note that running this command is not part of the recommended workflow. Yarn supports zero-installs, which means that as long as you store your cache and your .pnp.cjs file inside your repository, everything will work without requiring any install right after cloning your repository or switching branches.\n\n If the `--immutable` option is set (defaults to true on CI), Yarn will abort with an error exit code if the lockfile was to be modified (other paths can be added using the `immutablePatterns` configuration setting). For backward compatibility we offer an alias under the name of `--frozen-lockfile`, but it will be removed in a later release.\n\n If the `--immutable-cache` option is set, Yarn will abort with an error exit code if the cache folder was to be modified (either because files would be added, or because they'd be removed).\n\n If the `--refresh-lockfile` option is set, Yarn will keep the same resolution for the packages currently in the lockfile but will refresh their metadata. If used together with `--immutable`, it can validate that the lockfile information are consistent. This flag is enabled by default when Yarn detects it runs within a pull request context.\n\n If the `--check-cache` option is set, Yarn will always refetch the packages and will ensure that their checksum matches what's 1/ described in the lockfile 2/ inside the existing cache files (if present). This is recommended as part of your CI workflow if you're both following the Zero-Installs model and accepting PRs from third-parties, as they'd otherwise have the ability to alter the checked-in packages before submitting them.\n\n 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.\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 latter 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 ",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 z0t="<<<<<<<";async function J0t(t,e){if(!t.projectCwd)return!1;let r=V.join(t.projectCwd,dr.lockfile);if(!await oe.existsPromise(r)||!(await oe.readFilePromise(r,"utf8")).includes(z0t))return!1;if(e)throw new Jt(47,"Cannot autofix a lockfile when running an immutable install");let a=await Ur.execvp("git",["rev-parse","MERGE_HEAD","HEAD"],{cwd:t.projectCwd});if(a.code!==0&&(a=await Ur.execvp("git",["rev-parse","REBASE_HEAD","HEAD"],{cwd:t.projectCwd})),a.code!==0&&(a=await Ur.execvp("git",["rev-parse","CHERRY_PICK_HEAD","HEAD"],{cwd:t.projectCwd})),a.code!==0)throw new Jt(83,"Git returned an error when trying to find the commits pertaining to the conflict");let n=await Promise.all(a.stdout.trim().split(/\n/).map(async A=>{let p=await Ur.execvp("git",["show",`${A}:./${dr.lockfile}`],{cwd:t.projectCwd});if(p.code!==0)throw new Jt(83,`Git returned an error when trying to access the lockfile content in ${A}`);try{return Ki(p.stdout)}catch{throw new Jt(46,"A variant of the conflicting lockfile failed to parse")}}));n=n.filter(A=>!!A.__metadata);for(let A of n){if(A.__metadata.version<7)for(let p of Object.keys(A)){if(p==="__metadata")continue;let h=W.parseDescriptor(p,!0),C=t.normalizeDependency(h),I=W.stringifyDescriptor(C);I!==p&&(A[I]=A[p],delete A[p])}for(let p of Object.keys(A)){if(p==="__metadata")continue;let h=A[p].checksum;typeof h=="string"&&h.includes("/")||(A[p].checksum=`${A.__metadata.cacheKey}/${h}`)}}let u=Object.assign({},...n);u.__metadata.version=`${Math.min(...n.map(A=>parseInt(A.__metadata.version??0)))}`,u.__metadata.cacheKey="merged";for(let[A,p]of Object.entries(u))typeof p=="string"&&delete u[A];return await oe.changeFilePromise(r,Ba(u),{automaticNewlines:!0}),!0}async function X0t(t,e){if(!t.projectCwd)return!1;let r=[],o=V.join(t.projectCwd,".yarn/plugins/@yarnpkg");return await Ke.updateConfiguration(t.projectCwd,{plugins:n=>{if(!Array.isArray(n))return n;let u=n.filter(A=>{if(!A.path)return!0;let p=V.resolve(t.projectCwd,A.path),h=I1.has(A.spec)&&V.contains(o,p);return h&&r.push(p),!h});return u.length===0?Ke.deleteProperty:u.length===n.length?n:u}},{immutable:e})?(await Promise.all(r.map(async n=>{await oe.removePromise(n)})),!0):!1}Ye();Pt();qt();var qh=class extends ut{constructor(){super(...arguments);this.all=ge.Boolean("-A,--all",!1,{description:"Link all workspaces belonging to the target projects to the current one"});this.private=ge.Boolean("-p,--private",!1,{description:"Also link private workspaces belonging to the target projects to the current one"});this.relative=ge.Boolean("-r,--relative",!1,{description:"Link workspaces using relative paths instead of absolute paths"});this.destinations=ge.Rest()}async execute(){let r=await Ke.find(this.context.cwd,this.context.plugins),{project:o,workspace:a}=await St.find(r,this.context.cwd),n=await Lr.find(r);if(!a)throw new rr(o.cwd,this.context.cwd);await o.restoreInstallState({restoreResolutions:!1});let u=o.topLevelWorkspace,A=[];for(let p of this.destinations){let h=V.resolve(this.context.cwd,ue.toPortablePath(p)),C=await Ke.find(h,this.context.plugins,{useRc:!1,strict:!1}),{project:I,workspace:v}=await St.find(C,h);if(o.cwd===I.cwd)throw new it(`Invalid destination '${p}'; Can't link the project to itself`);if(!v)throw new rr(I.cwd,h);if(this.all){let x=!1;for(let E of I.workspaces)E.manifest.name&&(!E.manifest.private||this.private)&&(A.push(E),x=!0);if(!x)throw new it(`No workspace found to be linked in the target project: ${p}`)}else{if(!v.manifest.name)throw new it(`The target workspace at '${p}' doesn't have a name and thus cannot be linked`);if(v.manifest.private&&!this.private)throw new it(`The target workspace at '${p}' is marked private - use the --private flag to link it anyway`);A.push(v)}}for(let p of A){let h=W.stringifyIdent(p.anchoredLocator),C=this.relative?V.relative(o.cwd,p.cwd):p.cwd;u.manifest.resolutions.push({pattern:{descriptor:{fullName:h}},reference:`portal:${C}`})}return await o.installWithNewReport({stdout:this.context.stdout},{cache:n})}};qh.paths=[["link"]],qh.usage=nt.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 one or more remote workspaces for use in the current project","$0 link ~/ts-loader ~/jest"],["Register all workspaces from a remote project for use in the current project","$0 link ~/jest --all"]]});qt();var Gh=class extends ut{constructor(){super(...arguments);this.args=ge.Proxy()}async execute(){return this.cli.run(["exec","node",...this.args])}};Gh.paths=[["node"]],Gh.usage=nt.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"]]});Ye();qt();var Yh=class extends ut{constructor(){super(...arguments);this.json=ge.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"})}async execute(){let r=await Ke.find(this.context.cwd,this.context.plugins),o=await Ke.findRcFiles(this.context.cwd);return(await Nt.start({configuration:r,json:this.json,stdout:this.context.stdout},async n=>{for(let u of o)if(!!u.data?.plugins)for(let A of u.data.plugins){if(!A.checksum||!A.spec.match(/^https?:/))continue;let p=await rn.get(A.spec,{configuration:r}),h=wn.makeHash(p);if(A.checksum===h)continue;let C=de.pretty(r,A.path,de.Type.PATH),I=de.pretty(r,A.spec,de.Type.URL),v=`${C} is different from the file provided by ${I}`;n.reportJson({...A,newChecksum:h}),n.reportError(0,v)}})).exitCode()}};Yh.paths=[["plugin","check"]],Yh.usage=nt.Usage({category:"Plugin-related commands",description:"find all third-party plugins that differ from their own spec",details:` + Check only the plugins from https. + + If this command detects any plugin differences in the CI environment, it will throw an error. + `,examples:[["find all third-party plugins that differ from their own spec","$0 plugin check"]]});Ye();Ye();Pt();qt();var ade=Be("os");Ye();Pt();qt();var rde=Be("os");Ye();Nl();qt();var Z0t="https://raw.githubusercontent.com/yarnpkg/berry/master/plugins.yml";async function Vd(t,e){let r=await rn.get(Z0t,{configuration:t}),o=Ki(r.toString());return Object.fromEntries(Object.entries(o).filter(([a,n])=>!e||kr.satisfiesWithPrereleases(e,n.range??"<4.0.0-rc.1")))}var Wh=class extends ut{constructor(){super(...arguments);this.json=ge.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"})}async execute(){let r=await Ke.find(this.context.cwd,this.context.plugins);return(await Nt.start({configuration:r,json:this.json,stdout:this.context.stdout},async a=>{let n=await Vd(r,tn);for(let[u,{experimental:A,...p}]of Object.entries(n)){let h=u;A&&(h+=" [experimental]"),a.reportJson({name:u,experimental:A,...p}),a.reportInfo(null,h)}})).exitCode()}};Wh.paths=[["plugin","list"]],Wh.usage=nt.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 $0t=/^[0-9]+$/;function nde(t){return $0t.test(t)?`pull/${t}/head`:t}var egt=({repository:t,branch:e},r)=>[["git","init",ue.fromPortablePath(r)],["git","remote","add","origin",t],["git","fetch","origin","--depth=1",nde(e)],["git","reset","--hard","FETCH_HEAD"]],tgt=({branch:t})=>[["git","fetch","origin","--depth=1",nde(t),"--force"],["git","reset","--hard","FETCH_HEAD"],["git","clean","-dfx","-e","packages/yarnpkg-cli/bundles"]],rgt=({plugins:t,noMinify:e},r,o)=>[["yarn","build:cli",...new Array().concat(...t.map(a=>["--plugin",V.resolve(o,a)])),...e?["--no-minify"]:[],"|"],["mv","packages/yarnpkg-cli/bundles/yarn.js",ue.fromPortablePath(r),"|"]],Kh=class extends ut{constructor(){super(...arguments);this.installPath=ge.String("--path",{description:"The path where the repository should be cloned to"});this.repository=ge.String("--repository","https://github.com/yarnpkg/berry.git",{description:"The repository that should be cloned"});this.branch=ge.String("--branch","master",{description:"The branch of the repository that should be cloned"});this.plugins=ge.Array("--plugin",[],{description:"An array of additional plugins that should be included in the bundle"});this.dryRun=ge.Boolean("-n,--dry-run",!1,{description:"If set, the bundle will be built but not added to the project"});this.noMinify=ge.Boolean("--no-minify",!1,{description:"Build a bundle for development (debugging) - non-minified and non-mangled"});this.force=ge.Boolean("-f,--force",!1,{description:"Always clone the repository instead of trying to fetch the latest commits"});this.skipPlugins=ge.Boolean("--skip-plugins",!1,{description:"Skip updating the contrib plugins"})}async execute(){let r=await Ke.find(this.context.cwd,this.context.plugins),{project:o}=await St.find(r,this.context.cwd),a=typeof this.installPath<"u"?V.resolve(this.context.cwd,ue.toPortablePath(this.installPath)):V.resolve(ue.toPortablePath((0,rde.tmpdir)()),"yarnpkg-sources",wn.makeHash(this.repository).slice(0,6));return(await Nt.start({configuration:r,stdout:this.context.stdout},async u=>{await _8(this,{configuration:r,report:u,target:a}),u.reportSeparator(),u.reportInfo(0,"Building a fresh bundle"),u.reportSeparator();let A=await Ur.execvp("git",["rev-parse","--short","HEAD"],{cwd:a,strict:!0}),p=V.join(a,`packages/yarnpkg-cli/bundles/yarn-${A.stdout.trim()}.js`);oe.existsSync(p)||(await m2(rgt(this,p,a),{configuration:r,context:this.context,target:a}),u.reportSeparator());let h=await oe.readFilePromise(p);if(!this.dryRun){let{bundleVersion:C}=await M8(r,null,async()=>h,{report:u});this.skipPlugins||await ngt(this,C,{project:o,report:u,target:a})}})).exitCode()}};Kh.paths=[["set","version","from","sources"]],Kh.usage=nt.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"]]});async function m2(t,{configuration:e,context:r,target:o}){for(let[a,...n]of t){let u=n[n.length-1]==="|";if(u&&n.pop(),u)await Ur.pipevp(a,n,{cwd:o,stdin:r.stdin,stdout:r.stdout,stderr:r.stderr,strict:!0});else{r.stdout.write(`${de.pretty(e,` $ ${[a,...n].join(" ")}`,"grey")} +`);try{await Ur.execvp(a,n,{cwd:o,strict:!0})}catch(A){throw r.stdout.write(A.stdout||A.stack),A}}}}async function _8(t,{configuration:e,report:r,target:o}){let a=!1;if(!t.force&&oe.existsSync(V.join(o,".git"))){r.reportInfo(0,"Fetching the latest commits"),r.reportSeparator();try{await m2(tgt(t),{configuration:e,context:t.context,target:o}),a=!0}catch{r.reportSeparator(),r.reportWarning(0,"Repository update failed; we'll try to regenerate it")}}a||(r.reportInfo(0,"Cloning the remote repository"),r.reportSeparator(),await oe.removePromise(o),await oe.mkdirPromise(o,{recursive:!0}),await m2(egt(t,o),{configuration:e,context:t.context,target:o}))}async function ngt(t,e,{project:r,report:o,target:a}){let n=await Vd(r.configuration,e),u=new Set(Object.keys(n));for(let A of r.configuration.plugins.keys())!u.has(A)||await H8(A,t,{project:r,report:o,target:a})}Ye();Ye();Pt();qt();var ide=$e(Jn()),sde=Be("url"),ode=Be("vm");var Vh=class extends ut{constructor(){super(...arguments);this.name=ge.String();this.checksum=ge.Boolean("--checksum",!0,{description:"Whether to care if this plugin is modified"})}async execute(){let r=await Ke.find(this.context.cwd,this.context.plugins);return(await Nt.start({configuration:r,stdout:this.context.stdout},async a=>{let{project:n}=await St.find(r,this.context.cwd),u,A;if(this.name.match(/^\.{0,2}[\\/]/)||ue.isAbsolute(this.name)){let p=V.resolve(this.context.cwd,ue.toPortablePath(this.name));a.reportInfo(0,`Reading ${de.pretty(r,p,de.Type.PATH)}`),u=V.relative(n.cwd,p),A=await oe.readFilePromise(p)}else{let p;if(this.name.match(/^https?:/)){try{new sde.URL(this.name)}catch{throw new Jt(52,`Plugin specifier "${this.name}" is neither a plugin name nor a valid url`)}u=this.name,p=this.name}else{let h=W.parseLocator(this.name.replace(/^((@yarnpkg\/)?plugin-)?/,"@yarnpkg/plugin-"));if(h.reference!=="unknown"&&!ide.default.valid(h.reference))throw new Jt(0,"Official plugins only accept strict version references. Use an explicit URL if you wish to download them from another location.");let C=W.stringifyIdent(h),I=await Vd(r,tn);if(!Object.hasOwn(I,C)){let v=`Couldn't find a plugin named ${W.prettyIdent(r,h)} on the remote registry. +`;throw r.plugins.has(C)?v+=`A plugin named ${W.prettyIdent(r,h)} is already installed; possibly attempting to import a built-in plugin.`:v+=`Note that only the plugins referenced on our website (${de.pretty(r,"https://github.com/yarnpkg/berry/blob/master/plugins.yml",de.Type.URL)}) can be referenced by their name; any other plugin will have to be referenced through its public url (for example ${de.pretty(r,"https://github.com/yarnpkg/berry/raw/master/packages/plugin-typescript/bin/%40yarnpkg/plugin-typescript.js",de.Type.URL)}).`,new Jt(51,v)}u=C,p=I[C].url,h.reference!=="unknown"?p=p.replace(/\/master\//,`/${C}/${h.reference}/`):tn!==null&&(p=p.replace(/\/master\//,`/@yarnpkg/cli/${tn}/`))}a.reportInfo(0,`Downloading ${de.pretty(r,p,"green")}`),A=await rn.get(p,{configuration:r})}await j8(u,A,{checksum:this.checksum,project:n,report:a})})).exitCode()}};Vh.paths=[["plugin","import"]],Vh.usage=nt.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: + + - If the plugin is stored within the Yarn repository, it can be referenced by name. + - Third-party plugins can be referenced directly through their public urls. + - Local plugins can be referenced by their path on the disk. + + If the \`--no-checksum\` option is set, Yarn will no longer care if the plugin is modified. + + 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"]]});async function j8(t,e,{checksum:r=!0,project:o,report:a}){let{configuration:n}=o,u={},A={exports:u};(0,ode.runInNewContext)(e.toString(),{module:A,exports:u});let h=`.yarn/plugins/${A.exports.name}.cjs`,C=V.resolve(o.cwd,h);a.reportInfo(0,`Saving the new plugin in ${de.pretty(n,h,"magenta")}`),await oe.mkdirPromise(V.dirname(C),{recursive:!0}),await oe.writeFilePromise(C,e);let I={path:h,spec:t};r&&(I.checksum=wn.makeHash(e)),await Ke.addPlugin(o.cwd,[I])}var igt=({pluginName:t,noMinify:e},r)=>[["yarn",`build:${t}`,...e?["--no-minify"]:[],"|"]],zh=class extends ut{constructor(){super(...arguments);this.installPath=ge.String("--path",{description:"The path where the repository should be cloned to"});this.repository=ge.String("--repository","https://github.com/yarnpkg/berry.git",{description:"The repository that should be cloned"});this.branch=ge.String("--branch","master",{description:"The branch of the repository that should be cloned"});this.noMinify=ge.Boolean("--no-minify",!1,{description:"Build a plugin for development (debugging) - non-minified and non-mangled"});this.force=ge.Boolean("-f,--force",!1,{description:"Always clone the repository instead of trying to fetch the latest commits"});this.name=ge.String()}async execute(){let r=await Ke.find(this.context.cwd,this.context.plugins),o=typeof this.installPath<"u"?V.resolve(this.context.cwd,ue.toPortablePath(this.installPath)):V.resolve(ue.toPortablePath((0,ade.tmpdir)()),"yarnpkg-sources",wn.makeHash(this.repository).slice(0,6));return(await Nt.start({configuration:r,stdout:this.context.stdout},async n=>{let{project:u}=await St.find(r,this.context.cwd),A=W.parseIdent(this.name.replace(/^((@yarnpkg\/)?plugin-)?/,"@yarnpkg/plugin-")),p=W.stringifyIdent(A),h=await Vd(r,tn);if(!Object.hasOwn(h,p))throw new Jt(51,`Couldn't find a plugin named "${p}" 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=p;await _8(this,{configuration:r,report:n,target:o}),await H8(C,this,{project:u,report:n,target:o})})).exitCode()}};zh.paths=[["plugin","import","from","sources"]],zh.usage=nt.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"]]});async function H8(t,{context:e,noMinify:r},{project:o,report:a,target:n}){let u=t.replace(/@yarnpkg\//,""),{configuration:A}=o;a.reportSeparator(),a.reportInfo(0,`Building a fresh ${u}`),a.reportSeparator(),await m2(igt({pluginName:u,noMinify:r},n),{configuration:A,context:e,target:n}),a.reportSeparator();let p=V.resolve(n,`packages/${u}/bundles/${t}.js`),h=await oe.readFilePromise(p);await j8(t,h,{project:o,report:a})}Ye();Pt();qt();var Jh=class extends ut{constructor(){super(...arguments);this.name=ge.String()}async execute(){let r=await Ke.find(this.context.cwd,this.context.plugins),{project:o}=await St.find(r,this.context.cwd);return(await Nt.start({configuration:r,stdout:this.context.stdout},async n=>{let u=this.name,A=W.parseIdent(u);if(!r.plugins.has(u))throw new it(`${W.prettyIdent(r,A)} isn't referenced by the current configuration`);let p=`.yarn/plugins/${u}.cjs`,h=V.resolve(o.cwd,p);oe.existsSync(h)&&(n.reportInfo(0,`Removing ${de.pretty(r,p,de.Type.PATH)}...`),await oe.removePromise(h)),n.reportInfo(0,"Updating the configuration..."),await Ke.updateConfiguration(o.cwd,{plugins:C=>{if(!Array.isArray(C))return C;let I=C.filter(v=>v.path!==p);return I.length===0?Ke.deleteProperty:I.length===C.length?C:I}})})).exitCode()}};Jh.paths=[["plugin","remove"]],Jh.usage=nt.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"]]});Ye();qt();var Xh=class extends ut{constructor(){super(...arguments);this.json=ge.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"})}async execute(){let r=await Ke.find(this.context.cwd,this.context.plugins);return(await Nt.start({configuration:r,json:this.json,stdout:this.context.stdout},async a=>{for(let n of r.plugins.keys()){let u=this.context.plugins.plugins.has(n),A=n;u&&(A+=" [builtin]"),a.reportJson({name:n,builtin:u}),a.reportInfo(null,`${A}`)}})).exitCode()}};Xh.paths=[["plugin","runtime"]],Xh.usage=nt.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"]]});Ye();Ye();qt();var Zh=class extends ut{constructor(){super(...arguments);this.idents=ge.Rest()}async execute(){let r=await Ke.find(this.context.cwd,this.context.plugins),{project:o,workspace:a}=await St.find(r,this.context.cwd),n=await Lr.find(r);if(!a)throw new rr(o.cwd,this.context.cwd);let u=new Set;for(let A of this.idents)u.add(W.parseIdent(A).identHash);if(await o.restoreInstallState({restoreResolutions:!1}),await o.resolveEverything({cache:n,report:new Qi}),u.size>0)for(let A of o.storedPackages.values())u.has(A.identHash)&&(o.storedBuildState.delete(A.locatorHash),o.skippedBuilds.delete(A.locatorHash));else o.storedBuildState.clear(),o.skippedBuilds.clear();return await o.installWithNewReport({stdout:this.context.stdout,quiet:this.context.quiet},{cache:n})}};Zh.paths=[["rebuild"]],Zh.usage=nt.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"]]});Ye();Ye();Ye();qt();var q8=$e(Zo());Za();var $h=class extends ut{constructor(){super(...arguments);this.all=ge.Boolean("-A,--all",!1,{description:"Apply the operation to all workspaces from the current project"});this.mode=ge.String("--mode",{description:"Change what artifacts installs generate",validator:Ks(pl)});this.patterns=ge.Rest()}async execute(){let r=await Ke.find(this.context.cwd,this.context.plugins),{project:o,workspace:a}=await St.find(r,this.context.cwd),n=await Lr.find(r);if(!a)throw new rr(o.cwd,this.context.cwd);await o.restoreInstallState({restoreResolutions:!1});let u=this.all?o.workspaces:[a],A=["dependencies","devDependencies","peerDependencies"],p=[],h=!1,C=[];for(let E of this.patterns){let R=!1,L=W.parseIdent(E);for(let U of u){let z=[...U.manifest.peerDependenciesMeta.keys()];for(let te of(0,q8.default)(z,E))U.manifest.peerDependenciesMeta.delete(te),h=!0,R=!0;for(let te of A){let le=U.manifest.getForScope(te),he=[...le.values()].map(Ae=>W.stringifyIdent(Ae));for(let Ae of(0,q8.default)(he,W.stringifyIdent(L))){let{identHash:ye}=W.parseIdent(Ae),ae=le.get(ye);if(typeof ae>"u")throw new Error("Assertion failed: Expected the descriptor to be registered");U.manifest[te].delete(ye),C.push([U,te,ae]),h=!0,R=!0}}}R||p.push(E)}let I=p.length>1?"Patterns":"Pattern",v=p.length>1?"don't":"doesn't",x=this.all?"any":"this";if(p.length>0)throw new it(`${I} ${de.prettyList(r,p,de.Type.CODE)} ${v} match any packages referenced by ${x} workspace`);return h?(await r.triggerMultipleHooks(E=>E.afterWorkspaceDependencyRemoval,C),await o.installWithNewReport({stdout:this.context.stdout},{cache:n,mode:this.mode})):0}};$h.paths=[["remove"]],$h.usage=nt.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 latter 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}'"]]});Ye();Ye();var lde=Be("util"),zd=class extends ut{async execute(){let e=await Ke.find(this.context.cwd,this.context.plugins),{project:r,workspace:o}=await St.find(e,this.context.cwd);if(!o)throw new rr(r.cwd,this.context.cwd);return(await Nt.start({configuration:e,stdout:this.context.stdout},async n=>{let u=o.manifest.scripts,A=je.sortMap(u.keys(),C=>C),p={breakLength:1/0,colors:e.get("enableColors"),maxArrayLength:2},h=A.reduce((C,I)=>Math.max(C,I.length),0);for(let[C,I]of u.entries())n.reportInfo(null,`${C.padEnd(h," ")} ${(0,lde.inspect)(I,p)}`)})).exitCode()}};zd.paths=[["run"]];Ye();Ye();qt();var e0=class extends ut{constructor(){super(...arguments);this.inspect=ge.String("--inspect",!1,{tolerateBoolean:!0,description:"Forwarded to the underlying Node process when executing a binary"});this.inspectBrk=ge.String("--inspect-brk",!1,{tolerateBoolean:!0,description:"Forwarded to the underlying Node process when executing a binary"});this.topLevel=ge.Boolean("-T,--top-level",!1,{description:"Check the root workspace for scripts and/or binaries instead of the current one"});this.binariesOnly=ge.Boolean("-B,--binaries-only",!1,{description:"Ignore any user defined scripts and only check for binaries"});this.require=ge.String("--require",{description:"Forwarded to the underlying Node process when executing a binary"});this.silent=ge.Boolean("--silent",{hidden:!0});this.scriptName=ge.String();this.args=ge.Proxy()}async execute(){let r=await Ke.find(this.context.cwd,this.context.plugins),{project:o,workspace:a,locator:n}=await St.find(r,this.context.cwd);await o.restoreInstallState();let u=this.topLevel?o.topLevelWorkspace.anchoredLocator:n;if(!this.binariesOnly&&await un.hasPackageScript(u,this.scriptName,{project:o}))return await un.executePackageScript(u,this.scriptName,this.args,{project:o,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr});let A=await un.getPackageAccessibleBinaries(u,{project:o});if(A.get(this.scriptName)){let h=[];return this.inspect&&(typeof this.inspect=="string"?h.push(`--inspect=${this.inspect}`):h.push("--inspect")),this.inspectBrk&&(typeof this.inspectBrk=="string"?h.push(`--inspect-brk=${this.inspectBrk}`):h.push("--inspect-brk")),this.require&&h.push(`--require=${this.require}`),await un.executePackageAccessibleBinary(u,this.scriptName,this.args,{cwd:this.context.cwd,project:o,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,nodeArgs:h,packageAccessibleBinaries:A})}if(!this.topLevel&&!this.binariesOnly&&a&&this.scriptName.includes(":")){let C=(await Promise.all(o.workspaces.map(async I=>I.manifest.scripts.has(this.scriptName)?I:null))).filter(I=>I!==null);if(C.length===1)return await un.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 it(`Couldn't find a script name "${this.scriptName}" in the top-level (used by ${W.prettyLocator(r,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 it(`Couldn't find a script name "${this.scriptName}" in the top-level (used by ${W.prettyLocator(r,n)}).`);{if(this.scriptName==="global")throw new it("The 'yarn global' commands have been removed in 2.x - consider using 'yarn dlx' or a third-party plugin instead");let h=[this.scriptName].concat(this.args);for(let[C,I]of cC)for(let v of I)if(h.length>=v.length&&JSON.stringify(h.slice(0,v.length))===JSON.stringify(v))throw new it(`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 it(`Couldn't find a script named "${this.scriptName}".`)}}};e0.paths=[["run"]],e0.usage=nt.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. + + - Otherwise, if one of the local workspace's dependencies exposes a binary with a matching name, this binary will get executed. + + - 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"]]});Ye();Ye();qt();var t0=class extends ut{constructor(){super(...arguments);this.save=ge.Boolean("-s,--save",!1,{description:"Persist the resolution inside the top-level manifest"});this.descriptor=ge.String();this.resolution=ge.String()}async execute(){let r=await Ke.find(this.context.cwd,this.context.plugins),{project:o,workspace:a}=await St.find(r,this.context.cwd),n=await Lr.find(r);if(await o.restoreInstallState({restoreResolutions:!1}),!a)throw new rr(o.cwd,this.context.cwd);let u=W.parseDescriptor(this.descriptor,!0),A=W.makeDescriptor(u,this.resolution);return o.storedDescriptors.set(u.descriptorHash,u),o.storedDescriptors.set(A.descriptorHash,A),o.resolutionAliases.set(u.descriptorHash,A.descriptorHash),await o.installWithNewReport({stdout:this.context.stdout},{cache:n})}};t0.paths=[["set","resolution"]],t0.usage=nt.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"]]});Ye();Pt();qt();var cde=$e(Zo()),r0=class extends ut{constructor(){super(...arguments);this.all=ge.Boolean("-A,--all",!1,{description:"Unlink all workspaces belonging to the target project from the current one"});this.leadingArguments=ge.Rest()}async execute(){let r=await Ke.find(this.context.cwd,this.context.plugins),{project:o,workspace:a}=await St.find(r,this.context.cwd),n=await Lr.find(r);if(!a)throw new rr(o.cwd,this.context.cwd);let u=o.topLevelWorkspace,A=new Set;if(this.leadingArguments.length===0&&this.all)for(let{pattern:p,reference:h}of u.manifest.resolutions)h.startsWith("portal:")&&A.add(p.descriptor.fullName);if(this.leadingArguments.length>0)for(let p of this.leadingArguments){let h=V.resolve(this.context.cwd,ue.toPortablePath(p));if(je.isPathLike(p)){let C=await Ke.find(h,this.context.plugins,{useRc:!1,strict:!1}),{project:I,workspace:v}=await St.find(C,h);if(!v)throw new rr(I.cwd,h);if(this.all){for(let x of I.workspaces)x.manifest.name&&A.add(W.stringifyIdent(x.anchoredLocator));if(A.size===0)throw new it("No workspace found to be unlinked in the target project")}else{if(!v.manifest.name)throw new it("The target workspace doesn't have a name and thus cannot be unlinked");A.add(W.stringifyIdent(v.anchoredLocator))}}else{let C=[...u.manifest.resolutions.map(({pattern:I})=>I.descriptor.fullName)];for(let I of(0,cde.default)(C,p))A.add(I)}}return u.manifest.resolutions=u.manifest.resolutions.filter(({pattern:p})=>!A.has(p.descriptor.fullName)),await o.installWithNewReport({stdout:this.context.stdout,quiet:this.context.quiet},{cache:n})}};r0.paths=[["unlink"]],r0.usage=nt.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}'"]]});Ye();Ye();Ye();qt();var ude=$e(u2()),G8=$e(Zo());Za();var Kf=class extends ut{constructor(){super(...arguments);this.interactive=ge.Boolean("-i,--interactive",{description:"Offer various choices, depending on the detected upgrade paths"});this.fixed=ge.Boolean("-F,--fixed",!1,{description:"Store dependency tags as-is instead of resolving them"});this.exact=ge.Boolean("-E,--exact",!1,{description:"Don't use any semver modifier on the resolved range"});this.tilde=ge.Boolean("-T,--tilde",!1,{description:"Use the `~` semver modifier on the resolved range"});this.caret=ge.Boolean("-C,--caret",!1,{description:"Use the `^` semver modifier on the resolved range"});this.recursive=ge.Boolean("-R,--recursive",!1,{description:"Resolve again ALL resolutions for those packages"});this.mode=ge.String("--mode",{description:"Change what artifacts installs generate",validator:Ks(pl)});this.patterns=ge.Rest()}async execute(){return this.recursive?await this.executeUpRecursive():await this.executeUpClassic()}async executeUpRecursive(){let r=await Ke.find(this.context.cwd,this.context.plugins),{project:o,workspace:a}=await St.find(r,this.context.cwd),n=await Lr.find(r);if(!a)throw new rr(o.cwd,this.context.cwd);await o.restoreInstallState({restoreResolutions:!1});let u=[...o.storedDescriptors.values()],A=u.map(C=>W.stringifyIdent(C)),p=new Set;for(let C of this.patterns){if(W.parseDescriptor(C).range!=="unknown")throw new it("Ranges aren't allowed when using --recursive");for(let I of(0,G8.default)(A,C)){let v=W.parseIdent(I);p.add(v.identHash)}}let h=u.filter(C=>p.has(C.identHash));for(let C of h)o.storedDescriptors.delete(C.descriptorHash),o.storedResolutions.delete(C.descriptorHash);return await o.installWithNewReport({stdout:this.context.stdout},{cache:n,mode:this.mode})}async executeUpClassic(){let r=await Ke.find(this.context.cwd,this.context.plugins),{project:o,workspace:a}=await St.find(r,this.context.cwd),n=await Lr.find(r);if(!a)throw new rr(o.cwd,this.context.cwd);await o.restoreInstallState({restoreResolutions:!1});let u=this.fixed,A=this.interactive??r.get("preferInteractive"),p=f2(this,o),h=A?["keep","reuse","project","latest"]:["project","latest"],C=[],I=[];for(let L of this.patterns){let U=!1,z=W.parseDescriptor(L),te=W.stringifyIdent(z);for(let le of o.workspaces)for(let he of["dependencies","devDependencies"]){let ye=[...le.manifest.getForScope(he).values()].map(Ie=>W.stringifyIdent(Ie)),ae=te==="*"?ye:(0,G8.default)(ye,te);for(let Ie of ae){let Fe=W.parseIdent(Ie),g=le.manifest[he].get(Fe.identHash);if(typeof g>"u")throw new Error("Assertion failed: Expected the descriptor to be registered");let Ee=W.makeDescriptor(Fe,z.range);C.push(Promise.resolve().then(async()=>[le,he,g,await p2(Ee,{project:o,workspace:le,cache:n,target:he,fixed:u,modifier:p,strategies:h})])),U=!0}}U||I.push(L)}if(I.length>1)throw new it(`Patterns ${de.prettyList(r,I,de.Type.CODE)} don't match any packages referenced by any workspace`);if(I.length>0)throw new it(`Pattern ${de.prettyList(r,I,de.Type.CODE)} doesn't match any packages referenced by any workspace`);let v=await Promise.all(C),x=await AA.start({configuration:r,stdout:this.context.stdout,suggestInstall:!1},async L=>{for(let[,,U,{suggestions:z,rejections:te}]of v){let le=z.filter(he=>he.descriptor!==null);if(le.length===0){let[he]=te;if(typeof he>"u")throw new Error("Assertion failed: Expected an error to have been set");let Ae=this.cli.error(he);o.configuration.get("enableNetwork")?L.reportError(27,`${W.prettyDescriptor(r,U)} can't be resolved to a satisfying range + +${Ae}`):L.reportError(27,`${W.prettyDescriptor(r,U)} can't be resolved to a satisfying range (note: network resolution has been disabled) + +${Ae}`)}else le.length>1&&!A&&L.reportError(27,`${W.prettyDescriptor(r,U)} has multiple possible upgrade strategies; use -i to disambiguate manually`)}});if(x.hasErrors())return x.exitCode();let E=!1,R=[];for(let[L,U,,{suggestions:z}]of v){let te,le=z.filter(ae=>ae.descriptor!==null),he=le[0].descriptor,Ae=le.every(ae=>W.areDescriptorsEqual(ae.descriptor,he));le.length===1||Ae?te=he:(E=!0,{answer:te}=await(0,ude.prompt)({type:"select",name:"answer",message:`Which range do you want to use in ${W.prettyWorkspace(r,L)} \u276F ${U}?`,choices:z.map(({descriptor:ae,name:Ie,reason:Fe})=>ae?{name:Ie,hint:Fe,descriptor:ae}:{name:Ie,hint:Fe,disabled:!0}),onCancel:()=>process.exit(130),result(ae){return this.find(ae,"descriptor")},stdin:this.context.stdin,stdout:this.context.stdout}));let ye=L.manifest[U].get(te.identHash);if(typeof ye>"u")throw new Error("Assertion failed: This descriptor should have a matching entry");if(ye.descriptorHash!==te.descriptorHash)L.manifest[U].set(te.identHash,te),R.push([L,U,ye,te]);else{let ae=r.makeResolver(),Ie={project:o,resolver:ae},Fe=r.normalizeDependency(ye),g=ae.bindDescriptor(Fe,L.anchoredLocator,Ie);o.forgetResolution(g)}}return await r.triggerMultipleHooks(L=>L.afterWorkspaceDependencyReplacement,R),E&&this.context.stdout.write(` +`),await o.installWithNewReport({stdout:this.context.stdout},{cache:n,mode:this.mode})}};Kf.paths=[["up"]],Kf.usage=nt.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 latter 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'"]]}),Kf.schema=[aI("recursive",Gu.Forbids,["interactive","exact","tilde","caret"],{ignore:[void 0,!1]})];Ye();Ye();Ye();qt();var n0=class extends ut{constructor(){super(...arguments);this.recursive=ge.Boolean("-R,--recursive",!1,{description:"List, for each workspace, what are all the paths that lead to the dependency"});this.json=ge.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"});this.peers=ge.Boolean("--peers",!1,{description:"Also print the peer dependencies that match the specified name"});this.package=ge.String()}async execute(){let r=await Ke.find(this.context.cwd,this.context.plugins),{project:o,workspace:a}=await St.find(r,this.context.cwd);if(!a)throw new rr(o.cwd,this.context.cwd);await o.restoreInstallState();let n=W.parseIdent(this.package).identHash,u=this.recursive?ogt(o,n,{configuration:r,peers:this.peers}):sgt(o,n,{configuration:r,peers:this.peers});$s.emitTree(u,{configuration:r,stdout:this.context.stdout,json:this.json,separators:1})}};n0.paths=[["why"]],n0.usage=nt.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"]]});function sgt(t,e,{configuration:r,peers:o}){let a=je.sortMap(t.storedPackages.values(),A=>W.stringifyLocator(A)),n={},u={children:n};for(let A of a){let p={};for(let C of A.dependencies.values()){if(!o&&A.peerDependencies.has(C.identHash))continue;let I=t.storedResolutions.get(C.descriptorHash);if(!I)throw new Error("Assertion failed: The resolution should have been registered");let v=t.storedPackages.get(I);if(!v)throw new Error("Assertion failed: The package should have been registered");if(v.identHash!==e)continue;{let E=W.stringifyLocator(A);n[E]={value:[A,de.Type.LOCATOR],children:p}}let x=W.stringifyLocator(v);p[x]={value:[{descriptor:C,locator:v},de.Type.DEPENDENT]}}}return u}function ogt(t,e,{configuration:r,peers:o}){let a=je.sortMap(t.workspaces,v=>W.stringifyLocator(v.anchoredLocator)),n=new Set,u=new Set,A=v=>{if(n.has(v.locatorHash))return u.has(v.locatorHash);if(n.add(v.locatorHash),v.identHash===e)return u.add(v.locatorHash),!0;let x=!1;v.identHash===e&&(x=!0);for(let E of v.dependencies.values()){if(!o&&v.peerDependencies.has(E.identHash))continue;let R=t.storedResolutions.get(E.descriptorHash);if(!R)throw new Error("Assertion failed: The resolution should have been registered");let L=t.storedPackages.get(R);if(!L)throw new Error("Assertion failed: The package should have been registered");A(L)&&(x=!0)}return x&&u.add(v.locatorHash),x};for(let v of a)A(v.anchoredPackage);let p=new Set,h={},C={children:h},I=(v,x,E)=>{if(!u.has(v.locatorHash))return;let R=E!==null?de.tuple(de.Type.DEPENDENT,{locator:v,descriptor:E}):de.tuple(de.Type.LOCATOR,v),L={},U={value:R,children:L},z=W.stringifyLocator(v);if(x[z]=U,!p.has(v.locatorHash)&&(p.add(v.locatorHash),!(E!==null&&t.tryWorkspaceByLocator(v))))for(let te of v.dependencies.values()){if(!o&&v.peerDependencies.has(te.identHash))continue;let le=t.storedResolutions.get(te.descriptorHash);if(!le)throw new Error("Assertion failed: The resolution should have been registered");let he=t.storedPackages.get(le);if(!he)throw new Error("Assertion failed: The package should have been registered");I(he,L,te)}};for(let v of a)I(v.anchoredPackage,h,null);return C}Ye();var eH={};Vt(eH,{GitFetcher:()=>E2,GitResolver:()=>C2,default:()=>Sgt,gitUtils:()=>ra});Ye();Pt();var ra={};Vt(ra,{TreeishProtocols:()=>y2,clone:()=>$8,fetchBase:()=>Fde,fetchChangedFiles:()=>Rde,fetchChangedWorkspaces:()=>Dgt,fetchRoot:()=>Qde,isGitUrl:()=>yC,lsRemote:()=>kde,normalizeLocator:()=>vgt,normalizeRepoUrl:()=>dC,resolveUrl:()=>Z8,splitRepoUrl:()=>i0,validateRepoUrl:()=>X8});Ye();Pt();qt();var Sde=$e(vde()),bde=$e(EU()),mC=$e(Be("querystring")),z8=$e(Jn());function V8(t,e,r){let o=t.indexOf(r);return t.lastIndexOf(e,o>-1?o:1/0)}function Dde(t){try{return new URL(t)}catch{return}}function Igt(t){let e=V8(t,"@","#"),r=V8(t,":","#");return r>e&&(t=`${t.slice(0,r)}/${t.slice(r+1)}`),V8(t,":","#")===-1&&t.indexOf("//")===-1&&(t=`ssh://${t}`),t}function Pde(t){return Dde(t)||Dde(Igt(t))}function dC(t,{git:e=!1}={}){if(t=t.replace(/^git\+https:/,"https:"),t=t.replace(/^(?:github:|https:\/\/github\.com\/|git:\/\/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){let r=Pde(t);r&&(t=r.href),t=t.replace(/^git\+([^:]+):/,"$1:")}return t}function xde(){return{...process.env,GIT_SSH_COMMAND:process.env.GIT_SSH_COMMAND||`${process.env.GIT_SSH||"ssh"} -o BatchMode=yes`}}var Bgt=[/^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\/(.+)?$/],y2=(a=>(a.Commit="commit",a.Head="head",a.Tag="tag",a.Semver="semver",a))(y2||{});function yC(t){return t?Bgt.some(e=>!!t.match(e)):!1}function i0(t){t=dC(t);let e=t.indexOf("#");if(e===-1)return{repo:t,treeish:{protocol:"head",request:"HEAD"},extra:{}};let r=t.slice(0,e),o=t.slice(e+1);if(o.match(/^[a-z]+=/)){let a=mC.default.parse(o);for(let[p,h]of Object.entries(a))if(typeof h!="string")throw new Error(`Assertion failed: The ${p} parameter must be a literal string`);let n=Object.values(y2).find(p=>Object.hasOwn(a,p)),[u,A]=typeof n<"u"?[n,a[n]]:["head","HEAD"];for(let p of Object.values(y2))delete a[p];return{repo:r,treeish:{protocol:u,request:A},extra:a}}else{let a=o.indexOf(":"),[n,u]=a===-1?[null,o]:[o.slice(0,a),o.slice(a+1)];return{repo:r,treeish:{protocol:n,request:u},extra:{}}}}function vgt(t){return W.makeLocator(t,dC(t.reference))}function X8(t,{configuration:e}){let r=dC(t,{git:!0});if(!rn.getNetworkSettings(`https://${(0,Sde.default)(r).resource}`,{configuration:e}).enableNetwork)throw new Jt(80,`Request to '${r}' has been blocked because of your configuration settings`);return r}async function kde(t,e){let r=X8(t,{configuration:e}),o=await J8("listing refs",["ls-remote",r],{cwd:e.startingCwd,env:xde()},{configuration:e,normalizedRepoUrl:r}),a=new Map,n=/^([a-f0-9]{40})\t([^\n]+)/gm,u;for(;(u=n.exec(o.stdout))!==null;)a.set(u[2],u[1]);return a}async function Z8(t,e){let{repo:r,treeish:{protocol:o,request:a},extra:n}=i0(t),u=await kde(r,e),A=(h,C)=>{switch(h){case"commit":{if(!C.match(/^[a-f0-9]{40}$/))throw new Error("Invalid commit hash");return mC.default.stringify({...n,commit:C})}case"head":{let I=u.get(C==="HEAD"?C:`refs/heads/${C}`);if(typeof I>"u")throw new Error(`Unknown head ("${C}")`);return mC.default.stringify({...n,commit:I})}case"tag":{let I=u.get(`refs/tags/${C}`);if(typeof I>"u")throw new Error(`Unknown tag ("${C}")`);return mC.default.stringify({...n,commit:I})}case"semver":{let I=kr.validRange(C);if(!I)throw new Error(`Invalid range ("${C}")`);let v=new Map([...u.entries()].filter(([E])=>E.startsWith("refs/tags/")).map(([E,R])=>[z8.default.parse(E.slice(10)),R]).filter(E=>E[0]!==null)),x=z8.default.maxSatisfying([...v.keys()],I);if(x===null)throw new Error(`No matching range ("${C}")`);return mC.default.stringify({...n,commit:v.get(x)})}case null:{let I;if((I=p("commit",C))!==null||(I=p("tag",C))!==null||(I=p("head",C))!==null)return I;throw C.match(/^[a-f0-9]+$/)?new Error(`Couldn't resolve "${C}" as either a commit, a tag, or a head - if a commit, use the 40-characters commit hash`):new Error(`Couldn't resolve "${C}" as either a commit, a tag, or a head`)}default:throw new Error(`Invalid Git resolution protocol ("${h}")`)}},p=(h,C)=>{try{return A(h,C)}catch{return null}};return dC(`${r}#${A(o,a)}`)}async function $8(t,e){return await e.getLimit("cloneConcurrency")(async()=>{let{repo:r,treeish:{protocol:o,request:a}}=i0(t);if(o!=="commit")throw new Error("Invalid treeish protocol when cloning");let n=X8(r,{configuration:e}),u=await oe.mktempPromise(),A={cwd:u,env:xde()};return await J8("cloning the repository",["clone","-c core.autocrlf=false",n,ue.fromPortablePath(u)],A,{configuration:e,normalizedRepoUrl:n}),await J8("switching branch",["checkout",`${a}`],A,{configuration:e,normalizedRepoUrl:n}),u})}async function Qde(t){let e,r=t;do{if(e=r,await oe.existsPromise(V.join(e,".git")))return e;r=V.dirname(e)}while(r!==e);return null}async function Fde(t,{baseRefs:e}){if(e.length===0)throw new it("Can't run this command with zero base refs specified.");let r=[];for(let A of e){let{code:p}=await Ur.execvp("git",["merge-base",A,"HEAD"],{cwd:t});p===0&&r.push(A)}if(r.length===0)throw new it(`No ancestor could be found between any of HEAD and ${e.join(", ")}`);let{stdout:o}=await Ur.execvp("git",["merge-base","HEAD",...r],{cwd:t,strict:!0}),a=o.trim(),{stdout:n}=await Ur.execvp("git",["show","--quiet","--pretty=format:%s",a],{cwd:t,strict:!0}),u=n.trim();return{hash:a,title:u}}async function Rde(t,{base:e,project:r}){let o=je.buildIgnorePattern(r.configuration.get("changesetIgnorePatterns")),{stdout:a}=await Ur.execvp("git",["diff","--name-only",`${e}`],{cwd:t,strict:!0}),n=a.split(/\r\n|\r|\n/).filter(h=>h.length>0).map(h=>V.resolve(t,ue.toPortablePath(h))),{stdout:u}=await Ur.execvp("git",["ls-files","--others","--exclude-standard"],{cwd:t,strict:!0}),A=u.split(/\r\n|\r|\n/).filter(h=>h.length>0).map(h=>V.resolve(t,ue.toPortablePath(h))),p=[...new Set([...n,...A].sort())];return o?p.filter(h=>!V.relative(r.cwd,h).match(o)):p}async function Dgt({ref:t,project:e}){if(e.configuration.projectCwd===null)throw new it("This command can only be run from within a Yarn project");let r=[V.resolve(e.cwd,dr.lockfile),V.resolve(e.cwd,e.configuration.get("cacheFolder")),V.resolve(e.cwd,e.configuration.get("installStatePath")),V.resolve(e.cwd,e.configuration.get("virtualFolder"))];await e.configuration.triggerHook(u=>u.populateYarnPaths,e,u=>{u!=null&&r.push(u)});let o=await Qde(e.configuration.projectCwd);if(o==null)throw new it("This command can only be run on Git repositories");let a=await Fde(o,{baseRefs:typeof t=="string"?[t]:e.configuration.get("changesetBaseRefs")}),n=await Rde(o,{base:a.hash,project:e});return new Set(je.mapAndFilter(n,u=>{let A=e.tryWorkspaceByFilePath(u);return A===null?je.mapAndFilter.skip:r.some(p=>u.startsWith(p))?je.mapAndFilter.skip:A}))}async function J8(t,e,r,{configuration:o,normalizedRepoUrl:a}){try{return await Ur.execvp("git",e,{...r,strict:!0})}catch(n){if(!(n instanceof Ur.ExecError))throw n;let u=n.reportExtra,A=n.stderr.toString();throw new Jt(1,`Failed ${t}`,p=>{p.reportError(1,` ${de.prettyField(o,{label:"Repository URL",value:de.tuple(de.Type.URL,a)})}`);for(let h of A.matchAll(/^(.+?): (.*)$/gm)){let[,C,I]=h;C=C.toLowerCase();let v=C==="error"?"Error":`${(0,bde.default)(C)} Error`;p.reportError(1,` ${de.prettyField(o,{label:v,value:de.tuple(de.Type.NO_HINT,I)})}`)}u?.(p)})}}var E2=class{supports(e,r){return yC(e.reference)}getLocalPath(e,r){return null}async fetch(e,r){let o=r.checksums.get(e.locatorHash)||null,a=new Map(r.checksums);a.set(e.locatorHash,o);let n={...r,checksums:a},u=await this.downloadHosted(e,n);if(u!==null)return u;let[A,p,h]=await r.cache.fetchPackageFromCache(e,o,{onHit:()=>r.report.reportCacheHit(e),onMiss:()=>r.report.reportCacheMiss(e,`${W.prettyLocator(r.project.configuration,e)} can't be found in the cache and will be fetched from the remote repository`),loader:()=>this.cloneFromRemote(e,n),...r.cacheOptions});return{packageFs:A,releaseFs:p,prefixPath:W.getIdentVendorPath(e),checksum:h}}async downloadHosted(e,r){return r.project.configuration.reduceHook(o=>o.fetchHostedRepository,null,e,r)}async cloneFromRemote(e,r){let o=await $8(e.reference,r.project.configuration),a=i0(e.reference),n=V.join(o,"package.tgz");await un.prepareExternalProject(o,n,{configuration:r.project.configuration,report:r.report,workspace:a.extra.workspace,locator:e});let u=await oe.readFilePromise(n);return await je.releaseAfterUseAsync(async()=>await Xi.convertToZip(u,{configuration:r.project.configuration,prefixPath:W.getIdentVendorPath(e),stripComponents:1}))}};Ye();Ye();var C2=class{supportsDescriptor(e,r){return yC(e.range)}supportsLocator(e,r){return yC(e.reference)}shouldPersistResolution(e,r){return!0}bindDescriptor(e,r,o){return e}getResolutionDependencies(e,r){return{}}async getCandidates(e,r,o){let a=await Z8(e.range,o.project.configuration);return[W.makeLocator(e,a)]}async getSatisfying(e,r,o,a){let n=i0(e.range);return{locators:o.filter(A=>{if(A.identHash!==e.identHash)return!1;let p=i0(A.reference);return!(n.repo!==p.repo||n.treeish.protocol==="commit"&&n.treeish.request!==p.treeish.request)}),sorted:!1}}async resolve(e,r){if(!r.fetchOptions)throw new Error("Assertion failed: This resolver cannot be used unless a fetcher is configured");let o=await r.fetchOptions.fetcher.fetch(e,r.fetchOptions),a=await je.releaseAfterUseAsync(async()=>await Ot.find(o.prefixPath,{baseFs:o.packageFs}),o.releaseFs);return{...e,version:a.version||"0.0.0",languageName:a.languageName||r.project.configuration.get("defaultLanguageName"),linkType:"HARD",conditions:a.getConditions(),dependencies:r.project.configuration.normalizeDependencyMap(a.dependencies),peerDependencies:a.peerDependencies,dependenciesMeta:a.dependenciesMeta,peerDependenciesMeta:a.peerDependenciesMeta,bin:a.bin}}};var Pgt={configuration:{changesetBaseRefs:{description:"The base git refs that the current HEAD is compared against when detecting changes. Supports git branches, tags, and commits.",type:"STRING",isArray:!0,isNullable:!1,default:["master","origin/master","upstream/master","main","origin/main","upstream/main"]},changesetIgnorePatterns:{description:"Array of glob patterns; files matching them will be ignored when fetching the changed files",type:"STRING",default:[],isArray:!0},cloneConcurrency:{description:"Maximal number of concurrent clones",type:"NUMBER",default:2}},fetchers:[E2],resolvers:[C2]};var Sgt=Pgt;qt();var s0=class extends ut{constructor(){super(...arguments);this.since=ge.String("--since",{description:"Only include workspaces that have been changed since the specified ref.",tolerateBoolean:!0});this.recursive=ge.Boolean("-R,--recursive",!1,{description:"Find packages via dependencies/devDependencies instead of using the workspaces field"});this.noPrivate=ge.Boolean("--no-private",{description:"Exclude workspaces that have the private field set to true"});this.verbose=ge.Boolean("-v,--verbose",!1,{description:"Also return the cross-dependencies between workspaces"});this.json=ge.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"})}async execute(){let r=await Ke.find(this.context.cwd,this.context.plugins),{project:o}=await St.find(r,this.context.cwd);return(await Nt.start({configuration:r,json:this.json,stdout:this.context.stdout},async n=>{let u=this.since?await ra.fetchChangedWorkspaces({ref:this.since,project:o}):o.workspaces,A=new Set(u);if(this.recursive)for(let p of[...u].map(h=>h.getRecursiveWorkspaceDependents()))for(let h of p)A.add(h);for(let p of A){let{manifest:h}=p;if(h.private&&this.noPrivate)continue;let C;if(this.verbose){let I=new Set,v=new Set;for(let x of Ot.hardDependencies)for(let[E,R]of h.getForScope(x)){let L=o.tryWorkspaceByDescriptor(R);L===null?o.workspacesByIdent.has(E)&&v.add(R):I.add(L)}C={workspaceDependencies:Array.from(I).map(x=>x.relativeCwd),mismatchedWorkspaceDependencies:Array.from(v).map(x=>W.stringifyDescriptor(x))}}n.reportInfo(null,`${p.relativeCwd}`),n.reportJson({location:p.relativeCwd,name:h.name?W.stringifyIdent(h.name):null,...C})}})).exitCode()}};s0.paths=[["workspaces","list"]],s0.usage=nt.Usage({category:"Workspace-related commands",description:"list all available workspaces",details:"\n This command will print the list of all workspaces in the project.\n\n - If `--since` is set, Yarn will only list workspaces that have been modified since the specified ref. By default Yarn will use the refs specified by the `changesetBaseRefs` configuration option.\n\n - If `-R,--recursive` is set, Yarn will find workspaces to run the command on by recursively evaluating `dependencies` and `devDependencies` fields, instead of looking at the `workspaces` fields.\n\n - If `--no-private` is set, Yarn will not list any workspaces that have the `private` field set to `true`.\n\n - 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 "});Ye();Ye();qt();var o0=class extends ut{constructor(){super(...arguments);this.workspaceName=ge.String();this.commandName=ge.String();this.args=ge.Proxy()}async execute(){let r=await Ke.find(this.context.cwd,this.context.plugins),{project:o,workspace:a}=await St.find(r,this.context.cwd);if(!a)throw new rr(o.cwd,this.context.cwd);let n=o.workspaces,u=new Map(n.map(p=>[W.stringifyIdent(p.anchoredLocator),p])),A=u.get(this.workspaceName);if(A===void 0){let p=Array.from(u.keys()).sort();throw new it(`Workspace '${this.workspaceName}' not found. Did you mean any of the following: + - ${p.join(` + - `)}?`)}return this.cli.run([this.commandName,...this.args],{cwd:A.cwd})}};o0.paths=[["workspace"]],o0.usage=nt.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 bgt={configuration:{enableImmutableInstalls:{description:"If true (the default on CI), prevents the install command from modifying the lockfile",type:"BOOLEAN",default:Tde.isCI},defaultSemverRangePrefix:{description:"The default save prefix: '^', '~' or ''",type:"STRING",values:["^","~",""],default:"^"},preferReuse:{description:"If true, `yarn add` will attempt to reuse the most common dependency range in other workspaces.",type:"BOOLEAN",default:!1}},commands:[Qh,Fh,Rh,Th,t0,Kh,Uh,s0,Yd,Wd,gC,Kd,xh,kh,Nh,Lh,Oh,Mh,_h,Hh,jh,qh,r0,Gh,Yh,zh,Vh,Jh,Wh,Xh,Zh,$h,zd,e0,Kf,n0,o0]},xgt=bgt;var oH={};Vt(oH,{default:()=>Qgt});Ye();var kt={optional:!0},rH=[["@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:kt,zenObservable:kt}}],["any-observable@<0.5.1",{peerDependenciesMeta:{rxjs:kt,zenObservable:kt}}],["@pm2/agent@<1.0.4",{dependencies:{debug:"*"}}],["debug@<4.2.0",{peerDependenciesMeta:{["supports-color"]:kt}}],["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"]:kt,["postcss-jsx"]:kt,["postcss-less"]:kt,["postcss-markdown"]:kt,["postcss-scss"]:kt}}],["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:kt}}],["snowpack@>=3.3.0",{dependencies:{["node-gyp"]:"^7.1.0"}}],["promise-inflight@*",{peerDependenciesMeta:{bluebird:kt}}],["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@<=0.5.2",{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@<=6.3.4",{peerDependencies:{eslint:">= 6",typescript:">= 2.7",webpack:">= 4","vue-template-compiler":"*"},peerDependenciesMeta:{eslint:kt,"vue-template-compiler":kt}}],["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:kt,"utf-8-validate":kt}}],["react-portal@<4.2.2",{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@<=4.6.0-next.3",{dependencies:{debug:"^4.3.1"}}],["gatsby-react-router-scroll@<=5.6.0-next.0",{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":kt,"vuetify-loader":kt}}],["vue-cli-plugin-vuetify@<=2.0.4",{dependencies:{"null-loader":"^3.0.0"}}],["vue-cli-plugin-vuetify@>=2.4.3",{peerDependencies:{vue:"*"}}],["@vuetify/cli-plugin-utils@<=0.0.4",{dependencies:{semver:"^6.3.0"},peerDependenciesMeta:{"sass-loader":kt}}],["@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":kt}}],["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":kt}}],["consolidate@<0.16.0",{peerDependencies:{mustache:"^3.0.0"},peerDependenciesMeta:{mustache:kt}}],["consolidate@<=0.16.0",{peerDependencies:{velocityjs:"^2.0.1",tinyliquid:"^0.2.34","liquid-node":"^3.0.1",jade:"^1.11.0","then-jade":"*",dust:"^0.3.0","dustjs-helpers":"^1.7.4","dustjs-linkedin":"^2.7.5",swig:"^1.4.2","swig-templates":"^2.0.3","razor-tmpl":"^1.3.1",atpl:">=0.7.6",liquor:"^0.0.5",twig:"^1.15.2",ejs:"^3.1.5",eco:"^1.1.0-rc-3",jazz:"^0.0.18",jqtpl:"~1.1.0",hamljs:"^0.6.2",hamlet:"^0.3.3",whiskers:"^0.4.0","haml-coffee":"^1.14.1","hogan.js":"^3.0.2",templayed:">=0.2.3",handlebars:"^4.7.6",underscore:"^1.11.0",lodash:"^4.17.20",pug:"^3.0.0","then-pug":"*",qejs:"^3.0.5",walrus:"^0.10.1",mustache:"^4.0.1",just:"^0.1.8",ect:"^0.5.9",mote:"^0.2.0",toffee:"^0.3.6",dot:"^1.1.3","bracket-template":"^1.1.5",ractive:"^1.3.12",nunjucks:"^3.2.2",htmling:"^0.0.8","babel-core":"^6.26.3",plates:"~0.4.11","react-dom":"^16.13.1",react:"^16.13.1","arc-templates":"^0.5.3",vash:"^0.13.0",slm:"^2.0.0",marko:"^3.14.4",teacup:"^2.0.0","coffee-script":"^1.12.7",squirrelly:"^5.1.0",twing:"^5.0.2"},peerDependenciesMeta:{velocityjs:kt,tinyliquid:kt,"liquid-node":kt,jade:kt,"then-jade":kt,dust:kt,"dustjs-helpers":kt,"dustjs-linkedin":kt,swig:kt,"swig-templates":kt,"razor-tmpl":kt,atpl:kt,liquor:kt,twig:kt,ejs:kt,eco:kt,jazz:kt,jqtpl:kt,hamljs:kt,hamlet:kt,whiskers:kt,"haml-coffee":kt,"hogan.js":kt,templayed:kt,handlebars:kt,underscore:kt,lodash:kt,pug:kt,"then-pug":kt,qejs:kt,walrus:kt,mustache:kt,just:kt,ect:kt,mote:kt,toffee:kt,dot:kt,"bracket-template":kt,ractive:kt,nunjucks:kt,htmling:kt,"babel-core":kt,plates:kt,"react-dom":kt,react:kt,"arc-templates":kt,vash:kt,slm:kt,marko:kt,teacup:kt,"coffee-script":kt,squirrelly:kt,twing:kt}}],["vue-loader@<=16.3.3",{peerDependencies:{"@vue/compiler-sfc":"^3.0.8",webpack:"^4.1.0 || ^5.0.0-0"},peerDependenciesMeta:{"@vue/compiler-sfc":kt}}],["vue-loader@^16.7.0",{peerDependencies:{"@vue/compiler-sfc":"^3.0.8",vue:"^3.2.13"},peerDependenciesMeta:{"@vue/compiler-sfc":kt,vue:kt}}],["scss-parser@<=1.0.5",{dependencies:{lodash:"^4.17.21"}}],["query-ast@<1.0.5",{dependencies:{lodash:"^4.17.21"}}],["redux-thunk@<=2.3.0",{peerDependencies:{redux:"^4.0.0"}}],["skypack@<=0.3.2",{dependencies:{tar:"^6.1.0"}}],["@npmcli/metavuln-calculator@<2.0.0",{dependencies:{"json-parse-even-better-errors":"^2.3.1"}}],["bin-links@<2.3.0",{dependencies:{"mkdirp-infer-owner":"^1.0.2"}}],["rollup-plugin-polyfill-node@<=0.8.0",{peerDependencies:{rollup:"^1.20.0 || ^2.0.0"}}],["snowpack@<3.8.6",{dependencies:{"magic-string":"^0.25.7"}}],["elm-webpack-loader@*",{dependencies:{temp:"^0.9.4"}}],["winston-transport@<=4.4.0",{dependencies:{logform:"^2.2.0"}}],["jest-vue-preprocessor@*",{dependencies:{"@babel/core":"7.8.7","@babel/template":"7.8.6"},peerDependencies:{pug:"^2.0.4"},peerDependenciesMeta:{pug:kt}}],["redux-persist@*",{peerDependencies:{react:">=16"},peerDependenciesMeta:{react:kt}}],["sodium@>=3",{dependencies:{"node-gyp":"^3.8.0"}}],["babel-plugin-graphql-tag@<=3.1.0",{peerDependencies:{graphql:"^14.0.0 || ^15.0.0"}}],["@playwright/test@<=1.14.1",{dependencies:{"jest-matcher-utils":"^26.4.2"}}],...["babel-plugin-remove-graphql-queries@<3.14.0-next.1","babel-preset-gatsby-package@<1.14.0-next.1","create-gatsby@<1.14.0-next.1","gatsby-admin@<0.24.0-next.1","gatsby-cli@<3.14.0-next.1","gatsby-core-utils@<2.14.0-next.1","gatsby-design-tokens@<3.14.0-next.1","gatsby-legacy-polyfills@<1.14.0-next.1","gatsby-plugin-benchmark-reporting@<1.14.0-next.1","gatsby-plugin-graphql-config@<0.23.0-next.1","gatsby-plugin-image@<1.14.0-next.1","gatsby-plugin-mdx@<2.14.0-next.1","gatsby-plugin-netlify-cms@<5.14.0-next.1","gatsby-plugin-no-sourcemaps@<3.14.0-next.1","gatsby-plugin-page-creator@<3.14.0-next.1","gatsby-plugin-preact@<5.14.0-next.1","gatsby-plugin-preload-fonts@<2.14.0-next.1","gatsby-plugin-schema-snapshot@<2.14.0-next.1","gatsby-plugin-styletron@<6.14.0-next.1","gatsby-plugin-subfont@<3.14.0-next.1","gatsby-plugin-utils@<1.14.0-next.1","gatsby-recipes@<0.25.0-next.1","gatsby-source-shopify@<5.6.0-next.1","gatsby-source-wikipedia@<3.14.0-next.1","gatsby-transformer-screenshot@<3.14.0-next.1","gatsby-worker@<0.5.0-next.1"].map(t=>[t,{dependencies:{"@babel/runtime":"^7.14.8"}}]),["gatsby-core-utils@<2.14.0-next.1",{dependencies:{got:"8.3.2"}}],["gatsby-plugin-gatsby-cloud@<=3.1.0-next.0",{dependencies:{"gatsby-core-utils":"^2.13.0-next.0"}}],["gatsby-plugin-gatsby-cloud@<=3.2.0-next.1",{peerDependencies:{webpack:"*"}}],["babel-plugin-remove-graphql-queries@<=3.14.0-next.1",{dependencies:{"gatsby-core-utils":"^2.8.0-next.1"}}],["gatsby-plugin-netlify@3.13.0-next.1",{dependencies:{"gatsby-core-utils":"^2.13.0-next.0"}}],["clipanion-v3-codemod@<=0.2.0",{peerDependencies:{jscodeshift:"^0.11.0"}}],["react-live@*",{peerDependencies:{"react-dom":"*",react:"*"}}],["webpack@<4.44.1",{peerDependenciesMeta:{"webpack-cli":kt,"webpack-command":kt}}],["webpack@<5.0.0-beta.23",{peerDependenciesMeta:{"webpack-cli":kt}}],["webpack-dev-server@<3.10.2",{peerDependenciesMeta:{"webpack-cli":kt}}],["@docusaurus/responsive-loader@<1.5.0",{peerDependenciesMeta:{sharp:kt,jimp:kt}}],["eslint-module-utils@*",{peerDependenciesMeta:{"eslint-import-resolver-node":kt,"eslint-import-resolver-typescript":kt,"eslint-import-resolver-webpack":kt,"@typescript-eslint/parser":kt}}],["eslint-plugin-import@*",{peerDependenciesMeta:{"@typescript-eslint/parser":kt}}],["critters-webpack-plugin@<3.0.2",{peerDependenciesMeta:{"html-webpack-plugin":kt}}],["terser@<=5.10.0",{dependencies:{acorn:"^8.5.0"}}],["babel-preset-react-app@10.0.x",{dependencies:{"@babel/plugin-proposal-private-property-in-object":"^7.16.0"}}],["eslint-config-react-app@*",{peerDependenciesMeta:{typescript:kt}}],["@vue/eslint-config-typescript@<11.0.0",{peerDependenciesMeta:{typescript:kt}}],["unplugin-vue2-script-setup@<0.9.1",{peerDependencies:{"@vue/composition-api":"^1.4.3","@vue/runtime-dom":"^3.2.26"}}],["@cypress/snapshot@*",{dependencies:{debug:"^3.2.7"}}],["auto-relay@<=0.14.0",{peerDependencies:{"reflect-metadata":"^0.1.13"}}],["vue-template-babel-compiler@<1.2.0",{peerDependencies:{["vue-template-compiler"]:"^2.6.0"}}],["@parcel/transformer-image@<2.5.0",{peerDependencies:{["@parcel/core"]:"*"}}],["@parcel/transformer-js@<2.5.0",{peerDependencies:{["@parcel/core"]:"*"}}],["parcel@*",{peerDependenciesMeta:{["@parcel/core"]:kt}}],["react-scripts@*",{peerDependencies:{eslint:"*"}}],["focus-trap-react@^8.0.0",{dependencies:{tabbable:"^5.3.2"}}],["react-rnd@<10.3.7",{peerDependencies:{react:">=16.3.0","react-dom":">=16.3.0"}}],["connect-mongo@*",{peerDependencies:{"express-session":"^1.17.1"}}],["vue-i18n@<9",{peerDependencies:{vue:"^2"}}],["vue-router@<4",{peerDependencies:{vue:"^2"}}],["unified@<10",{dependencies:{"@types/unist":"^2.0.0"}}],["react-github-btn@<=1.3.0",{peerDependencies:{react:">=16.3.0"}}],["react-dev-utils@*",{peerDependencies:{typescript:">=2.7",webpack:">=4"},peerDependenciesMeta:{typescript:kt}}],["@asyncapi/react-component@<=1.0.0-next.39",{peerDependencies:{react:">=16.8.0","react-dom":">=16.8.0"}}],["xo@*",{peerDependencies:{webpack:">=1.11.0"},peerDependenciesMeta:{webpack:kt}}],["babel-plugin-remove-graphql-queries@<=4.20.0-next.0",{dependencies:{"@babel/types":"^7.15.4"}}],["gatsby-plugin-page-creator@<=4.20.0-next.1",{dependencies:{"fs-extra":"^10.1.0"}}],["gatsby-plugin-utils@<=3.14.0-next.1",{dependencies:{fastq:"^1.13.0"},peerDependencies:{graphql:"^15.0.0"}}],["gatsby-plugin-mdx@<3.1.0-next.1",{dependencies:{mkdirp:"^1.0.4"}}],["gatsby-plugin-mdx@^2",{peerDependencies:{gatsby:"^3.0.0-next"}}],["fdir@<=5.2.0",{peerDependencies:{picomatch:"2.x"},peerDependenciesMeta:{picomatch:kt}}],["babel-plugin-transform-typescript-metadata@<=0.3.2",{peerDependencies:{"@babel/core":"^7","@babel/traverse":"^7"},peerDependenciesMeta:{"@babel/traverse":kt}}],["graphql-compose@>=9.0.10",{peerDependencies:{graphql:"^14.2.0 || ^15.0.0 || ^16.0.0"}}]];var nH;function Nde(){return typeof nH>"u"&&(nH=Be("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()),nH}var iH;function Lde(){return typeof iH>"u"&&(iH=Be("zlib").brotliDecompressSync(Buffer.from("G8MSIIzURnVBnObTcvb3XE6v2S9Qgc2K801Oa5otNKEtK8BINZNcaQHy+9/vf/WXBimwutXC33P2DPc64pps5rz7NGGWaOKNSPL4Y2KRE8twut2lFOIN+OXPtRmPMRhMTILib2bEQx43az2I5d3YS8Roa5UZpF/ujHb3Djd3GDvYUfvFYSUQ39vb2cmifp/rgB4J/65JK3wRBTvMBoNBmn3mbXC63/gbBkW/2IRPri0O8bcsRBsmarF328pAln04nyJFkwUAvNu934supAqLtyerZZpJ8I8suJHhf/ocMV+scKwa8NOiDKIPXw6Ex/EEZD6TEGaW8N5zvNHYF10l6Lfooj7D5W2k3dgvQSbp2Wv8TGOayS978gxlOLVjTGXs66ozewbrjwElLtyrYNnWTfzzdEutgROUFPVMhnMoy8EjJLLlWwIEoySxliim9kYW30JUHiPVyjt0iAw/ZpPmCbUCltYPnq6ZNblIKhTNhqS/oqC9iya5sGKZTOVsTEg34n92uZTf2iPpcZih8rPW8CzA+adIGmyCPcKdLMsBLShd+zuEbTrqpwuh+DLmracZcjPC5Sdf5odDAhKpFuOsQS67RT+1VgWWygSv3YwxDnylc04/PYuaMeIzhBkLrvs7e/OUzRTF56MmfY6rI63QtEjEQzq637zQqJ39nNhu3NmoRRhW/086bHGBUtx0PE0j3aEGvkdh9WJC8y8j8mqqke9/dQ5la+Q3ba4RlhvTbnfQhPDDab3tUifkjKuOsp13mXEmO00Mu88F/M67R7LXfoFDFLNtgCSWjWX+3Jn1371pJTK9xPBiMJafvDjtFyAzu8rxeQ0TKMQXNPs5xxiBOd+BRJP8KP88XPtJIbZKh/cdW8KvBUkpqKpGoiIaA32c3/JnQr4efXt85mXvidOvn/eU3Pase1typLYBalJ14mCso9h79nuMOuCa/kZAOkJHmTjP5RM2WNoPasZUAnT1TAE/NH25hUxcQv6hQWR/m1PKk4ooXMcM4SR1iYU3fUohvqk4RY2hbmTVVIXv6TvqO+0doOjgeVFAcom+RlwJQmOVH7pr1Q9LoJT6n1DeQEB+NHygsATbIwTcOKZlJsY8G4+suX1uQLjUWwLjjs0mvSvZcLTpIGAekeR7GCgl8eo3ndAqEe2XCav4huliHjdbIPBsGJuPX7lrO9HX1UbXRH5opOe1x6JsOSgHZR+EaxuXVhpLLxm6jk1LJtZfHSc6BKPun3CpYYVMJGwEUyk8MTGG0XL5MfEwaXpnc9TKnBmlGn6nHiGREc3ysn47XIBDzA+YvFdjZzVIEDcKGpS6PbUJehFRjEne8D0lVU1XuRtlgszq6pTNlQ/3MzNOEgCWPyTct22V2mEi2krizn5VDo9B19/X2DB3hCGRMM7ONbtnAcIx/OWB1u5uPbW1gsH8irXxT/IzG0PoXWYjhbMsH3KTuoOl5o17PulcgvsfTSnKFM354GWI8luqZnrswWjiXy3G+Vbyo1KMopFmmvBwNELgaS8z8dNZchx/Cl/xjddxhMcyqtzFyONb2Zdu90NkI8pAeufe7YlXrp53v8Dj/l8vWeVspRKBGXScBBPI/HinSTGmLDOGGOCIyH0JFdOZx0gWsacNlQLJMIrBhqRxXxHF/5pseWwejlAAvZ3klZSDSYY8mkToaWejXhgNomeGtx1DTLEUFMRkgF5yFB22WYdJnaWN14r1YJj81hGi45+jrADS5nYRhCiSlCJJ1nL8pYX+HDSMhdTEWyRcgHVp/IsUIZYMfT+YYncUQPgcxNGCHfZ88vDdrcUuaGIl6zhAsiaq7R5dfqrqXH/JcBhfjT8D0azayIyEz75Nxp6YkcyDxlJq3EXnJUpqDohJJOysL1t1uNiHESlvsxPb5cpbW0+ICZqJmUZus1BMW0F5IVBODLIo2zHHjA0=","base64")).toString()),iH}var sH;function Ode(){return typeof sH>"u"&&(sH=Be("zlib").brotliDecompressSync(Buffer.from("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","base64")).toString()),sH}var Mde=new Map([[W.makeIdent(null,"fsevents").identHash,Nde],[W.makeIdent(null,"resolve").identHash,Lde],[W.makeIdent(null,"typescript").identHash,Ode]]),kgt={hooks:{registerPackageExtensions:async(t,e)=>{for(let[r,o]of rH)e(W.parseDescriptor(r,!0),o)},getBuiltinPatch:async(t,e)=>{let r="compat/";if(!e.startsWith(r))return;let o=W.parseIdent(e.slice(r.length)),a=Mde.get(o.identHash)?.();return typeof a<"u"?a:null},reduceDependency:async(t,e,r,o)=>typeof Mde.get(t.identHash)>"u"?t:W.makeDescriptor(t,W.makeRange({protocol:"patch:",source:W.stringifyDescriptor(t),selector:`optional!builtin`,params:null}))}},Qgt=kgt;var BH={};Vt(BH,{ConstraintsCheckCommand:()=>p0,ConstraintsQueryCommand:()=>A0,ConstraintsSourceCommand:()=>f0,default:()=>idt});Ye();Ye();I2();var CC=class{constructor(e){this.project=e}createEnvironment(){let e=new EC(["cwd","ident"]),r=new EC(["workspace","type","ident"]),o=new EC(["ident"]),a={manifestUpdates:new Map,reportedErrors:new Map},n=new Map,u=new Map;for(let A of this.project.storedPackages.values()){let p=Array.from(A.peerDependencies.values(),h=>[W.stringifyIdent(h),h.range]);n.set(A.locatorHash,{workspace:null,ident:W.stringifyIdent(A),version:A.version,dependencies:new Map,peerDependencies:new Map(p.filter(([h])=>A.peerDependenciesMeta.get(h)?.optional!==!0)),optionalPeerDependencies:new Map(p.filter(([h])=>A.peerDependenciesMeta.get(h)?.optional===!0))})}for(let A of this.project.storedPackages.values()){let p=n.get(A.locatorHash);p.dependencies=new Map(Array.from(A.dependencies.values(),h=>{let C=this.project.storedResolutions.get(h.descriptorHash);if(typeof C>"u")throw new Error("Assertion failed: The resolution should have been registered");let I=n.get(C);if(typeof I>"u")throw new Error("Assertion failed: The package should have been registered");return[W.stringifyIdent(h),I]})),p.dependencies.delete(p.ident)}for(let A of this.project.workspaces){let p=W.stringifyIdent(A.anchoredLocator),h=A.manifest.exportTo({}),C=n.get(A.anchoredLocator.locatorHash);if(typeof C>"u")throw new Error("Assertion failed: The package should have been registered");let I=(R,L,{caller:U=zi.getCaller()}={})=>{let z=w2(R),te=je.getMapWithDefault(a.manifestUpdates,A.cwd),le=je.getMapWithDefault(te,z),he=je.getSetWithDefault(le,L);U!==null&&he.add(U)},v=R=>I(R,void 0,{caller:zi.getCaller()}),x=R=>{je.getArrayWithDefault(a.reportedErrors,A.cwd).push(R)},E=e.insert({cwd:A.relativeCwd,ident:p,manifest:h,pkg:C,set:I,unset:v,error:x});u.set(A,E);for(let R of Ot.allDependencies)for(let L of A.manifest[R].values()){let U=W.stringifyIdent(L),z=()=>{I([R,U],void 0,{caller:zi.getCaller()})},te=he=>{I([R,U],he,{caller:zi.getCaller()})},le=null;if(R!=="peerDependencies"&&(R!=="dependencies"||!A.manifest.devDependencies.has(L.identHash))){let he=A.anchoredPackage.dependencies.get(L.identHash);if(he){if(typeof he>"u")throw new Error("Assertion failed: The dependency should have been registered");let Ae=this.project.storedResolutions.get(he.descriptorHash);if(typeof Ae>"u")throw new Error("Assertion failed: The resolution should have been registered");let ye=n.get(Ae);if(typeof ye>"u")throw new Error("Assertion failed: The package should have been registered");le=ye}}r.insert({workspace:E,ident:U,range:L.range,type:R,resolution:le,update:te,delete:z,error:x})}}for(let A of this.project.storedPackages.values()){let p=this.project.tryWorkspaceByLocator(A);if(!p)continue;let h=u.get(p);if(typeof h>"u")throw new Error("Assertion failed: The workspace should have been registered");let C=n.get(A.locatorHash);if(typeof C>"u")throw new Error("Assertion failed: The package should have been registered");C.workspace=h}return{workspaces:e,dependencies:r,packages:o,result:a}}async process(){let e=this.createEnvironment(),r={Yarn:{workspace:a=>e.workspaces.find(a)[0]??null,workspaces:a=>e.workspaces.find(a),dependency:a=>e.dependencies.find(a)[0]??null,dependencies:a=>e.dependencies.find(a),package:a=>e.packages.find(a)[0]??null,packages:a=>e.packages.find(a)}},o=await this.project.loadUserConfig();return o?.constraints?(await o.constraints(r),e.result):null}};Ye();Ye();qt();var A0=class extends ut{constructor(){super(...arguments);this.json=ge.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"});this.query=ge.String()}async execute(){let{Constraints:r}=await Promise.resolve().then(()=>(S2(),P2)),o=await Ke.find(this.context.cwd,this.context.plugins),{project:a}=await St.find(o,this.context.cwd),n=await r.find(a),u=this.query;return u.endsWith(".")||(u=`${u}.`),(await Nt.start({configuration:o,json:this.json,stdout:this.context.stdout},async p=>{for await(let h of n.query(u)){let C=Array.from(Object.entries(h)),I=C.length,v=C.reduce((x,[E])=>Math.max(x,E.length),0);for(let x=0;x(S2(),P2)),o=await Ke.find(this.context.cwd,this.context.plugins),{project:a}=await St.find(o,this.context.cwd),n=await r.find(a);this.context.stdout.write(this.verbose?n.fullSource:n.source)}};f0.paths=[["constraints","source"]],f0.usage=nt.Usage({category:"Constraints-related commands",description:"print the source code for the constraints",details:"\n This command will print the Prolog source code used by the constraints engine. Adding the `-v,--verbose` flag will print the *full* source code, including the fact database automatically compiled from the workspace manifests.\n ",examples:[["Prints the source code","yarn constraints source"],["Print the source code and the fact database","yarn constraints source -v"]]});Ye();Ye();qt();I2();var p0=class extends ut{constructor(){super(...arguments);this.fix=ge.Boolean("--fix",!1,{description:"Attempt to automatically fix unambiguous issues, following a multi-pass process"});this.json=ge.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"})}async execute(){let r=await Ke.find(this.context.cwd,this.context.plugins),{project:o}=await St.find(r,this.context.cwd);await o.restoreInstallState();let a=await o.loadUserConfig(),n;if(a?.constraints)n=new CC(o);else{let{Constraints:h}=await Promise.resolve().then(()=>(S2(),P2));n=await h.find(o)}let u,A=!1,p=!1;for(let h=this.fix?10:1;h>0;--h){let C=await n.process();if(!C)break;let{changedWorkspaces:I,remainingErrors:v}=mk(o,C,{fix:this.fix}),x=[];for(let[E,R]of I){let L=E.manifest.indent;E.manifest=new Ot,E.manifest.indent=L,E.manifest.load(R),x.push(E.persistManifest())}if(await Promise.all(x),!(I.size>0&&h>1)){u=Yde(v,{configuration:r}),A=!1,p=!0;for(let[,E]of v)for(let R of E)R.fixable?A=!0:p=!1}}if(u.children.length===0)return 0;if(A){let h=p?`Those errors can all be fixed by running ${de.pretty(r,"yarn constraints --fix",de.Type.CODE)}`:`Errors prefixed by '\u2699' can be fixed by running ${de.pretty(r,"yarn constraints --fix",de.Type.CODE)}`;await Nt.start({configuration:r,stdout:this.context.stdout,includeNames:!1,includeFooter:!1},async C=>{C.reportInfo(0,h),C.reportSeparator()})}return u.children=je.sortMap(u.children,h=>h.value[1]),$s.emitTree(u,{configuration:r,stdout:this.context.stdout,json:this.json,separators:1}),1}};p0.paths=[["constraints"]],p0.usage=nt.Usage({category:"Constraints-related commands",description:"check that the project constraints are met",details:` + This command will run constraints on your project and emit errors for each one that is found but isn't met. If any error is emitted the process will exit with a non-zero exit code. + + If the \`--fix\` flag is used, Yarn will attempt to automatically fix the issues the best it can, following a multi-pass process (with a maximum of 10 iterations). Some ambiguous patterns cannot be autofixed, in which case you'll have to manually specify the right resolution. + + For more information as to how to write constraints, please consult our dedicated page on our website: https://yarnpkg.com/features/constraints. + `,examples:[["Check that all constraints are satisfied","yarn constraints"],["Autofix all unmet constraints","yarn constraints --fix"]]});I2();var ndt={configuration:{enableConstraintsChecks:{description:"If true, constraints will run during installs",type:"BOOLEAN",default:!1},constraintsPath:{description:"The path of the constraints file.",type:"ABSOLUTE_PATH",default:"./constraints.pro"}},commands:[A0,f0,p0],hooks:{async validateProjectAfterInstall(t,{reportError:e}){if(!t.configuration.get("enableConstraintsChecks"))return;let r=await t.loadUserConfig(),o;if(r?.constraints)o=new CC(t);else{let{Constraints:u}=await Promise.resolve().then(()=>(S2(),P2));o=await u.find(t)}let a=await o.process();if(!a)return;let{remainingErrors:n}=mk(t,a);if(n.size!==0)if(t.configuration.isCI)for(let[u,A]of n)for(let p of A)e(84,`${de.pretty(t.configuration,u.anchoredLocator,de.Type.IDENT)}: ${p.text}`);else e(84,`Constraint check failed; run ${de.pretty(t.configuration,"yarn constraints",de.Type.CODE)} for more details`)}}},idt=ndt;var vH={};Vt(vH,{CreateCommand:()=>$d,DlxCommand:()=>h0,default:()=>odt});Ye();qt();var $d=class extends ut{constructor(){super(...arguments);this.pkg=ge.String("-p,--package",{description:"The package to run the provided command from"});this.quiet=ge.Boolean("-q,--quiet",!1,{description:"Only report critical errors instead of printing the full install logs"});this.command=ge.String();this.args=ge.Proxy()}async execute(){let r=[];this.pkg&&r.push("--package",this.pkg),this.quiet&&r.push("--quiet");let o=this.command.replace(/^(@[^@/]+)(@|$)/,"$1/create$2"),a=W.parseDescriptor(o),n=a.name.match(/^create(-|$)/)?a:a.scope?W.makeIdent(a.scope,`create-${a.name}`):W.makeIdent(null,`create-${a.name}`),u=W.stringifyIdent(n);return a.range!=="unknown"&&(u+=`@${a.range}`),this.cli.run(["dlx",...r,u,...this.args])}};$d.paths=[["create"]];Ye();Ye();Pt();qt();var h0=class extends ut{constructor(){super(...arguments);this.packages=ge.Array("-p,--package",{description:"The package(s) to install before running the command"});this.quiet=ge.Boolean("-q,--quiet",!1,{description:"Only report critical errors instead of printing the full install logs"});this.command=ge.String();this.args=ge.Proxy()}async execute(){return Ke.telemetry=null,await oe.mktempPromise(async r=>{let o=V.join(r,`dlx-${process.pid}`);await oe.mkdirPromise(o),await oe.writeFilePromise(V.join(o,"package.json"),`{} +`),await oe.writeFilePromise(V.join(o,"yarn.lock"),"");let a=V.join(o,".yarnrc.yml"),n=await Ke.findProjectCwd(this.context.cwd),A={enableGlobalCache:!(await Ke.find(this.context.cwd,null,{strict:!1})).get("enableGlobalCache"),enableTelemetry:!1,logFilters:[{code:Wu(68),level:de.LogLevel.Discard}]},p=n!==null?V.join(n,".yarnrc.yml"):null;p!==null&&oe.existsSync(p)?(await oe.copyFilePromise(p,a),await Ke.updateConfiguration(o,L=>{let U=je.toMerged(L,A);return Array.isArray(L.plugins)&&(U.plugins=L.plugins.map(z=>{let te=typeof z=="string"?z:z.path,le=ue.isAbsolute(te)?te:ue.resolve(ue.fromPortablePath(n),te);return typeof z=="string"?le:{path:le,spec:z.spec}})),U})):await oe.writeJsonPromise(a,A);let h=this.packages??[this.command],C=W.parseDescriptor(this.command).name,I=await this.cli.run(["add","--fixed","--",...h],{cwd:o,quiet:this.quiet});if(I!==0)return I;this.quiet||this.context.stdout.write(` +`);let v=await Ke.find(o,this.context.plugins),{project:x,workspace:E}=await St.find(v,o);if(E===null)throw new rr(x.cwd,o);await x.restoreInstallState();let R=await un.getWorkspaceAccessibleBinaries(E);return R.has(C)===!1&&R.size===1&&typeof this.packages>"u"&&(C=Array.from(R)[0][0]),await un.executeWorkspaceAccessibleBinary(E,C,this.args,{packageAccessibleBinaries:R,cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr})})}};h0.paths=[["dlx"]],h0.usage=nt.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"],["Install multiple packages for a single command",`yarn dlx -p typescript -p ts-node ts-node --transpile-only -e "console.log('hello!')"`]]});var sdt={commands:[$d,h0]},odt=sdt;var SH={};Vt(SH,{ExecFetcher:()=>x2,ExecResolver:()=>k2,default:()=>cdt,execUtils:()=>wk});Ye();Ye();Pt();var fA="exec:";var wk={};Vt(wk,{loadGeneratorFile:()=>b2,makeLocator:()=>PH,makeSpec:()=>mme,parseSpec:()=>DH});Ye();Pt();function DH(t){let{params:e,selector:r}=W.parseRange(t),o=ue.toPortablePath(r);return{parentLocator:e&&typeof e.locator=="string"?W.parseLocator(e.locator):null,path:o}}function mme({parentLocator:t,path:e,generatorHash:r,protocol:o}){let a=t!==null?{locator:W.stringifyLocator(t)}:{},n=typeof r<"u"?{hash:r}:{};return W.makeRange({protocol:o,source:e,selector:e,params:{...n,...a}})}function PH(t,{parentLocator:e,path:r,generatorHash:o,protocol:a}){return W.makeLocator(t,mme({parentLocator:e,path:r,generatorHash:o,protocol:a}))}async function b2(t,e,r){let{parentLocator:o,path:a}=W.parseFileStyleRange(t,{protocol:e}),n=V.isAbsolute(a)?{packageFs:new gn(Bt.root),prefixPath:Bt.dot,localPath:Bt.root}:await r.fetcher.fetch(o,r),u=n.localPath?{packageFs:new gn(Bt.root),prefixPath:V.relative(Bt.root,n.localPath)}:n;n!==u&&n.releaseFs&&n.releaseFs();let A=u.packageFs,p=V.join(u.prefixPath,a);return await A.readFilePromise(p,"utf8")}var x2=class{supports(e,r){return!!e.reference.startsWith(fA)}getLocalPath(e,r){let{parentLocator:o,path:a}=W.parseFileStyleRange(e.reference,{protocol:fA});if(V.isAbsolute(a))return a;let n=r.fetcher.getLocalPath(o,r);return n===null?null:V.resolve(n,a)}async fetch(e,r){let o=r.checksums.get(e.locatorHash)||null,[a,n,u]=await r.cache.fetchPackageFromCache(e,o,{onHit:()=>r.report.reportCacheHit(e),onMiss:()=>r.report.reportCacheMiss(e),loader:()=>this.fetchFromDisk(e,r),...r.cacheOptions});return{packageFs:a,releaseFs:n,prefixPath:W.getIdentVendorPath(e),localPath:this.getLocalPath(e,r),checksum:u}}async fetchFromDisk(e,r){let o=await b2(e.reference,fA,r);return oe.mktempPromise(async a=>{let n=V.join(a,"generator.js");return await oe.writeFilePromise(n,o),oe.mktempPromise(async u=>{if(await this.generatePackage(u,e,n,r),!oe.existsSync(V.join(u,"build")))throw new Error("The script should have generated a build directory");return await Xi.makeArchiveFromDirectory(V.join(u,"build"),{prefixPath:W.getIdentVendorPath(e),compressionLevel:r.project.configuration.get("compressionLevel")})})})}async generatePackage(e,r,o,a){return await oe.mktempPromise(async n=>{let u=await un.makeScriptEnv({project:a.project,binFolder:n}),A=V.join(e,"runtime.js");return await oe.mktempPromise(async p=>{let h=V.join(p,"buildfile.log"),C=V.join(e,"generator"),I=V.join(e,"build");await oe.mkdirPromise(C),await oe.mkdirPromise(I);let v={tempDir:ue.fromPortablePath(C),buildDir:ue.fromPortablePath(I),locator:W.stringifyLocator(r)};await oe.writeFilePromise(A,` + // Expose 'Module' as a global variable + Object.defineProperty(global, 'Module', { + get: () => require('module'), + configurable: true, + enumerable: false, + }); + + // Expose non-hidden built-in modules as global variables + for (const name of Module.builtinModules.filter((name) => name !== 'module' && !name.startsWith('_'))) { + Object.defineProperty(global, name, { + get: () => require(name), + configurable: true, + enumerable: false, + }); + } + + // Expose the 'execEnv' global variable + Object.defineProperty(global, 'execEnv', { + value: { + ...${JSON.stringify(v)}, + }, + enumerable: true, + }); + `);let x=u.NODE_OPTIONS||"",E=/\s*--require\s+\S*\.pnp\.c?js\s*/g;x=x.replace(E," ").trim(),u.NODE_OPTIONS=x;let{stdout:R,stderr:L}=a.project.configuration.getSubprocessStreams(h,{header:`# This file contains the result of Yarn generating a package (${W.stringifyLocator(r)}) +`,prefix:W.prettyLocator(a.project.configuration,r),report:a.report}),{code:U}=await Ur.pipevp(process.execPath,["--require",ue.fromPortablePath(A),ue.fromPortablePath(o),W.stringifyIdent(r)],{cwd:e,env:u,stdin:null,stdout:R,stderr:L});if(U!==0)throw oe.detachTemp(p),new Error(`Package generation failed (exit code ${U}, logs can be found here: ${de.pretty(a.project.configuration,h,de.Type.PATH)})`)})})}};Ye();Ye();var adt=2,k2=class{supportsDescriptor(e,r){return!!e.range.startsWith(fA)}supportsLocator(e,r){return!!e.reference.startsWith(fA)}shouldPersistResolution(e,r){return!1}bindDescriptor(e,r,o){return W.bindDescriptor(e,{locator:W.stringifyLocator(r)})}getResolutionDependencies(e,r){return{}}async getCandidates(e,r,o){if(!o.fetchOptions)throw new Error("Assertion failed: This resolver cannot be used unless a fetcher is configured");let{path:a,parentLocator:n}=DH(e.range);if(n===null)throw new Error("Assertion failed: The descriptor should have been bound");let u=await b2(W.makeRange({protocol:fA,source:a,selector:a,params:{locator:W.stringifyLocator(n)}}),fA,o.fetchOptions),A=wn.makeHash(`${adt}`,u).slice(0,6);return[PH(e,{parentLocator:n,path:a,generatorHash:A,protocol:fA})]}async getSatisfying(e,r,o,a){let[n]=await this.getCandidates(e,r,a);return{locators:o.filter(u=>u.locatorHash===n.locatorHash),sorted:!1}}async resolve(e,r){if(!r.fetchOptions)throw new Error("Assertion failed: This resolver cannot be used unless a fetcher is configured");let o=await r.fetchOptions.fetcher.fetch(e,r.fetchOptions),a=await je.releaseAfterUseAsync(async()=>await Ot.find(o.prefixPath,{baseFs:o.packageFs}),o.releaseFs);return{...e,version:a.version||"0.0.0",languageName:a.languageName||r.project.configuration.get("defaultLanguageName"),linkType:"HARD",conditions:a.getConditions(),dependencies:r.project.configuration.normalizeDependencyMap(a.dependencies),peerDependencies:a.peerDependencies,dependenciesMeta:a.dependenciesMeta,peerDependenciesMeta:a.peerDependenciesMeta,bin:a.bin}}};var ldt={fetchers:[x2],resolvers:[k2]},cdt=ldt;var xH={};Vt(xH,{FileFetcher:()=>T2,FileResolver:()=>N2,TarballFileFetcher:()=>L2,TarballFileResolver:()=>O2,default:()=>fdt,fileUtils:()=>em});Ye();Pt();var vC=/^(?:[a-zA-Z]:[\\/]|\.{0,2}\/)/,Q2=/^[^?]*\.(?:tar\.gz|tgz)(?:::.*)?$/,Ui="file:";var em={};Vt(em,{fetchArchiveFromLocator:()=>R2,makeArchiveFromLocator:()=>Ik,makeBufferFromLocator:()=>bH,makeLocator:()=>DC,makeSpec:()=>yme,parseSpec:()=>F2});Ye();Pt();function F2(t){let{params:e,selector:r}=W.parseRange(t),o=ue.toPortablePath(r);return{parentLocator:e&&typeof e.locator=="string"?W.parseLocator(e.locator):null,path:o}}function yme({parentLocator:t,path:e,hash:r,protocol:o}){let a=t!==null?{locator:W.stringifyLocator(t)}:{},n=typeof r<"u"?{hash:r}:{};return W.makeRange({protocol:o,source:e,selector:e,params:{...n,...a}})}function DC(t,{parentLocator:e,path:r,hash:o,protocol:a}){return W.makeLocator(t,yme({parentLocator:e,path:r,hash:o,protocol:a}))}async function R2(t,e){let{parentLocator:r,path:o}=W.parseFileStyleRange(t.reference,{protocol:Ui}),a=V.isAbsolute(o)?{packageFs:new gn(Bt.root),prefixPath:Bt.dot,localPath:Bt.root}:await e.fetcher.fetch(r,e),n=a.localPath?{packageFs:new gn(Bt.root),prefixPath:V.relative(Bt.root,a.localPath)}:a;a!==n&&a.releaseFs&&a.releaseFs();let u=n.packageFs,A=V.join(n.prefixPath,o);return await je.releaseAfterUseAsync(async()=>await u.readFilePromise(A),n.releaseFs)}async function Ik(t,{protocol:e,fetchOptions:r,inMemory:o=!1}){let{parentLocator:a,path:n}=W.parseFileStyleRange(t.reference,{protocol:e}),u=V.isAbsolute(n)?{packageFs:new gn(Bt.root),prefixPath:Bt.dot,localPath:Bt.root}:await r.fetcher.fetch(a,r),A=u.localPath?{packageFs:new gn(Bt.root),prefixPath:V.relative(Bt.root,u.localPath)}:u;u!==A&&u.releaseFs&&u.releaseFs();let p=A.packageFs,h=V.join(A.prefixPath,n);return await je.releaseAfterUseAsync(async()=>await Xi.makeArchiveFromDirectory(h,{baseFs:p,prefixPath:W.getIdentVendorPath(t),compressionLevel:r.project.configuration.get("compressionLevel"),inMemory:o}),A.releaseFs)}async function bH(t,{protocol:e,fetchOptions:r}){return(await Ik(t,{protocol:e,fetchOptions:r,inMemory:!0})).getBufferAndClose()}var T2=class{supports(e,r){return!!e.reference.startsWith(Ui)}getLocalPath(e,r){let{parentLocator:o,path:a}=W.parseFileStyleRange(e.reference,{protocol:Ui});if(V.isAbsolute(a))return a;let n=r.fetcher.getLocalPath(o,r);return n===null?null:V.resolve(n,a)}async fetch(e,r){let o=r.checksums.get(e.locatorHash)||null,[a,n,u]=await r.cache.fetchPackageFromCache(e,o,{onHit:()=>r.report.reportCacheHit(e),onMiss:()=>r.report.reportCacheMiss(e,`${W.prettyLocator(r.project.configuration,e)} can't be found in the cache and will be fetched from the disk`),loader:()=>this.fetchFromDisk(e,r),...r.cacheOptions});return{packageFs:a,releaseFs:n,prefixPath:W.getIdentVendorPath(e),localPath:this.getLocalPath(e,r),checksum:u}}async fetchFromDisk(e,r){return Ik(e,{protocol:Ui,fetchOptions:r})}};Ye();Ye();var udt=2,N2=class{supportsDescriptor(e,r){return e.range.match(vC)?!0:!!e.range.startsWith(Ui)}supportsLocator(e,r){return!!e.reference.startsWith(Ui)}shouldPersistResolution(e,r){return!1}bindDescriptor(e,r,o){return vC.test(e.range)&&(e=W.makeDescriptor(e,`${Ui}${e.range}`)),W.bindDescriptor(e,{locator:W.stringifyLocator(r)})}getResolutionDependencies(e,r){return{}}async getCandidates(e,r,o){if(!o.fetchOptions)throw new Error("Assertion failed: This resolver cannot be used unless a fetcher is configured");let{path:a,parentLocator:n}=F2(e.range);if(n===null)throw new Error("Assertion failed: The descriptor should have been bound");let u=await bH(W.makeLocator(e,W.makeRange({protocol:Ui,source:a,selector:a,params:{locator:W.stringifyLocator(n)}})),{protocol:Ui,fetchOptions:o.fetchOptions}),A=wn.makeHash(`${udt}`,u).slice(0,6);return[DC(e,{parentLocator:n,path:a,hash:A,protocol:Ui})]}async getSatisfying(e,r,o,a){let[n]=await this.getCandidates(e,r,a);return{locators:o.filter(u=>u.locatorHash===n.locatorHash),sorted:!1}}async resolve(e,r){if(!r.fetchOptions)throw new Error("Assertion failed: This resolver cannot be used unless a fetcher is configured");let o=await r.fetchOptions.fetcher.fetch(e,r.fetchOptions),a=await je.releaseAfterUseAsync(async()=>await Ot.find(o.prefixPath,{baseFs:o.packageFs}),o.releaseFs);return{...e,version:a.version||"0.0.0",languageName:a.languageName||r.project.configuration.get("defaultLanguageName"),linkType:"HARD",conditions:a.getConditions(),dependencies:r.project.configuration.normalizeDependencyMap(a.dependencies),peerDependencies:a.peerDependencies,dependenciesMeta:a.dependenciesMeta,peerDependenciesMeta:a.peerDependenciesMeta,bin:a.bin}}};Ye();var L2=class{supports(e,r){return Q2.test(e.reference)?!!e.reference.startsWith(Ui):!1}getLocalPath(e,r){return null}async fetch(e,r){let o=r.checksums.get(e.locatorHash)||null,[a,n,u]=await r.cache.fetchPackageFromCache(e,o,{onHit:()=>r.report.reportCacheHit(e),onMiss:()=>r.report.reportCacheMiss(e,`${W.prettyLocator(r.project.configuration,e)} can't be found in the cache and will be fetched from the disk`),loader:()=>this.fetchFromDisk(e,r),...r.cacheOptions});return{packageFs:a,releaseFs:n,prefixPath:W.getIdentVendorPath(e),checksum:u}}async fetchFromDisk(e,r){let o=await R2(e,r);return await Xi.convertToZip(o,{configuration:r.project.configuration,prefixPath:W.getIdentVendorPath(e),stripComponents:1})}};Ye();Ye();Ye();var O2=class{supportsDescriptor(e,r){return Q2.test(e.range)?!!(e.range.startsWith(Ui)||vC.test(e.range)):!1}supportsLocator(e,r){return Q2.test(e.reference)?!!e.reference.startsWith(Ui):!1}shouldPersistResolution(e,r){return!1}bindDescriptor(e,r,o){return vC.test(e.range)&&(e=W.makeDescriptor(e,`${Ui}${e.range}`)),W.bindDescriptor(e,{locator:W.stringifyLocator(r)})}getResolutionDependencies(e,r){return{}}async getCandidates(e,r,o){if(!o.fetchOptions)throw new Error("Assertion failed: This resolver cannot be used unless a fetcher is configured");let{path:a,parentLocator:n}=F2(e.range);if(n===null)throw new Error("Assertion failed: The descriptor should have been bound");let u=DC(e,{parentLocator:n,path:a,hash:"",protocol:Ui}),A=await R2(u,o.fetchOptions),p=wn.makeHash(A).slice(0,6);return[DC(e,{parentLocator:n,path:a,hash:p,protocol:Ui})]}async getSatisfying(e,r,o,a){let[n]=await this.getCandidates(e,r,a);return{locators:o.filter(u=>u.locatorHash===n.locatorHash),sorted:!1}}async resolve(e,r){if(!r.fetchOptions)throw new Error("Assertion failed: This resolver cannot be used unless a fetcher is configured");let o=await r.fetchOptions.fetcher.fetch(e,r.fetchOptions),a=await je.releaseAfterUseAsync(async()=>await Ot.find(o.prefixPath,{baseFs:o.packageFs}),o.releaseFs);return{...e,version:a.version||"0.0.0",languageName:a.languageName||r.project.configuration.get("defaultLanguageName"),linkType:"HARD",conditions:a.getConditions(),dependencies:r.project.configuration.normalizeDependencyMap(a.dependencies),peerDependencies:a.peerDependencies,dependenciesMeta:a.dependenciesMeta,peerDependenciesMeta:a.peerDependenciesMeta,bin:a.bin}}};var Adt={fetchers:[L2,T2],resolvers:[O2,N2]},fdt=Adt;var FH={};Vt(FH,{GithubFetcher:()=>M2,default:()=>hdt,githubUtils:()=>Bk});Ye();Pt();var Bk={};Vt(Bk,{invalidGithubUrlMessage:()=>wme,isGithubUrl:()=>kH,parseGithubUrl:()=>QH});var Eme=$e(Be("querystring")),Cme=[/^https?:\/\/(?:([^/]+?)@)?github.com\/([^/#]+)\/([^/#]+)\/tarball\/([^/#]+)(?:#(.*))?$/,/^https?:\/\/(?:([^/]+?)@)?github.com\/([^/#]+)\/([^/#]+?)(?:\.git)?(?:#(.*))?$/];function kH(t){return t?Cme.some(e=>!!t.match(e)):!1}function QH(t){let e;for(let A of Cme)if(e=t.match(A),e)break;if(!e)throw new Error(wme(t));let[,r,o,a,n="master"]=e,{commit:u}=Eme.default.parse(n);return n=u||n.replace(/[^:]*:/,""),{auth:r,username:o,reponame:a,treeish:n}}function wme(t){return`Input cannot be parsed as a valid GitHub URL ('${t}').`}var M2=class{supports(e,r){return!!kH(e.reference)}getLocalPath(e,r){return null}async fetch(e,r){let o=r.checksums.get(e.locatorHash)||null,[a,n,u]=await r.cache.fetchPackageFromCache(e,o,{onHit:()=>r.report.reportCacheHit(e),onMiss:()=>r.report.reportCacheMiss(e,`${W.prettyLocator(r.project.configuration,e)} can't be found in the cache and will be fetched from GitHub`),loader:()=>this.fetchFromNetwork(e,r),...r.cacheOptions});return{packageFs:a,releaseFs:n,prefixPath:W.getIdentVendorPath(e),checksum:u}}async fetchFromNetwork(e,r){let o=await rn.get(this.getLocatorUrl(e,r),{configuration:r.project.configuration});return await oe.mktempPromise(async a=>{let n=new gn(a);await Xi.extractArchiveTo(o,n,{stripComponents:1});let u=ra.splitRepoUrl(e.reference),A=V.join(a,"package.tgz");await un.prepareExternalProject(a,A,{configuration:r.project.configuration,report:r.report,workspace:u.extra.workspace,locator:e});let p=await oe.readFilePromise(A);return await Xi.convertToZip(p,{configuration:r.project.configuration,prefixPath:W.getIdentVendorPath(e),stripComponents:1})})}getLocatorUrl(e,r){let{auth:o,username:a,reponame:n,treeish:u}=QH(e.reference);return`https://${o?`${o}@`:""}github.com/${a}/${n}/archive/${u}.tar.gz`}};var pdt={hooks:{async fetchHostedRepository(t,e,r){if(t!==null)return t;let o=new M2;if(!o.supports(e,r))return null;try{return await o.fetch(e,r)}catch{return null}}}},hdt=pdt;var RH={};Vt(RH,{TarballHttpFetcher:()=>H2,TarballHttpResolver:()=>j2,default:()=>ddt});Ye();var U2=/^[^?]*\.(?:tar\.gz|tgz)(?:\?.*)?(?:#.*)?$/,_2=/^https?:/;var H2=class{supports(e,r){return U2.test(e.reference)?!!_2.test(e.reference):!1}getLocalPath(e,r){return null}async fetch(e,r){let o=r.checksums.get(e.locatorHash)||null,[a,n,u]=await r.cache.fetchPackageFromCache(e,o,{onHit:()=>r.report.reportCacheHit(e),onMiss:()=>r.report.reportCacheMiss(e,`${W.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),...r.cacheOptions});return{packageFs:a,releaseFs:n,prefixPath:W.getIdentVendorPath(e),checksum:u}}async fetchFromNetwork(e,r){let o=await rn.get(e.reference,{configuration:r.project.configuration});return await Xi.convertToZip(o,{configuration:r.project.configuration,prefixPath:W.getIdentVendorPath(e),stripComponents:1})}};Ye();Ye();var j2=class{supportsDescriptor(e,r){return U2.test(e.range)?!!_2.test(e.range):!1}supportsLocator(e,r){return U2.test(e.reference)?!!_2.test(e.reference):!1}shouldPersistResolution(e,r){return!0}bindDescriptor(e,r,o){return e}getResolutionDependencies(e,r){return{}}async getCandidates(e,r,o){return[W.convertDescriptorToLocator(e)]}async getSatisfying(e,r,o,a){let[n]=await this.getCandidates(e,r,a);return{locators:o.filter(u=>u.locatorHash===n.locatorHash),sorted:!1}}async resolve(e,r){if(!r.fetchOptions)throw new Error("Assertion failed: This resolver cannot be used unless a fetcher is configured");let o=await r.fetchOptions.fetcher.fetch(e,r.fetchOptions),a=await je.releaseAfterUseAsync(async()=>await Ot.find(o.prefixPath,{baseFs:o.packageFs}),o.releaseFs);return{...e,version:a.version||"0.0.0",languageName:a.languageName||r.project.configuration.get("defaultLanguageName"),linkType:"HARD",conditions:a.getConditions(),dependencies:r.project.configuration.normalizeDependencyMap(a.dependencies),peerDependencies:a.peerDependencies,dependenciesMeta:a.dependenciesMeta,peerDependenciesMeta:a.peerDependenciesMeta,bin:a.bin}}};var gdt={fetchers:[H2],resolvers:[j2]},ddt=gdt;var TH={};Vt(TH,{InitCommand:()=>g0,default:()=>ydt});Ye();Ye();Pt();qt();var g0=class extends ut{constructor(){super(...arguments);this.private=ge.Boolean("-p,--private",!1,{description:"Initialize a private package"});this.workspace=ge.Boolean("-w,--workspace",!1,{description:"Initialize a workspace root with a `packages/` directory"});this.install=ge.String("-i,--install",!1,{tolerateBoolean:!0,description:"Initialize a package with a specific bundle that will be locked in the project"});this.name=ge.String("-n,--name",{description:"Initialize a package with the given name"});this.usev2=ge.Boolean("-2",!1,{hidden:!0});this.yes=ge.Boolean("-y,--yes",{hidden:!0})}async execute(){let r=await Ke.find(this.context.cwd,this.context.plugins),o=typeof this.install=="string"?this.install:this.usev2||this.install===!0?"latest":null;return o!==null?await this.executeProxy(r,o):await this.executeRegular(r)}async executeProxy(r,o){if(r.projectCwd!==null&&r.projectCwd!==this.context.cwd)throw new it("Cannot use the --install flag from within a project subdirectory");oe.existsSync(this.context.cwd)||await oe.mkdirPromise(this.context.cwd,{recursive:!0});let a=V.join(this.context.cwd,dr.lockfile);oe.existsSync(a)||await oe.writeFilePromise(a,"");let n=await this.cli.run(["set","version",o],{quiet:!0});if(n!==0)return n;let u=[];return this.private&&u.push("-p"),this.workspace&&u.push("-w"),this.name&&u.push(`-n=${this.name}`),this.yes&&u.push("-y"),await oe.mktempPromise(async A=>{let{code:p}=await Ur.pipevp("yarn",["init",...u],{cwd:this.context.cwd,stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr,env:await un.makeScriptEnv({binFolder:A})});return p})}async executeRegular(r){let o=null;try{o=(await St.find(r,this.context.cwd)).project}catch{o=null}oe.existsSync(this.context.cwd)||await oe.mkdirPromise(this.context.cwd,{recursive:!0});let a=await Ot.tryFind(this.context.cwd),n=a??new Ot,u=Object.fromEntries(r.get("initFields").entries());n.load(u),n.name=n.name??W.makeIdent(r.get("initScope"),this.name??V.basename(this.context.cwd)),n.packageManager=tn&&je.isTaggedYarnVersion(tn)?`yarn@${tn}`:null,(!a&&this.workspace||this.private)&&(n.private=!0),this.workspace&&n.workspaceDefinitions.length===0&&(await oe.mkdirPromise(V.join(this.context.cwd,"packages"),{recursive:!0}),n.workspaceDefinitions=[{pattern:"packages/*"}]);let A={};n.exportTo(A);let p=V.join(this.context.cwd,Ot.fileName);await oe.changeFilePromise(p,`${JSON.stringify(A,null,2)} +`,{automaticNewlines:!0});let h=[p],C=V.join(this.context.cwd,"README.md");if(oe.existsSync(C)||(await oe.writeFilePromise(C,`# ${W.stringifyIdent(n.name)} +`),h.push(C)),!o||o.cwd===this.context.cwd){let I=V.join(this.context.cwd,dr.lockfile);oe.existsSync(I)||(await oe.writeFilePromise(I,""),h.push(I));let x=[".yarn/*","!.yarn/patches","!.yarn/plugins","!.yarn/releases","!.yarn/sdks","!.yarn/versions","","# Swap the comments on the following lines if you wish to use zero-installs","# In that case, don't forget to run `yarn config set enableGlobalCache false`!","# Documentation here: https://yarnpkg.com/features/zero-installs","","#!.yarn/cache",".pnp.*"].map(he=>`${he} +`).join(""),E=V.join(this.context.cwd,".gitignore");oe.existsSync(E)||(await oe.writeFilePromise(E,x),h.push(E));let L=["/.yarn/** linguist-vendored","/.yarn/releases/* binary","/.yarn/plugins/**/* binary","/.pnp.* binary linguist-generated"].map(he=>`${he} +`).join(""),U=V.join(this.context.cwd,".gitattributes");oe.existsSync(U)||(await oe.writeFilePromise(U,L),h.push(U));let z={["*"]:{endOfLine:"lf",insertFinalNewline:!0},["*.{js,json,yml}"]:{charset:"utf-8",indentStyle:"space",indentSize:2}};je.mergeIntoTarget(z,r.get("initEditorConfig"));let te=`root = true +`;for(let[he,Ae]of Object.entries(z)){te+=` +[${he}] +`;for(let[ye,ae]of Object.entries(Ae)){let Ie=ye.replace(/[A-Z]/g,Fe=>`_${Fe.toLowerCase()}`);te+=`${Ie} = ${ae} +`}}let le=V.join(this.context.cwd,".editorconfig");oe.existsSync(le)||(await oe.writeFilePromise(le,te),h.push(le)),await this.cli.run(["install"],{quiet:!0}),oe.existsSync(V.join(this.context.cwd,".git"))||(await Ur.execvp("git",["init"],{cwd:this.context.cwd}),await Ur.execvp("git",["add","--",...h],{cwd:this.context.cwd}),await Ur.execvp("git",["commit","--allow-empty","-m","First commit"],{cwd:this.context.cwd}))}}};g0.paths=[["init"]],g0.usage=nt.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 mdt={configuration:{initScope:{description:"Scope used when creating packages via the init command",type:"STRING",default:null},initFields:{description:"Additional fields to set when creating packages via the init command",type:"MAP",valueDefinition:{description:"",type:"ANY"}},initEditorConfig:{description:"Extra rules to define in the generator editorconfig",type:"MAP",valueDefinition:{description:"",type:"ANY"}}},commands:[g0]},ydt=mdt;var Lj={};Vt(Lj,{SearchCommand:()=>C0,UpgradeInteractiveCommand:()=>I0,default:()=>oIt});Ye();var Ime=$e(Be("os"));function PC({stdout:t}){if(Ime.default.endianness()==="BE")throw new Error("Interactive commands cannot be used on big-endian systems because ink depends on yoga-layout-prebuilt which only supports little-endian architectures");if(!t.isTTY)throw new Error("Interactive commands can only be used inside a TTY environment")}qt();var Tye=$e(ZH()),$H={appId:"OFCNCOG2CU",apiKey:"6fe4476ee5a1832882e326b506d14126",indexName:"npm-search"},gyt=(0,Tye.default)($H.appId,$H.apiKey).initIndex($H.indexName),e6=async(t,e=0)=>await gyt.search(t,{analyticsTags:["yarn-plugin-interactive-tools"],attributesToRetrieve:["name","version","owner","repository","humanDownloadsLast30Days"],page:e,hitsPerPage:10});var HB=["regular","dev","peer"],C0=class extends ut{async execute(){PC(this.context);let{Gem:e}=await Promise.resolve().then(()=>(AQ(),Dj)),{ScrollableItems:r}=await Promise.resolve().then(()=>(gQ(),hQ)),{useKeypress:o}=await Promise.resolve().then(()=>(MB(),zwe)),{useMinistore:a}=await Promise.resolve().then(()=>(Qj(),kj)),{renderForm:n}=await Promise.resolve().then(()=>(EQ(),yQ)),{default:u}=await Promise.resolve().then(()=>$e(sIe())),{Box:A,Text:p}=await Promise.resolve().then(()=>$e(ic())),{default:h,useEffect:C,useState:I}=await Promise.resolve().then(()=>$e(sn())),v=await Ke.find(this.context.cwd,this.context.plugins),x=()=>h.createElement(A,{flexDirection:"row"},h.createElement(A,{flexDirection:"column",width:48},h.createElement(A,null,h.createElement(p,null,"Press ",h.createElement(p,{bold:!0,color:"cyanBright"},""),"/",h.createElement(p,{bold:!0,color:"cyanBright"},"")," to move between packages.")),h.createElement(A,null,h.createElement(p,null,"Press ",h.createElement(p,{bold:!0,color:"cyanBright"},"")," to select a package.")),h.createElement(A,null,h.createElement(p,null,"Press ",h.createElement(p,{bold:!0,color:"cyanBright"},"")," again to change the target."))),h.createElement(A,{flexDirection:"column"},h.createElement(A,{marginLeft:1},h.createElement(p,null,"Press ",h.createElement(p,{bold:!0,color:"cyanBright"},"")," to install the selected packages.")),h.createElement(A,{marginLeft:1},h.createElement(p,null,"Press ",h.createElement(p,{bold:!0,color:"cyanBright"},"")," to abort.")))),E=()=>h.createElement(h.Fragment,null,h.createElement(A,{width:15},h.createElement(p,{bold:!0,underline:!0,color:"gray"},"Owner")),h.createElement(A,{width:11},h.createElement(p,{bold:!0,underline:!0,color:"gray"},"Version")),h.createElement(A,{width:10},h.createElement(p,{bold:!0,underline:!0,color:"gray"},"Downloads"))),R=()=>h.createElement(A,{width:17},h.createElement(p,{bold:!0,underline:!0,color:"gray"},"Target")),L=({hit:ae,active:Ie})=>{let[Fe,g]=a(ae.name,null);o({active:Ie},(ce,ne)=>{if(ne.name!=="space")return;if(!Fe){g(HB[0]);return}let ee=HB.indexOf(Fe)+1;ee===HB.length?g(null):g(HB[ee])},[Fe,g]);let Ee=W.parseIdent(ae.name),De=W.prettyIdent(v,Ee);return h.createElement(A,null,h.createElement(A,{width:45},h.createElement(p,{bold:!0,wrap:"wrap"},De)),h.createElement(A,{width:14,marginLeft:1},h.createElement(p,{bold:!0,wrap:"truncate"},ae.owner.name)),h.createElement(A,{width:10,marginLeft:1},h.createElement(p,{italic:!0,wrap:"truncate"},ae.version)),h.createElement(A,{width:16,marginLeft:1},h.createElement(p,null,ae.humanDownloadsLast30Days)))},U=({name:ae,active:Ie})=>{let[Fe]=a(ae,null),g=W.parseIdent(ae);return h.createElement(A,null,h.createElement(A,{width:47},h.createElement(p,{bold:!0}," - ",W.prettyIdent(v,g))),HB.map(Ee=>h.createElement(A,{key:Ee,width:14,marginLeft:1},h.createElement(p,null," ",h.createElement(e,{active:Fe===Ee})," ",h.createElement(p,{bold:!0},Ee)))))},z=()=>h.createElement(A,{marginTop:1},h.createElement(p,null,"Powered by Algolia.")),le=await n(({useSubmit:ae})=>{let Ie=a();ae(Ie);let Fe=Array.from(Ie.keys()).filter(H=>Ie.get(H)!==null),[g,Ee]=I(""),[De,ce]=I(0),[ne,ee]=I([]),we=H=>{H.match(/\t| /)||Ee(H)},xe=async()=>{ce(0);let H=await e6(g);H.query===g&&ee(H.hits)},ht=async()=>{let H=await e6(g,De+1);H.query===g&&H.page-1===De&&(ce(H.page),ee([...ne,...H.hits]))};return C(()=>{g?xe():ee([])},[g]),h.createElement(A,{flexDirection:"column"},h.createElement(x,null),h.createElement(A,{flexDirection:"row",marginTop:1},h.createElement(p,{bold:!0},"Search: "),h.createElement(A,{width:41},h.createElement(u,{value:g,onChange:we,placeholder:"i.e. babel, webpack, react...",showCursor:!1})),h.createElement(E,null)),ne.length?h.createElement(r,{radius:2,loop:!1,children:ne.map(H=>h.createElement(L,{key:H.name,hit:H,active:!1})),willReachEnd:ht}):h.createElement(p,{color:"gray"},"Start typing..."),h.createElement(A,{flexDirection:"row",marginTop:1},h.createElement(A,{width:49},h.createElement(p,{bold:!0},"Selected:")),h.createElement(R,null)),Fe.length?Fe.map(H=>h.createElement(U,{key:H,name:H,active:!1})):h.createElement(p,{color:"gray"},"No selected packages..."),h.createElement(z,null))},{},{stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr});if(typeof le>"u")return 1;let he=Array.from(le.keys()).filter(ae=>le.get(ae)==="regular"),Ae=Array.from(le.keys()).filter(ae=>le.get(ae)==="dev"),ye=Array.from(le.keys()).filter(ae=>le.get(ae)==="peer");return he.length&&await this.cli.run(["add",...he]),Ae.length&&await this.cli.run(["add","--dev",...Ae]),ye&&await this.cli.run(["add","--peer",...ye]),0}};C0.paths=[["search"]],C0.usage=nt.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"]]});Ye();qt();w_();var fIe=$e(Jn()),AIe=/^((?:[\^~]|>=?)?)([0-9]+)(\.[0-9]+)(\.[0-9]+)((?:-\S+)?)$/,pIe=(t,e)=>t.length>0?[t.slice(0,e)].concat(pIe(t.slice(e),e)):[],I0=class extends ut{async execute(){PC(this.context);let{ItemOptions:e}=await Promise.resolve().then(()=>(uIe(),cIe)),{Pad:r}=await Promise.resolve().then(()=>(Nj(),lIe)),{ScrollableItems:o}=await Promise.resolve().then(()=>(gQ(),hQ)),{useMinistore:a}=await Promise.resolve().then(()=>(Qj(),kj)),{renderForm:n}=await Promise.resolve().then(()=>(EQ(),yQ)),{Box:u,Text:A}=await Promise.resolve().then(()=>$e(ic())),{default:p,useEffect:h,useRef:C,useState:I}=await Promise.resolve().then(()=>$e(sn())),v=await Ke.find(this.context.cwd,this.context.plugins),{project:x,workspace:E}=await St.find(v,this.context.cwd),R=await Lr.find(v);if(!E)throw new rr(x.cwd,this.context.cwd);await x.restoreInstallState({restoreResolutions:!1});let L=this.context.stdout.rows-7,U=(Ee,De)=>{let ce=ppe(Ee,De),ne="";for(let ee of ce)ee.added?ne+=de.pretty(v,ee.value,"green"):ee.removed||(ne+=ee.value);return ne},z=(Ee,De)=>{if(Ee===De)return De;let ce=W.parseRange(Ee),ne=W.parseRange(De),ee=ce.selector.match(AIe),we=ne.selector.match(AIe);if(!ee||!we)return U(Ee,De);let xe=["gray","red","yellow","green","magenta"],ht=null,H="";for(let lt=1;lt{let ne=await Jc.fetchDescriptorFrom(Ee,ce,{project:x,cache:R,preserveModifier:De,workspace:E});return ne!==null?ne.range:Ee.range},le=async Ee=>{let De=fIe.default.valid(Ee.range)?`^${Ee.range}`:Ee.range,[ce,ne]=await Promise.all([te(Ee,Ee.range,De).catch(()=>null),te(Ee,Ee.range,"latest").catch(()=>null)]),ee=[{value:null,label:Ee.range}];return ce&&ce!==Ee.range?ee.push({value:ce,label:z(Ee.range,ce)}):ee.push({value:null,label:""}),ne&&ne!==ce&&ne!==Ee.range?ee.push({value:ne,label:z(Ee.range,ne)}):ee.push({value:null,label:""}),ee},he=()=>p.createElement(u,{flexDirection:"row"},p.createElement(u,{flexDirection:"column",width:49},p.createElement(u,{marginLeft:1},p.createElement(A,null,"Press ",p.createElement(A,{bold:!0,color:"cyanBright"},""),"/",p.createElement(A,{bold:!0,color:"cyanBright"},"")," to select packages.")),p.createElement(u,{marginLeft:1},p.createElement(A,null,"Press ",p.createElement(A,{bold:!0,color:"cyanBright"},""),"/",p.createElement(A,{bold:!0,color:"cyanBright"},"")," to select versions."))),p.createElement(u,{flexDirection:"column"},p.createElement(u,{marginLeft:1},p.createElement(A,null,"Press ",p.createElement(A,{bold:!0,color:"cyanBright"},"")," to install.")),p.createElement(u,{marginLeft:1},p.createElement(A,null,"Press ",p.createElement(A,{bold:!0,color:"cyanBright"},"")," to abort.")))),Ae=()=>p.createElement(u,{flexDirection:"row",paddingTop:1,paddingBottom:1},p.createElement(u,{width:50},p.createElement(A,{bold:!0},p.createElement(A,{color:"greenBright"},"?")," Pick the packages you want to upgrade.")),p.createElement(u,{width:17},p.createElement(A,{bold:!0,underline:!0,color:"gray"},"Current")),p.createElement(u,{width:17},p.createElement(A,{bold:!0,underline:!0,color:"gray"},"Range")),p.createElement(u,{width:17},p.createElement(A,{bold:!0,underline:!0,color:"gray"},"Latest"))),ye=({active:Ee,descriptor:De,suggestions:ce})=>{let[ne,ee]=a(De.descriptorHash,null),we=W.stringifyIdent(De),xe=Math.max(0,45-we.length);return p.createElement(p.Fragment,null,p.createElement(u,null,p.createElement(u,{width:45},p.createElement(A,{bold:!0},W.prettyIdent(v,De)),p.createElement(r,{active:Ee,length:xe})),p.createElement(e,{active:Ee,options:ce,value:ne,skewer:!0,onChange:ee,sizes:[17,17,17]})))},ae=({dependencies:Ee})=>{let[De,ce]=I(Ee.map(()=>null)),ne=C(!0),ee=async we=>{let xe=await le(we);return xe.filter(ht=>ht.label!=="").length<=1?null:{descriptor:we,suggestions:xe}};return h(()=>()=>{ne.current=!1},[]),h(()=>{let we=Math.trunc(L*1.75),xe=Ee.slice(0,we),ht=Ee.slice(we),H=pIe(ht,L),lt=xe.map(ee).reduce(async(Te,ke)=>{await Te;let be=await ke;be!==null&&(!ne.current||ce(_e=>{let Re=_e.findIndex(He=>He===null),ze=[..._e];return ze[Re]=be,ze}))},Promise.resolve());H.reduce((Te,ke)=>Promise.all(ke.map(be=>Promise.resolve().then(()=>ee(be)))).then(async be=>{be=be.filter(_e=>_e!==null),await Te,ne.current&&ce(_e=>{let Re=_e.findIndex(ze=>ze===null);return _e.slice(0,Re).concat(be).concat(_e.slice(Re+be.length))})}),lt).then(()=>{ne.current&&ce(Te=>Te.filter(ke=>ke!==null))})},[]),De.length?p.createElement(o,{radius:L>>1,children:De.map((we,xe)=>we!==null?p.createElement(ye,{key:xe,active:!1,descriptor:we.descriptor,suggestions:we.suggestions}):p.createElement(A,{key:xe},"Loading..."))}):p.createElement(A,null,"No upgrades found")},Fe=await n(({useSubmit:Ee})=>{Ee(a());let De=new Map;for(let ne of x.workspaces)for(let ee of["dependencies","devDependencies"])for(let we of ne.manifest[ee].values())x.tryWorkspaceByDescriptor(we)===null&&(we.range.startsWith("link:")||De.set(we.descriptorHash,we));let ce=je.sortMap(De.values(),ne=>W.stringifyDescriptor(ne));return p.createElement(u,{flexDirection:"column"},p.createElement(he,null),p.createElement(Ae,null),p.createElement(ae,{dependencies:ce}))},{},{stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr});if(typeof Fe>"u")return 1;let g=!1;for(let Ee of x.workspaces)for(let De of["dependencies","devDependencies"]){let ce=Ee.manifest[De];for(let ne of ce.values()){let ee=Fe.get(ne.descriptorHash);typeof ee<"u"&&ee!==null&&(ce.set(ne.identHash,W.makeDescriptor(ne,ee)),g=!0)}}return g?await x.installWithNewReport({quiet:this.context.quiet,stdout:this.context.stdout},{cache:R}):0}};I0.paths=[["upgrade-interactive"]],I0.usage=nt.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 sIt={commands:[C0,I0]},oIt=sIt;var Oj={};Vt(Oj,{LinkFetcher:()=>qB,LinkResolver:()=>GB,PortalFetcher:()=>YB,PortalResolver:()=>WB,default:()=>lIt});Ye();Pt();var $f="portal:",ep="link:";var qB=class{supports(e,r){return!!e.reference.startsWith(ep)}getLocalPath(e,r){let{parentLocator:o,path:a}=W.parseFileStyleRange(e.reference,{protocol:ep});if(V.isAbsolute(a))return a;let n=r.fetcher.getLocalPath(o,r);return n===null?null:V.resolve(n,a)}async fetch(e,r){let{parentLocator:o,path:a}=W.parseFileStyleRange(e.reference,{protocol:ep}),n=V.isAbsolute(a)?{packageFs:new gn(Bt.root),prefixPath:Bt.dot,localPath:Bt.root}:await r.fetcher.fetch(o,r),u=n.localPath?{packageFs:new gn(Bt.root),prefixPath:V.relative(Bt.root,n.localPath),localPath:Bt.root}:n;n!==u&&n.releaseFs&&n.releaseFs();let A=u.packageFs,p=V.resolve(u.localPath??u.packageFs.getRealPath(),u.prefixPath,a);return n.localPath?{packageFs:new gn(p,{baseFs:A}),releaseFs:u.releaseFs,prefixPath:Bt.dot,discardFromLookup:!0,localPath:p}:{packageFs:new _u(p,{baseFs:A}),releaseFs:u.releaseFs,prefixPath:Bt.dot,discardFromLookup:!0}}};Ye();Pt();var GB=class{supportsDescriptor(e,r){return!!e.range.startsWith(ep)}supportsLocator(e,r){return!!e.reference.startsWith(ep)}shouldPersistResolution(e,r){return!1}bindDescriptor(e,r,o){return W.bindDescriptor(e,{locator:W.stringifyLocator(r)})}getResolutionDependencies(e,r){return{}}async getCandidates(e,r,o){let a=e.range.slice(ep.length);return[W.makeLocator(e,`${ep}${ue.toPortablePath(a)}`)]}async getSatisfying(e,r,o,a){let[n]=await this.getCandidates(e,r,a);return{locators:o.filter(u=>u.locatorHash===n.locatorHash),sorted:!1}}async resolve(e,r){return{...e,version:"0.0.0",languageName:r.project.configuration.get("defaultLanguageName"),linkType:"SOFT",conditions:null,dependencies:new Map,peerDependencies:new Map,dependenciesMeta:new Map,peerDependenciesMeta:new Map,bin:new Map}}};Ye();Pt();var YB=class{supports(e,r){return!!e.reference.startsWith($f)}getLocalPath(e,r){let{parentLocator:o,path:a}=W.parseFileStyleRange(e.reference,{protocol:$f});if(V.isAbsolute(a))return a;let n=r.fetcher.getLocalPath(o,r);return n===null?null:V.resolve(n,a)}async fetch(e,r){let{parentLocator:o,path:a}=W.parseFileStyleRange(e.reference,{protocol:$f}),n=V.isAbsolute(a)?{packageFs:new gn(Bt.root),prefixPath:Bt.dot,localPath:Bt.root}:await r.fetcher.fetch(o,r),u=n.localPath?{packageFs:new gn(Bt.root),prefixPath:V.relative(Bt.root,n.localPath),localPath:Bt.root}:n;n!==u&&n.releaseFs&&n.releaseFs();let A=u.packageFs,p=V.resolve(u.localPath??u.packageFs.getRealPath(),u.prefixPath,a);return n.localPath?{packageFs:new gn(p,{baseFs:A}),releaseFs:u.releaseFs,prefixPath:Bt.dot,localPath:p}:{packageFs:new _u(p,{baseFs:A}),releaseFs:u.releaseFs,prefixPath:Bt.dot}}};Ye();Ye();Pt();var WB=class{supportsDescriptor(e,r){return!!e.range.startsWith($f)}supportsLocator(e,r){return!!e.reference.startsWith($f)}shouldPersistResolution(e,r){return!1}bindDescriptor(e,r,o){return W.bindDescriptor(e,{locator:W.stringifyLocator(r)})}getResolutionDependencies(e,r){return{}}async getCandidates(e,r,o){let a=e.range.slice($f.length);return[W.makeLocator(e,`${$f}${ue.toPortablePath(a)}`)]}async getSatisfying(e,r,o,a){let[n]=await this.getCandidates(e,r,a);return{locators:o.filter(u=>u.locatorHash===n.locatorHash),sorted:!1}}async resolve(e,r){if(!r.fetchOptions)throw new Error("Assertion failed: This resolver cannot be used unless a fetcher is configured");let o=await r.fetchOptions.fetcher.fetch(e,r.fetchOptions),a=await je.releaseAfterUseAsync(async()=>await Ot.find(o.prefixPath,{baseFs:o.packageFs}),o.releaseFs);return{...e,version:a.version||"0.0.0",languageName:a.languageName||r.project.configuration.get("defaultLanguageName"),linkType:"SOFT",conditions:a.getConditions(),dependencies:r.project.configuration.normalizeDependencyMap(a.dependencies),peerDependencies:a.peerDependencies,dependenciesMeta:a.dependenciesMeta,peerDependenciesMeta:a.peerDependenciesMeta,bin:a.bin}}};var aIt={fetchers:[qB,YB],resolvers:[GB,WB]},lIt=aIt;var wq={};Vt(wq,{NodeModulesLinker:()=>lv,NodeModulesMode:()=>mq,PnpLooseLinker:()=>cv,default:()=>v1t});Pt();Ye();Pt();Pt();var Uj=(t,e)=>`${t}@${e}`,hIe=(t,e)=>{let r=e.indexOf("#"),o=r>=0?e.substring(r+1):e;return Uj(t,o)};var mIe=(t,e={})=>{let r=e.debugLevel||Number(process.env.NM_DEBUG_LEVEL||-1),o=e.check||r>=9,a=e.hoistingLimits||new Map,n={check:o,debugLevel:r,hoistingLimits:a,fastLookupPossible:!0},u;n.debugLevel>=0&&(u=Date.now());let A=gIt(t,n),p=!1,h=0;do p=_j(A,[A],new Set([A.locator]),new Map,n).anotherRoundNeeded,n.fastLookupPossible=!1,h++;while(p);if(n.debugLevel>=0&&console.log(`hoist time: ${Date.now()-u}ms, rounds: ${h}`),n.debugLevel>=1){let C=KB(A);if(_j(A,[A],new Set([A.locator]),new Map,n).isGraphChanged)throw new Error(`The hoisting result is not terminal, prev tree: +${C}, next tree: +${KB(A)}`);let v=yIe(A);if(v)throw new Error(`${v}, after hoisting finished: +${KB(A)}`)}return n.debugLevel>=2&&console.log(KB(A)),dIt(A)},cIt=t=>{let e=t[t.length-1],r=new Map,o=new Set,a=n=>{if(!o.has(n)){o.add(n);for(let u of n.hoistedDependencies.values())r.set(u.name,u);for(let u of n.dependencies.values())n.peerNames.has(u.name)||a(u)}};return a(e),r},uIt=t=>{let e=t[t.length-1],r=new Map,o=new Set,a=new Set,n=(u,A)=>{if(o.has(u))return;o.add(u);for(let h of u.hoistedDependencies.values())if(!A.has(h.name)){let C;for(let I of t)C=I.dependencies.get(h.name),C&&r.set(C.name,C)}let p=new Set;for(let h of u.dependencies.values())p.add(h.name);for(let h of u.dependencies.values())u.peerNames.has(h.name)||n(h,p)};return n(e,a),r},gIe=(t,e)=>{if(e.decoupled)return e;let{name:r,references:o,ident:a,locator:n,dependencies:u,originalDependencies:A,hoistedDependencies:p,peerNames:h,reasons:C,isHoistBorder:I,hoistPriority:v,dependencyKind:x,hoistedFrom:E,hoistedTo:R}=e,L={name:r,references:new Set(o),ident:a,locator:n,dependencies:new Map(u),originalDependencies:new Map(A),hoistedDependencies:new Map(p),peerNames:new Set(h),reasons:new Map(C),decoupled:!0,isHoistBorder:I,hoistPriority:v,dependencyKind:x,hoistedFrom:new Map(E),hoistedTo:new Map(R)},U=L.dependencies.get(r);return U&&U.ident==L.ident&&L.dependencies.set(r,L),t.dependencies.set(L.name,L),L},AIt=(t,e)=>{let r=new Map([[t.name,[t.ident]]]);for(let a of t.dependencies.values())t.peerNames.has(a.name)||r.set(a.name,[a.ident]);let o=Array.from(e.keys());o.sort((a,n)=>{let u=e.get(a),A=e.get(n);return A.hoistPriority!==u.hoistPriority?A.hoistPriority-u.hoistPriority:A.peerDependents.size!==u.peerDependents.size?A.peerDependents.size-u.peerDependents.size:A.dependents.size-u.dependents.size});for(let a of o){let n=a.substring(0,a.indexOf("@",1)),u=a.substring(n.length+1);if(!t.peerNames.has(n)){let A=r.get(n);A||(A=[],r.set(n,A)),A.indexOf(u)<0&&A.push(u)}}return r},Mj=t=>{let e=new Set,r=(o,a=new Set)=>{if(!a.has(o)){a.add(o);for(let n of o.peerNames)if(!t.peerNames.has(n)){let u=t.dependencies.get(n);u&&!e.has(u)&&r(u,a)}e.add(o)}};for(let o of t.dependencies.values())t.peerNames.has(o.name)||r(o);return e},_j=(t,e,r,o,a,n=new Set)=>{let u=e[e.length-1];if(n.has(u))return{anotherRoundNeeded:!1,isGraphChanged:!1};n.add(u);let A=mIt(u),p=AIt(u,A),h=t==u?new Map:a.fastLookupPossible?cIt(e):uIt(e),C,I=!1,v=!1,x=new Map(Array.from(p.entries()).map(([R,L])=>[R,L[0]])),E=new Map;do{let R=hIt(t,e,r,h,x,p,o,E,a);R.isGraphChanged&&(v=!0),R.anotherRoundNeeded&&(I=!0),C=!1;for(let[L,U]of p)U.length>1&&!u.dependencies.has(L)&&(x.delete(L),U.shift(),x.set(L,U[0]),C=!0)}while(C);for(let R of u.dependencies.values())if(!u.peerNames.has(R.name)&&!r.has(R.locator)){r.add(R.locator);let L=_j(t,[...e,R],r,E,a);L.isGraphChanged&&(v=!0),L.anotherRoundNeeded&&(I=!0),r.delete(R.locator)}return{anotherRoundNeeded:I,isGraphChanged:v}},fIt=t=>{for(let[e,r]of t.dependencies)if(!t.peerNames.has(e)&&r.ident!==t.ident)return!0;return!1},pIt=(t,e,r,o,a,n,u,A,{outputReason:p,fastLookupPossible:h})=>{let C,I=null,v=new Set;p&&(C=`${Array.from(e).map(L=>no(L)).join("\u2192")}`);let x=r[r.length-1],R=!(o.ident===x.ident);if(p&&!R&&(I="- self-reference"),R&&(R=o.dependencyKind!==1,p&&!R&&(I="- workspace")),R&&o.dependencyKind===2&&(R=!fIt(o),p&&!R&&(I="- external soft link with unhoisted dependencies")),R&&(R=x.dependencyKind!==1||x.hoistedFrom.has(o.name)||e.size===1,p&&!R&&(I=x.reasons.get(o.name))),R&&(R=!t.peerNames.has(o.name),p&&!R&&(I=`- cannot shadow peer: ${no(t.originalDependencies.get(o.name).locator)} at ${C}`)),R){let L=!1,U=a.get(o.name);if(L=!U||U.ident===o.ident,p&&!L&&(I=`- filled by: ${no(U.locator)} at ${C}`),L)for(let z=r.length-1;z>=1;z--){let le=r[z].dependencies.get(o.name);if(le&&le.ident!==o.ident){L=!1;let he=A.get(x);he||(he=new Set,A.set(x,he)),he.add(o.name),p&&(I=`- filled by ${no(le.locator)} at ${r.slice(0,z).map(Ae=>no(Ae.locator)).join("\u2192")}`);break}}R=L}if(R&&(R=n.get(o.name)===o.ident,p&&!R&&(I=`- filled by: ${no(u.get(o.name)[0])} at ${C}`)),R){let L=!0,U=new Set(o.peerNames);for(let z=r.length-1;z>=1;z--){let te=r[z];for(let le of U){if(te.peerNames.has(le)&&te.originalDependencies.has(le))continue;let he=te.dependencies.get(le);he&&t.dependencies.get(le)!==he&&(z===r.length-1?v.add(he):(v=null,L=!1,p&&(I=`- peer dependency ${no(he.locator)} from parent ${no(te.locator)} was not hoisted to ${C}`))),U.delete(le)}if(!L)break}R=L}if(R&&!h)for(let L of o.hoistedDependencies.values()){let U=a.get(L.name)||t.dependencies.get(L.name);if(!U||L.ident!==U.ident){R=!1,p&&(I=`- previously hoisted dependency mismatch, needed: ${no(L.locator)}, available: ${no(U?.locator)}`);break}}return v!==null&&v.size>0?{isHoistable:2,dependsOn:v,reason:I}:{isHoistable:R?0:1,reason:I}},CQ=t=>`${t.name}@${t.locator}`,hIt=(t,e,r,o,a,n,u,A,p)=>{let h=e[e.length-1],C=new Set,I=!1,v=!1,x=(U,z,te,le,he)=>{if(C.has(le))return;let Ae=[...z,CQ(le)],ye=[...te,CQ(le)],ae=new Map,Ie=new Map;for(let ce of Mj(le)){let ne=pIt(h,r,[h,...U,le],ce,o,a,n,A,{outputReason:p.debugLevel>=2,fastLookupPossible:p.fastLookupPossible});if(Ie.set(ce,ne),ne.isHoistable===2)for(let ee of ne.dependsOn){let we=ae.get(ee.name)||new Set;we.add(ce.name),ae.set(ee.name,we)}}let Fe=new Set,g=(ce,ne,ee)=>{if(!Fe.has(ce)){Fe.add(ce),Ie.set(ce,{isHoistable:1,reason:ee});for(let we of ae.get(ce.name)||[])g(le.dependencies.get(we),ne,p.debugLevel>=2?`- peer dependency ${no(ce.locator)} from parent ${no(le.locator)} was not hoisted`:"")}};for(let[ce,ne]of Ie)ne.isHoistable===1&&g(ce,ne,ne.reason);let Ee=!1;for(let ce of Ie.keys())if(!Fe.has(ce)){v=!0;let ne=u.get(le);ne&&ne.has(ce.name)&&(I=!0),Ee=!0,le.dependencies.delete(ce.name),le.hoistedDependencies.set(ce.name,ce),le.reasons.delete(ce.name);let ee=h.dependencies.get(ce.name);if(p.debugLevel>=2){let we=Array.from(z).concat([le.locator]).map(ht=>no(ht)).join("\u2192"),xe=h.hoistedFrom.get(ce.name);xe||(xe=[],h.hoistedFrom.set(ce.name,xe)),xe.push(we),le.hoistedTo.set(ce.name,Array.from(e).map(ht=>no(ht.locator)).join("\u2192"))}if(!ee)h.ident!==ce.ident&&(h.dependencies.set(ce.name,ce),he.add(ce));else for(let we of ce.references)ee.references.add(we)}if(le.dependencyKind===2&&Ee&&(I=!0),p.check){let ce=yIe(t);if(ce)throw new Error(`${ce}, after hoisting dependencies of ${[h,...U,le].map(ne=>no(ne.locator)).join("\u2192")}: +${KB(t)}`)}let De=Mj(le);for(let ce of De)if(Fe.has(ce)){let ne=Ie.get(ce);if((a.get(ce.name)===ce.ident||!le.reasons.has(ce.name))&&ne.isHoistable!==0&&le.reasons.set(ce.name,ne.reason),!ce.isHoistBorder&&ye.indexOf(CQ(ce))<0){C.add(le);let we=gIe(le,ce);x([...U,le],Ae,ye,we,R),C.delete(le)}}},E,R=new Set(Mj(h)),L=Array.from(e).map(U=>CQ(U));do{E=R,R=new Set;for(let U of E){if(U.locator===h.locator||U.isHoistBorder)continue;let z=gIe(h,U);x([],Array.from(r),L,z,R)}}while(R.size>0);return{anotherRoundNeeded:I,isGraphChanged:v}},yIe=t=>{let e=[],r=new Set,o=new Set,a=(n,u,A)=>{if(r.has(n)||(r.add(n),o.has(n)))return;let p=new Map(u);for(let h of n.dependencies.values())n.peerNames.has(h.name)||p.set(h.name,h);for(let h of n.originalDependencies.values()){let C=p.get(h.name),I=()=>`${Array.from(o).concat([n]).map(v=>no(v.locator)).join("\u2192")}`;if(n.peerNames.has(h.name)){let v=u.get(h.name);(v!==C||!v||v.ident!==h.ident)&&e.push(`${I()} - broken peer promise: expected ${h.ident} but found ${v&&v.ident}`)}else{let v=A.hoistedFrom.get(n.name),x=n.hoistedTo.get(h.name),E=`${v?` hoisted from ${v.join(", ")}`:""}`,R=`${x?` hoisted to ${x}`:""}`,L=`${I()}${E}`;C?C.ident!==h.ident&&e.push(`${L} - broken require promise for ${h.name}${R}: expected ${h.ident}, but found: ${C.ident}`):e.push(`${L} - broken require promise: no required dependency ${h.name}${R} found`)}}o.add(n);for(let h of n.dependencies.values())n.peerNames.has(h.name)||a(h,p,n);o.delete(n)};return a(t,t.dependencies,t),e.join(` +`)},gIt=(t,e)=>{let{identName:r,name:o,reference:a,peerNames:n}=t,u={name:o,references:new Set([a]),locator:Uj(r,a),ident:hIe(r,a),dependencies:new Map,originalDependencies:new Map,hoistedDependencies:new Map,peerNames:new Set(n),reasons:new Map,decoupled:!0,isHoistBorder:!0,hoistPriority:0,dependencyKind:1,hoistedFrom:new Map,hoistedTo:new Map},A=new Map([[t,u]]),p=(h,C)=>{let I=A.get(h),v=!!I;if(!I){let{name:x,identName:E,reference:R,peerNames:L,hoistPriority:U,dependencyKind:z}=h,te=e.hoistingLimits.get(C.locator);I={name:x,references:new Set([R]),locator:Uj(E,R),ident:hIe(E,R),dependencies:new Map,originalDependencies:new Map,hoistedDependencies:new Map,peerNames:new Set(L),reasons:new Map,decoupled:!0,isHoistBorder:te?te.has(x):!1,hoistPriority:U||0,dependencyKind:z||0,hoistedFrom:new Map,hoistedTo:new Map},A.set(h,I)}if(C.dependencies.set(h.name,I),C.originalDependencies.set(h.name,I),v){let x=new Set,E=R=>{if(!x.has(R)){x.add(R),R.decoupled=!1;for(let L of R.dependencies.values())R.peerNames.has(L.name)||E(L)}};E(I)}else for(let x of h.dependencies)p(x,I)};for(let h of t.dependencies)p(h,u);return u},Hj=t=>t.substring(0,t.indexOf("@",1)),dIt=t=>{let e={name:t.name,identName:Hj(t.locator),references:new Set(t.references),dependencies:new Set},r=new Set([t]),o=(a,n,u)=>{let A=r.has(a),p;if(n===a)p=u;else{let{name:h,references:C,locator:I}=a;p={name:h,identName:Hj(I),references:C,dependencies:new Set}}if(u.dependencies.add(p),!A){r.add(a);for(let h of a.dependencies.values())a.peerNames.has(h.name)||o(h,a,p);r.delete(a)}};for(let a of t.dependencies.values())o(a,t,e);return e},mIt=t=>{let e=new Map,r=new Set([t]),o=u=>`${u.name}@${u.ident}`,a=u=>{let A=o(u),p=e.get(A);return p||(p={dependents:new Set,peerDependents:new Set,hoistPriority:0},e.set(A,p)),p},n=(u,A)=>{let p=!!r.has(A);if(a(A).dependents.add(u.ident),!p){r.add(A);for(let C of A.dependencies.values()){let I=a(C);I.hoistPriority=Math.max(I.hoistPriority,C.hoistPriority),A.peerNames.has(C.name)?I.peerDependents.add(A.ident):n(A,C)}}};for(let u of t.dependencies.values())t.peerNames.has(u.name)||n(t,u);return e},no=t=>{if(!t)return"none";let e=t.indexOf("@",1),r=t.substring(0,e);r.endsWith("$wsroot$")&&(r=`wh:${r.replace("$wsroot$","")}`);let o=t.substring(e+1);if(o==="workspace:.")return".";if(o){let a=(o.indexOf("#")>0?o.split("#")[1]:o).replace("npm:","");return o.startsWith("virtual")&&(r=`v:${r}`),a.startsWith("workspace")&&(r=`w:${r}`,a=""),`${r}${a?`@${a}`:""}`}else return`${r}`},dIe=5e4,KB=t=>{let e=0,r=(a,n,u="")=>{if(e>dIe||n.has(a))return"";e++;let A=Array.from(a.dependencies.values()).sort((h,C)=>h.name===C.name?0:h.name>C.name?1:-1),p="";n.add(a);for(let h=0;h":"")+(v!==C.name?`a:${C.name}:`:"")+no(C.locator)+(I?` ${I}`:"")} +`,p+=r(C,n,`${u}${hdIe?` +Tree is too large, part of the tree has been dunped +`:"")};var VB=(o=>(o.WORKSPACES="workspaces",o.DEPENDENCIES="dependencies",o.NONE="none",o))(VB||{}),EIe="node_modules",fm="$wsroot$";var zB=(t,e)=>{let{packageTree:r,hoistingLimits:o,errors:a,preserveSymlinksRequired:n}=EIt(t,e),u=null;if(a.length===0){let A=mIe(r,{hoistingLimits:o});u=wIt(t,A,e)}return{tree:u,errors:a,preserveSymlinksRequired:n}},gA=t=>`${t.name}@${t.reference}`,qj=t=>{let e=new Map;for(let[r,o]of t.entries())if(!o.dirList){let a=e.get(o.locator);a||(a={target:o.target,linkType:o.linkType,locations:[],aliases:o.aliases},e.set(o.locator,a)),a.locations.push(r)}for(let r of e.values())r.locations=r.locations.sort((o,a)=>{let n=o.split(V.delimiter).length,u=a.split(V.delimiter).length;return a===o?0:n!==u?u-n:a>o?1:-1});return e},CIe=(t,e)=>{let r=W.isVirtualLocator(t)?W.devirtualizeLocator(t):t,o=W.isVirtualLocator(e)?W.devirtualizeLocator(e):e;return W.areLocatorsEqual(r,o)},jj=(t,e,r,o)=>{if(t.linkType!=="SOFT")return!1;let a=ue.toPortablePath(r.resolveVirtual&&e.reference&&e.reference.startsWith("virtual:")?r.resolveVirtual(t.packageLocation):t.packageLocation);return V.contains(o,a)===null},yIt=t=>{let e=t.getPackageInformation(t.topLevel);if(e===null)throw new Error("Assertion failed: Expected the top-level package to have been registered");if(t.findPackageLocator(e.packageLocation)===null)throw new Error("Assertion failed: Expected the top-level package to have a physical locator");let o=ue.toPortablePath(e.packageLocation.slice(0,-1)),a=new Map,n={children:new Map},u=t.getDependencyTreeRoots(),A=new Map,p=new Set,h=(v,x)=>{let E=gA(v);if(p.has(E))return;p.add(E);let R=t.getPackageInformation(v);if(R){let L=x?gA(x):"";if(gA(v)!==L&&R.linkType==="SOFT"&&!jj(R,v,t,o)){let U=wIe(R,v,t);(!A.get(U)||v.reference.startsWith("workspace:"))&&A.set(U,v)}for(let[U,z]of R.packageDependencies)z!==null&&(R.packagePeers.has(U)||h(t.getLocator(U,z),v))}};for(let v of u)h(v,null);let C=o.split(V.sep);for(let v of A.values()){let x=t.getPackageInformation(v),R=ue.toPortablePath(x.packageLocation.slice(0,-1)).split(V.sep).slice(C.length),L=n;for(let U of R){let z=L.children.get(U);z||(z={children:new Map},L.children.set(U,z)),L=z}L.workspaceLocator=v}let I=(v,x)=>{if(v.workspaceLocator){let E=gA(x),R=a.get(E);R||(R=new Set,a.set(E,R)),R.add(v.workspaceLocator)}for(let E of v.children.values())I(E,v.workspaceLocator||x)};for(let v of n.children.values())I(v,n.workspaceLocator);return a},EIt=(t,e)=>{let r=[],o=!1,a=new Map,n=yIt(t),u=t.getPackageInformation(t.topLevel);if(u===null)throw new Error("Assertion failed: Expected the top-level package to have been registered");let A=t.findPackageLocator(u.packageLocation);if(A===null)throw new Error("Assertion failed: Expected the top-level package to have a physical locator");let p=ue.toPortablePath(u.packageLocation.slice(0,-1)),h={name:A.name,identName:A.name,reference:A.reference,peerNames:u.packagePeers,dependencies:new Set,dependencyKind:1},C=new Map,I=(x,E)=>`${gA(E)}:${x}`,v=(x,E,R,L,U,z,te,le)=>{let he=I(x,R),Ae=C.get(he),ye=!!Ae;!ye&&R.name===A.name&&R.reference===A.reference&&(Ae=h,C.set(he,h));let ae=jj(E,R,t,p);if(!Ae){let ce=0;ae?ce=2:E.linkType==="SOFT"&&R.name.endsWith(fm)&&(ce=1),Ae={name:x,identName:R.name,reference:R.reference,dependencies:new Set,peerNames:ce===1?new Set:E.packagePeers,dependencyKind:ce},C.set(he,Ae)}let Ie;if(ae?Ie=2:U.linkType==="SOFT"?Ie=1:Ie=0,Ae.hoistPriority=Math.max(Ae.hoistPriority||0,Ie),le&&!ae){let ce=gA({name:L.identName,reference:L.reference}),ne=a.get(ce)||new Set;a.set(ce,ne),ne.add(Ae.name)}let Fe=new Map(E.packageDependencies);if(e.project){let ce=e.project.workspacesByCwd.get(ue.toPortablePath(E.packageLocation.slice(0,-1)));if(ce){let ne=new Set([...Array.from(ce.manifest.peerDependencies.values(),ee=>W.stringifyIdent(ee)),...Array.from(ce.manifest.peerDependenciesMeta.keys())]);for(let ee of ne)Fe.has(ee)||(Fe.set(ee,z.get(ee)||null),Ae.peerNames.add(ee))}}let g=gA({name:R.name.replace(fm,""),reference:R.reference}),Ee=n.get(g);if(Ee)for(let ce of Ee)Fe.set(`${ce.name}${fm}`,ce.reference);(E!==U||E.linkType!=="SOFT"||!ae&&(!e.selfReferencesByCwd||e.selfReferencesByCwd.get(te)))&&L.dependencies.add(Ae);let De=R!==A&&E.linkType==="SOFT"&&!R.name.endsWith(fm)&&!ae;if(!ye&&!De){let ce=new Map;for(let[ne,ee]of Fe)if(ee!==null){let we=t.getLocator(ne,ee),xe=t.getLocator(ne.replace(fm,""),ee),ht=t.getPackageInformation(xe);if(ht===null)throw new Error("Assertion failed: Expected the package to have been registered");let H=jj(ht,we,t,p);if(e.validateExternalSoftLinks&&e.project&&H){ht.packageDependencies.size>0&&(o=!0);for(let[_e,Re]of ht.packageDependencies)if(Re!==null){let ze=W.parseLocator(Array.isArray(Re)?`${Re[0]}@${Re[1]}`:`${_e}@${Re}`);if(gA(ze)!==gA(we)){let He=Fe.get(_e);if(He){let b=W.parseLocator(Array.isArray(He)?`${He[0]}@${He[1]}`:`${_e}@${He}`);CIe(b,ze)||r.push({messageName:71,text:`Cannot link ${W.prettyIdent(e.project.configuration,W.parseIdent(we.name))} into ${W.prettyLocator(e.project.configuration,W.parseLocator(`${R.name}@${R.reference}`))} dependency ${W.prettyLocator(e.project.configuration,ze)} conflicts with parent dependency ${W.prettyLocator(e.project.configuration,b)}`})}else{let b=ce.get(_e);if(b){let w=b.target,S=W.parseLocator(Array.isArray(w)?`${w[0]}@${w[1]}`:`${_e}@${w}`);CIe(S,ze)||r.push({messageName:71,text:`Cannot link ${W.prettyIdent(e.project.configuration,W.parseIdent(we.name))} into ${W.prettyLocator(e.project.configuration,W.parseLocator(`${R.name}@${R.reference}`))} dependency ${W.prettyLocator(e.project.configuration,ze)} conflicts with dependency ${W.prettyLocator(e.project.configuration,S)} from sibling portal ${W.prettyIdent(e.project.configuration,W.parseIdent(b.portal.name))}`})}else ce.set(_e,{target:ze.reference,portal:we})}}}}let lt=e.hoistingLimitsByCwd?.get(te),Te=H?te:V.relative(p,ue.toPortablePath(ht.packageLocation))||Bt.dot,ke=e.hoistingLimitsByCwd?.get(Te);v(ne,ht,we,Ae,E,Fe,Te,lt==="dependencies"||ke==="dependencies"||ke==="workspaces")}}};return v(A.name,u,A,h,u,u.packageDependencies,Bt.dot,!1),{packageTree:h,hoistingLimits:a,errors:r,preserveSymlinksRequired:o}};function wIe(t,e,r){let o=r.resolveVirtual&&e.reference&&e.reference.startsWith("virtual:")?r.resolveVirtual(t.packageLocation):t.packageLocation;return ue.toPortablePath(o||t.packageLocation)}function CIt(t,e,r){let o=e.getLocator(t.name.replace(fm,""),t.reference),a=e.getPackageInformation(o);if(a===null)throw new Error("Assertion failed: Expected the package to be registered");return r.pnpifyFs?{linkType:"SOFT",target:ue.toPortablePath(a.packageLocation)}:{linkType:a.linkType,target:wIe(a,t,e)}}var wIt=(t,e,r)=>{let o=new Map,a=(C,I,v)=>{let{linkType:x,target:E}=CIt(C,t,r);return{locator:gA(C),nodePath:I,target:E,linkType:x,aliases:v}},n=C=>{let[I,v]=C.split("/");return v?{scope:I,name:v}:{scope:null,name:I}},u=new Set,A=(C,I,v)=>{if(u.has(C))return;u.add(C);let x=Array.from(C.references).sort().join("#");for(let E of C.dependencies){let R=Array.from(E.references).sort().join("#");if(E.identName===C.identName&&R===x)continue;let L=Array.from(E.references).sort(),U={name:E.identName,reference:L[0]},{name:z,scope:te}=n(E.name),le=te?[te,z]:[z],he=V.join(I,EIe),Ae=V.join(he,...le),ye=`${v}/${U.name}`,ae=a(U,v,L.slice(1)),Ie=!1;if(ae.linkType==="SOFT"&&r.project){let g=r.project.workspacesByCwd.get(ae.target.slice(0,-1));Ie=!!(g&&!g.manifest.name)}let Fe=ae.linkType==="SOFT"&&Ae.startsWith(ae.target);if(!E.name.endsWith(fm)&&!Ie&&!Fe){let g=o.get(Ae);if(g){if(g.dirList)throw new Error(`Assertion failed: ${Ae} cannot merge dir node with leaf node`);{let ce=W.parseLocator(g.locator),ne=W.parseLocator(ae.locator);if(g.linkType!==ae.linkType)throw new Error(`Assertion failed: ${Ae} cannot merge nodes with different link types ${g.nodePath}/${W.stringifyLocator(ce)} and ${v}/${W.stringifyLocator(ne)}`);if(ce.identHash!==ne.identHash)throw new Error(`Assertion failed: ${Ae} cannot merge nodes with different idents ${g.nodePath}/${W.stringifyLocator(ce)} and ${v}/s${W.stringifyLocator(ne)}`);ae.aliases=[...ae.aliases,...g.aliases,W.parseLocator(g.locator).reference]}}o.set(Ae,ae);let Ee=Ae.split("/"),De=Ee.indexOf(EIe);for(let ce=Ee.length-1;De>=0&&ce>De;ce--){let ne=ue.toPortablePath(Ee.slice(0,ce).join(V.sep)),ee=Ee[ce],we=o.get(ne);if(!we)o.set(ne,{dirList:new Set([ee])});else if(we.dirList){if(we.dirList.has(ee))break;we.dirList.add(ee)}}}A(E,ae.linkType==="SOFT"?ae.target:Ae,ye)}},p=a({name:e.name,reference:Array.from(e.references)[0]},"",[]),h=p.target;return o.set(h,p),A(e,h,""),o};Ye();Ye();Pt();Pt();nA();Nl();var cq={};Vt(cq,{PnpInstaller:()=>gm,PnpLinker:()=>D0,UnplugCommand:()=>S0,default:()=>XIt,getPnpPath:()=>P0,jsInstallUtils:()=>mA,pnpUtils:()=>av,quotePathIfNeeded:()=>s1e});Pt();var i1e=Be("url");Ye();Ye();Pt();Pt();var IIe={["DEFAULT"]:{collapsed:!1,next:{["*"]:"DEFAULT"}},["TOP_LEVEL"]:{collapsed:!1,next:{fallbackExclusionList:"FALLBACK_EXCLUSION_LIST",packageRegistryData:"PACKAGE_REGISTRY_DATA",["*"]:"DEFAULT"}},["FALLBACK_EXCLUSION_LIST"]:{collapsed:!1,next:{["*"]:"FALLBACK_EXCLUSION_ENTRIES"}},["FALLBACK_EXCLUSION_ENTRIES"]:{collapsed:!0,next:{["*"]:"FALLBACK_EXCLUSION_DATA"}},["FALLBACK_EXCLUSION_DATA"]:{collapsed:!0,next:{["*"]:"DEFAULT"}},["PACKAGE_REGISTRY_DATA"]:{collapsed:!1,next:{["*"]:"PACKAGE_REGISTRY_ENTRIES"}},["PACKAGE_REGISTRY_ENTRIES"]:{collapsed:!0,next:{["*"]:"PACKAGE_STORE_DATA"}},["PACKAGE_STORE_DATA"]:{collapsed:!1,next:{["*"]:"PACKAGE_STORE_ENTRIES"}},["PACKAGE_STORE_ENTRIES"]:{collapsed:!0,next:{["*"]:"PACKAGE_INFORMATION_DATA"}},["PACKAGE_INFORMATION_DATA"]:{collapsed:!1,next:{packageDependencies:"PACKAGE_DEPENDENCIES",["*"]:"DEFAULT"}},["PACKAGE_DEPENDENCIES"]:{collapsed:!1,next:{["*"]:"PACKAGE_DEPENDENCY"}},["PACKAGE_DEPENDENCY"]:{collapsed:!0,next:{["*"]:"DEFAULT"}}};function IIt(t,e,r){let o="";o+="[";for(let a=0,n=t.length;a"u"||(A!==0&&(a+=", "),a+=JSON.stringify(p),a+=": ",a+=wQ(p,h,e,r).replace(/^ +/g,""),A+=1)}return a+="}",a}function DIt(t,e,r){let o=Object.keys(t),a=`${r} `,n="";n+=r,n+=`{ +`;let u=0;for(let A=0,p=o.length;A"u"||(u!==0&&(n+=",",n+=` +`),n+=a,n+=JSON.stringify(h),n+=": ",n+=wQ(h,C,e,a).replace(/^ +/g,""),u+=1)}return u!==0&&(n+=` +`),n+=r,n+="}",n}function wQ(t,e,r,o){let{next:a}=IIe[r],n=a[t]||a["*"];return BIe(e,n,o)}function BIe(t,e,r){let{collapsed:o}=IIe[e];return Array.isArray(t)?o?IIt(t,e,r):BIt(t,e,r):typeof t=="object"&&t!==null?o?vIt(t,e,r):DIt(t,e,r):JSON.stringify(t)}function vIe(t){return BIe(t,"TOP_LEVEL","")}function JB(t,e){let r=Array.from(t);Array.isArray(e)||(e=[e]);let o=[];for(let n of e)o.push(r.map(u=>n(u)));let a=r.map((n,u)=>u);return a.sort((n,u)=>{for(let A of o){let p=A[n]A[u]?1:0;if(p!==0)return p}return 0}),a.map(n=>r[n])}function PIt(t){let e=new Map,r=JB(t.fallbackExclusionList||[],[({name:o,reference:a})=>o,({name:o,reference:a})=>a]);for(let{name:o,reference:a}of r){let n=e.get(o);typeof n>"u"&&e.set(o,n=new Set),n.add(a)}return Array.from(e).map(([o,a])=>[o,Array.from(a)])}function SIt(t){return JB(t.fallbackPool||[],([e])=>e)}function bIt(t){let e=[];for(let[r,o]of JB(t.packageRegistry,([a])=>a===null?"0":`1${a}`)){let a=[];e.push([r,a]);for(let[n,{packageLocation:u,packageDependencies:A,packagePeers:p,linkType:h,discardFromLookup:C}]of JB(o,([I])=>I===null?"0":`1${I}`)){let I=[];r!==null&&n!==null&&!A.has(r)&&I.push([r,n]);for(let[E,R]of JB(A.entries(),([L])=>L))I.push([E,R]);let v=p&&p.size>0?Array.from(p):void 0,x=C||void 0;a.push([n,{packageLocation:u,packageDependencies:I,packagePeers:v,linkType:h,discardFromLookup:x}])}}return e}function XB(t){return{__info:["This file is automatically generated. Do not touch it, or risk","your modifications being lost."],dependencyTreeRoots:t.dependencyTreeRoots,enableTopLevelFallback:t.enableTopLevelFallback||!1,ignorePatternData:t.ignorePattern||null,fallbackExclusionList:PIt(t),fallbackPool:SIt(t),packageRegistryData:bIt(t)}}var SIe=$e(PIe());function bIe(t,e){return[t?`${t} +`:"",`/* eslint-disable */ +`,`"use strict"; +`,` +`,e,` +`,(0,SIe.default)()].join("")}function xIt(t){return JSON.stringify(t,null,2)}function kIt(t){return`'${t.replace(/\\/g,"\\\\").replace(/'/g,"\\'").replace(/\n/g,`\\ +`)}'`}function QIt(t){return[`const RAW_RUNTIME_STATE = +`,`${kIt(vIe(t))}; + +`,`function $$SETUP_STATE(hydrateRuntimeState, basePath) { +`,` return hydrateRuntimeState(JSON.parse(RAW_RUNTIME_STATE), {basePath: basePath || __dirname}); +`,`} +`].join("")}function FIt(){return[`function $$SETUP_STATE(hydrateRuntimeState, basePath) { +`,` const fs = require('fs'); +`,` const path = require('path'); +`,` const pnpDataFilepath = path.resolve(__dirname, ${JSON.stringify(dr.pnpData)}); +`,` return hydrateRuntimeState(JSON.parse(fs.readFileSync(pnpDataFilepath, 'utf8')), {basePath: basePath || __dirname}); +`,`} +`].join("")}function xIe(t){let e=XB(t),r=QIt(e);return bIe(t.shebang,r)}function kIe(t){let e=XB(t),r=FIt(),o=bIe(t.shebang,r);return{dataFile:xIt(e),loaderFile:o}}Pt();function Yj(t,{basePath:e}){let r=ue.toPortablePath(e),o=V.resolve(r),a=t.ignorePatternData!==null?new RegExp(t.ignorePatternData):null,n=new Map,u=new Map(t.packageRegistryData.map(([I,v])=>[I,new Map(v.map(([x,E])=>{if(I===null!=(x===null))throw new Error("Assertion failed: The name and reference should be null, or neither should");let R=E.discardFromLookup??!1,L={name:I,reference:x},U=n.get(E.packageLocation);U?(U.discardFromLookup=U.discardFromLookup&&R,R||(U.locator=L)):n.set(E.packageLocation,{locator:L,discardFromLookup:R});let z=null;return[x,{packageDependencies:new Map(E.packageDependencies),packagePeers:new Set(E.packagePeers),linkType:E.linkType,discardFromLookup:R,get packageLocation(){return z||(z=V.join(o,E.packageLocation))}}]}))])),A=new Map(t.fallbackExclusionList.map(([I,v])=>[I,new Set(v)])),p=new Map(t.fallbackPool),h=t.dependencyTreeRoots,C=t.enableTopLevelFallback;return{basePath:r,dependencyTreeRoots:h,enableTopLevelFallback:C,fallbackExclusionList:A,fallbackPool:p,ignorePattern:a,packageLocatorsByLocations:n,packageRegistry:u}}Pt();Pt();var tp=Be("module"),hm=Be("url"),rq=Be("util");var Mo=Be("url");var TIe=$e(Be("assert"));var Wj=Array.isArray,ZB=JSON.stringify,$B=Object.getOwnPropertyNames,pm=(t,e)=>Object.prototype.hasOwnProperty.call(t,e),Kj=(t,e)=>RegExp.prototype.exec.call(t,e),Vj=(t,...e)=>RegExp.prototype[Symbol.replace].apply(t,e),B0=(t,...e)=>String.prototype.endsWith.apply(t,e),zj=(t,...e)=>String.prototype.includes.apply(t,e),Jj=(t,...e)=>String.prototype.lastIndexOf.apply(t,e),ev=(t,...e)=>String.prototype.indexOf.apply(t,e),QIe=(t,...e)=>String.prototype.replace.apply(t,e),v0=(t,...e)=>String.prototype.slice.apply(t,e),dA=(t,...e)=>String.prototype.startsWith.apply(t,e),FIe=Map,RIe=JSON.parse;function tv(t,e,r){return class extends r{constructor(...o){super(e(...o)),this.code=t,this.name=`${r.name} [${t}]`}}}var NIe=tv("ERR_PACKAGE_IMPORT_NOT_DEFINED",(t,e,r)=>`Package import specifier "${t}" is not defined${e?` in package ${e}package.json`:""} imported from ${r}`,TypeError),Xj=tv("ERR_INVALID_MODULE_SPECIFIER",(t,e,r=void 0)=>`Invalid module "${t}" ${e}${r?` imported from ${r}`:""}`,TypeError),LIe=tv("ERR_INVALID_PACKAGE_TARGET",(t,e,r,o=!1,a=void 0)=>{let n=typeof r=="string"&&!o&&r.length&&!dA(r,"./");return e==="."?((0,TIe.default)(o===!1),`Invalid "exports" main target ${ZB(r)} defined in the package config ${t}package.json${a?` imported from ${a}`:""}${n?'; targets must start with "./"':""}`):`Invalid "${o?"imports":"exports"}" target ${ZB(r)} defined for '${e}' in the package config ${t}package.json${a?` imported from ${a}`:""}${n?'; targets must start with "./"':""}`},Error),rv=tv("ERR_INVALID_PACKAGE_CONFIG",(t,e,r)=>`Invalid package config ${t}${e?` while importing ${e}`:""}${r?`. ${r}`:""}`,Error),OIe=tv("ERR_PACKAGE_PATH_NOT_EXPORTED",(t,e,r=void 0)=>e==="."?`No "exports" main defined in ${t}package.json${r?` imported from ${r}`:""}`:`Package subpath '${e}' is not defined by "exports" in ${t}package.json${r?` imported from ${r}`:""}`,Error);var BQ=Be("url");function MIe(t,e){let r=Object.create(null);for(let o=0;oe):t+e}nv(r,t,o,u,a)}Kj(_Ie,v0(t,2))!==null&&nv(r,t,o,u,a);let p=new URL(t,o),h=p.pathname,C=new URL(".",o).pathname;if(dA(h,C)||nv(r,t,o,u,a),e==="")return p;if(Kj(_Ie,e)!==null){let I=n?QIe(r,"*",()=>e):r+e;NIt(I,o,u,a)}return n?new URL(Vj(HIe,p.href,()=>e)):new URL(e,p)}function OIt(t){let e=+t;return`${e}`!==t?!1:e>=0&&e<4294967295}function jC(t,e,r,o,a,n,u,A){if(typeof e=="string")return LIt(e,r,o,t,a,n,u,A);if(Wj(e)){if(e.length===0)return null;let p;for(let h=0;hn?-1:n>a||r===-1?1:o===-1||t.length>e.length?-1:e.length>t.length?1:0}function MIt(t,e,r){if(typeof t=="string"||Wj(t))return!0;if(typeof t!="object"||t===null)return!1;let o=$B(t),a=!1,n=0;for(let u=0;u=h.length&&B0(e,I)&&qIe(n,h)===1&&Jj(h,"*")===C&&(n=h,u=v0(e,C,e.length-I.length))}}if(n){let p=r[n],h=jC(t,p,u,n,o,!0,!1,a);return h==null&&Zj(e,t,o),h}Zj(e,t,o)}function YIe({name:t,base:e,conditions:r,readFileSyncFn:o}){if(t==="#"||dA(t,"#/")||B0(t,"/")){let u="is not a valid internal imports specifier name";throw new Xj(t,u,(0,Mo.fileURLToPath)(e))}let a,n=UIe(e,o);if(n.exists){a=(0,Mo.pathToFileURL)(n.pjsonPath);let u=n.imports;if(u)if(pm(u,t)&&!zj(t,"*")){let A=jC(a,u[t],"",t,e,!1,!0,r);if(A!=null)return A}else{let A="",p,h=$B(u);for(let C=0;C=I.length&&B0(t,x)&&qIe(A,I)===1&&Jj(I,"*")===v&&(A=I,p=v0(t,v,t.length-x.length))}}if(A){let C=u[A],I=jC(a,C,p,A,e,!0,!0,r);if(I!=null)return I}}}TIt(t,a,e)}Pt();var _It=new Set(["BUILTIN_NODE_RESOLUTION_FAILED","MISSING_DEPENDENCY","MISSING_PEER_DEPENDENCY","QUALIFIED_PATH_RESOLUTION_FAILED","UNDECLARED_DEPENDENCY"]);function $i(t,e,r={},o){o??=_It.has(t)?"MODULE_NOT_FOUND":t;let a={configurable:!0,writable:!0,enumerable:!1};return Object.defineProperties(new Error(e),{code:{...a,value:o},pnpCode:{...a,value:t},data:{...a,value:r}})}function au(t){return ue.normalize(ue.fromPortablePath(t))}var zIe=$e(KIe());function JIe(t){return HIt(),eq[t]}var eq;function HIt(){eq||(eq={"--conditions":[],...VIe(jIt()),...VIe(process.execArgv)})}function VIe(t){return(0,zIe.default)({"--conditions":[String],"-C":"--conditions"},{argv:t,permissive:!0})}function jIt(){let t=[],e=qIt(process.env.NODE_OPTIONS||"",t);return t.length,e}function qIt(t,e){let r=[],o=!1,a=!0;for(let n=0;nparseInt(t,10)),XIe=sv>19||sv===19&&tq>=2||sv===18&&tq>=13,BJt=sv>19||sv===19&&tq>=3;function ZIe(t){if(process.env.WATCH_REPORT_DEPENDENCIES&&process.send)if(t=t.map(e=>ue.fromPortablePath(mi.resolveVirtual(ue.toPortablePath(e)))),XIe)process.send({"watch:require":t});else for(let e of t)process.send({"watch:require":e})}function nq(t,e){let r=Number(process.env.PNP_ALWAYS_WARN_ON_FALLBACK)>0,o=Number(process.env.PNP_DEBUG_LEVEL),a=/^(?![a-zA-Z]:[\\/]|\\\\|\.{0,2}(?:\/|$))((?:node:)?(?:@[^/]+\/)?[^/]+)\/*(.*|)$/,n=/^(\/|\.{1,2}(\/|$))/,u=/\/$/,A=/^\.{0,2}\//,p={name:null,reference:null},h=[],C=new Set;if(t.enableTopLevelFallback===!0&&h.push(p),e.compatibilityMode!==!1)for(let Te of["react-scripts","gatsby"]){let ke=t.packageRegistry.get(Te);if(ke)for(let be of ke.keys()){if(be===null)throw new Error("Assertion failed: This reference shouldn't be null");h.push({name:Te,reference:be})}}let{ignorePattern:I,packageRegistry:v,packageLocatorsByLocations:x}=t;function E(Te,ke){return{fn:Te,args:ke,error:null,result:null}}function R(Te){let ke=process.stderr?.hasColors?.()??process.stdout.isTTY,be=(ze,He)=>`\x1B[${ze}m${He}\x1B[0m`,_e=Te.error;console.error(_e?be("31;1",`\u2716 ${Te.error?.message.replace(/\n.*/s,"")}`):be("33;1","\u203C Resolution")),Te.args.length>0&&console.error();for(let ze of Te.args)console.error(` ${be("37;1","In \u2190")} ${(0,rq.inspect)(ze,{colors:ke,compact:!0})}`);Te.result&&(console.error(),console.error(` ${be("37;1","Out \u2192")} ${(0,rq.inspect)(Te.result,{colors:ke,compact:!0})}`));let Re=new Error().stack.match(/(?<=^ +)at.*/gm)?.slice(2)??[];if(Re.length>0){console.error();for(let ze of Re)console.error(` ${be("38;5;244",ze)}`)}console.error()}function L(Te,ke){if(e.allowDebug===!1)return ke;if(Number.isFinite(o)){if(o>=2)return(...be)=>{let _e=E(Te,be);try{return _e.result=ke(...be)}catch(Re){throw _e.error=Re}finally{R(_e)}};if(o>=1)return(...be)=>{try{return ke(...be)}catch(_e){let Re=E(Te,be);throw Re.error=_e,R(Re),_e}}}return ke}function U(Te){let ke=g(Te);if(!ke)throw $i("INTERNAL","Couldn't find a matching entry in the dependency tree for the specified parent (this is probably an internal error)");return ke}function z(Te){if(Te.name===null)return!0;for(let ke of t.dependencyTreeRoots)if(ke.name===Te.name&&ke.reference===Te.reference)return!0;return!1}let te=new Set(["node","require",...JIe("--conditions")]);function le(Te,ke=te,be){let _e=ce(V.join(Te,"internal.js"),{resolveIgnored:!0,includeDiscardFromLookup:!0});if(_e===null)throw $i("INTERNAL",`The locator that owns the "${Te}" path can't be found inside the dependency tree (this is probably an internal error)`);let{packageLocation:Re}=U(_e),ze=V.join(Re,dr.manifest);if(!e.fakeFs.existsSync(ze))return null;let He=JSON.parse(e.fakeFs.readFileSync(ze,"utf8"));if(He.exports==null)return null;let b=V.contains(Re,Te);if(b===null)throw $i("INTERNAL","unqualifiedPath doesn't contain the packageLocation (this is probably an internal error)");b!=="."&&!A.test(b)&&(b=`./${b}`);try{let w=GIe({packageJSONUrl:(0,hm.pathToFileURL)(ue.fromPortablePath(ze)),packageSubpath:b,exports:He.exports,base:be?(0,hm.pathToFileURL)(ue.fromPortablePath(be)):null,conditions:ke});return ue.toPortablePath((0,hm.fileURLToPath)(w))}catch(w){throw $i("EXPORTS_RESOLUTION_FAILED",w.message,{unqualifiedPath:au(Te),locator:_e,pkgJson:He,subpath:au(b),conditions:ke},w.code)}}function he(Te,ke,{extensions:be}){let _e;try{ke.push(Te),_e=e.fakeFs.statSync(Te)}catch{}if(_e&&!_e.isDirectory())return e.fakeFs.realpathSync(Te);if(_e&&_e.isDirectory()){let Re;try{Re=JSON.parse(e.fakeFs.readFileSync(V.join(Te,dr.manifest),"utf8"))}catch{}let ze;if(Re&&Re.main&&(ze=V.resolve(Te,Re.main)),ze&&ze!==Te){let He=he(ze,ke,{extensions:be});if(He!==null)return He}}for(let Re=0,ze=be.length;Re{let b=JSON.stringify(He.name);if(_e.has(b))return;_e.add(b);let w=Ee(He);for(let S of w)if(U(S).packagePeers.has(Te))Re(S);else{let F=be.get(S.name);typeof F>"u"&&be.set(S.name,F=new Set),F.add(S.reference)}};Re(ke);let ze=[];for(let He of[...be.keys()].sort())for(let b of[...be.get(He)].sort())ze.push({name:He,reference:b});return ze}function ce(Te,{resolveIgnored:ke=!1,includeDiscardFromLookup:be=!1}={}){if(ae(Te)&&!ke)return null;let _e=V.relative(t.basePath,Te);_e.match(n)||(_e=`./${_e}`),_e.endsWith("/")||(_e=`${_e}/`);do{let Re=x.get(_e);if(typeof Re>"u"||Re.discardFromLookup&&!be){_e=_e.substring(0,_e.lastIndexOf("/",_e.length-2)+1);continue}return Re.locator}while(_e!=="");return null}function ne(Te){try{return e.fakeFs.readFileSync(ue.toPortablePath(Te),"utf8")}catch(ke){if(ke.code==="ENOENT")return;throw ke}}function ee(Te,ke,{considerBuiltins:be=!0}={}){if(Te.startsWith("#"))throw new Error("resolveToUnqualified can not handle private import mappings");if(Te==="pnpapi")return ue.toPortablePath(e.pnpapiResolution);if(be&&(0,tp.isBuiltin)(Te))return null;let _e=au(Te),Re=ke&&au(ke);if(ke&&ae(ke)&&(!V.isAbsolute(Te)||ce(Te)===null)){let b=ye(Te,ke);if(b===!1)throw $i("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: "${_e}" +Required by: ${Re} +`,{request:_e,issuer:Re});return ue.toPortablePath(b)}let ze,He=Te.match(a);if(He){if(!ke)throw $i("API_ERROR","The resolveToUnqualified function must be called with a valid issuer when the path isn't a builtin nor absolute",{request:_e,issuer:Re});let[,b,w]=He,S=ce(ke);if(!S){let Ne=ye(Te,ke);if(Ne===!1)throw $i("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: "${_e}" +Required by: ${Re} +`,{request:_e,issuer:Re});return ue.toPortablePath(Ne)}let F=U(S).packageDependencies.get(b),J=null;if(F==null&&S.name!==null){let Ne=t.fallbackExclusionList.get(S.name);if(!Ne||!Ne.has(S.reference)){for(let dt=0,jt=h.length;dtz(ot))?X=$i("MISSING_PEER_DEPENDENCY",`${S.name} tried to access ${b} (a peer dependency) but it isn't provided by your application; this makes the require call ambiguous and unsound. + +Required package: ${b}${b!==_e?` (via "${_e}")`:""} +Required by: ${S.name}@${S.reference} (via ${Re}) +${Ne.map(ot=>`Ancestor breaking the chain: ${ot.name}@${ot.reference} +`).join("")} +`,{request:_e,issuer:Re,issuerLocator:Object.assign({},S),dependencyName:b,brokenAncestors:Ne}):X=$i("MISSING_PEER_DEPENDENCY",`${S.name} tried to access ${b} (a peer dependency) but it isn't provided by its ancestors; this makes the require call ambiguous and unsound. + +Required package: ${b}${b!==_e?` (via "${_e}")`:""} +Required by: ${S.name}@${S.reference} (via ${Re}) + +${Ne.map(ot=>`Ancestor breaking the chain: ${ot.name}@${ot.reference} +`).join("")} +`,{request:_e,issuer:Re,issuerLocator:Object.assign({},S),dependencyName:b,brokenAncestors:Ne})}else F===void 0&&(!be&&(0,tp.isBuiltin)(Te)?z(S)?X=$i("UNDECLARED_DEPENDENCY",`Your application tried to access ${b}. 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 ${b} isn't otherwise declared in your dependencies, this makes the require call ambiguous and unsound. + +Required package: ${b}${b!==_e?` (via "${_e}")`:""} +Required by: ${Re} +`,{request:_e,issuer:Re,dependencyName:b}):X=$i("UNDECLARED_DEPENDENCY",`${S.name} tried to access ${b}. 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 ${b} isn't otherwise declared in ${S.name}'s dependencies, this makes the require call ambiguous and unsound. + +Required package: ${b}${b!==_e?` (via "${_e}")`:""} +Required by: ${Re} +`,{request:_e,issuer:Re,issuerLocator:Object.assign({},S),dependencyName:b}):z(S)?X=$i("UNDECLARED_DEPENDENCY",`Your application tried to access ${b}, but it isn't declared in your dependencies; this makes the require call ambiguous and unsound. + +Required package: ${b}${b!==_e?` (via "${_e}")`:""} +Required by: ${Re} +`,{request:_e,issuer:Re,dependencyName:b}):X=$i("UNDECLARED_DEPENDENCY",`${S.name} tried to access ${b}, but it isn't declared in its dependencies; this makes the require call ambiguous and unsound. + +Required package: ${b}${b!==_e?` (via "${_e}")`:""} +Required by: ${S.name}@${S.reference} (via ${Re}) +`,{request:_e,issuer:Re,issuerLocator:Object.assign({},S),dependencyName:b}));if(F==null){if(J===null||X===null)throw X||new Error("Assertion failed: Expected an error to have been set");F=J;let Ne=X.message.replace(/\n.*/g,"");X.message=Ne,!C.has(Ne)&&o!==0&&(C.add(Ne),process.emitWarning(X))}let Z=Array.isArray(F)?{name:F[0],reference:F[1]}:{name:b,reference:F},ie=U(Z);if(!ie.packageLocation)throw $i("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.name}@${Z.reference}${Z.name!==_e?` (via "${_e}")`:""} +Required by: ${S.name}@${S.reference} (via ${Re}) +`,{request:_e,issuer:Re,dependencyLocator:Object.assign({},Z)});let Pe=ie.packageLocation;w?ze=V.join(Pe,w):ze=Pe}else if(V.isAbsolute(Te))ze=V.normalize(Te);else{if(!ke)throw $i("API_ERROR","The resolveToUnqualified function must be called with a valid issuer when the path isn't a builtin nor absolute",{request:_e,issuer:Re});let b=V.resolve(ke);ke.match(u)?ze=V.normalize(V.join(b,Te)):ze=V.normalize(V.join(V.dirname(b),Te))}return V.normalize(ze)}function we(Te,ke,be=te,_e){if(n.test(Te))return ke;let Re=le(ke,be,_e);return Re?V.normalize(Re):ke}function xe(Te,{extensions:ke=Object.keys(tp.Module._extensions)}={}){let be=[],_e=he(Te,be,{extensions:ke});if(_e)return V.normalize(_e);{ZIe(be.map(He=>ue.fromPortablePath(He)));let Re=au(Te),ze=ce(Te);if(ze){let{packageLocation:He}=U(ze),b=!0;try{e.fakeFs.accessSync(He)}catch(w){if(w?.code==="ENOENT")b=!1;else{let S=(w?.message??w??"empty exception thrown").replace(/^[A-Z]/,y=>y.toLowerCase());throw $i("QUALIFIED_PATH_RESOLUTION_FAILED",`Required package exists but could not be accessed (${S}). + +Missing package: ${ze.name}@${ze.reference} +Expected package location: ${au(He)} +`,{unqualifiedPath:Re,extensions:ke})}}if(!b){let w=He.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 $i("QUALIFIED_PATH_RESOLUTION_FAILED",`${w} + +Missing package: ${ze.name}@${ze.reference} +Expected package location: ${au(He)} +`,{unqualifiedPath:Re,extensions:ke})}}throw $i("QUALIFIED_PATH_RESOLUTION_FAILED",`Qualified path resolution failed: we looked for the following paths, but none could be accessed. + +Source path: ${Re} +${be.map(He=>`Not found: ${au(He)} +`).join("")}`,{unqualifiedPath:Re,extensions:ke})}}function ht(Te,ke,be){if(!ke)throw new Error("Assertion failed: An issuer is required to resolve private import mappings");let _e=YIe({name:Te,base:(0,hm.pathToFileURL)(ue.fromPortablePath(ke)),conditions:be.conditions??te,readFileSyncFn:ne});if(_e instanceof URL)return xe(ue.toPortablePath((0,hm.fileURLToPath)(_e)),{extensions:be.extensions});if(_e.startsWith("#"))throw new Error("Mapping from one private import to another isn't allowed");return H(_e,ke,be)}function H(Te,ke,be={}){try{if(Te.startsWith("#"))return ht(Te,ke,be);let{considerBuiltins:_e,extensions:Re,conditions:ze}=be,He=ee(Te,ke,{considerBuiltins:_e});if(Te==="pnpapi")return He;if(He===null)return null;let b=()=>ke!==null?ae(ke):!1,w=(!_e||!(0,tp.isBuiltin)(Te))&&!b()?we(Te,He,ze,ke):He;return xe(w,{extensions:Re})}catch(_e){throw Object.hasOwn(_e,"pnpCode")&&Object.assign(_e.data,{request:au(Te),issuer:ke&&au(ke)}),_e}}function lt(Te){let ke=V.normalize(Te),be=mi.resolveVirtual(ke);return be!==ke?be:null}return{VERSIONS:Ie,topLevel:Fe,getLocator:(Te,ke)=>Array.isArray(ke)?{name:ke[0],reference:ke[1]}:{name:Te,reference:ke},getDependencyTreeRoots:()=>[...t.dependencyTreeRoots],getAllLocators(){let Te=[];for(let[ke,be]of v)for(let _e of be.keys())ke!==null&&_e!==null&&Te.push({name:ke,reference:_e});return Te},getPackageInformation:Te=>{let ke=g(Te);if(ke===null)return null;let be=ue.fromPortablePath(ke.packageLocation);return{...ke,packageLocation:be}},findPackageLocator:Te=>ce(ue.toPortablePath(Te)),resolveToUnqualified:L("resolveToUnqualified",(Te,ke,be)=>{let _e=ke!==null?ue.toPortablePath(ke):null,Re=ee(ue.toPortablePath(Te),_e,be);return Re===null?null:ue.fromPortablePath(Re)}),resolveUnqualified:L("resolveUnqualified",(Te,ke)=>ue.fromPortablePath(xe(ue.toPortablePath(Te),ke))),resolveRequest:L("resolveRequest",(Te,ke,be)=>{let _e=ke!==null?ue.toPortablePath(ke):null,Re=H(ue.toPortablePath(Te),_e,be);return Re===null?null:ue.fromPortablePath(Re)}),resolveVirtual:L("resolveVirtual",Te=>{let ke=lt(ue.toPortablePath(Te));return ke!==null?ue.fromPortablePath(ke):null})}}Pt();var $Ie=(t,e,r)=>{let o=XB(t),a=Yj(o,{basePath:e}),n=ue.join(e,dr.pnpCjs);return nq(a,{fakeFs:r,pnpapiResolution:n})};var sq=$e(t1e());qt();var mA={};Vt(mA,{checkManifestCompatibility:()=>r1e,extractBuildRequest:()=>vQ,getExtractHint:()=>oq,hasBindingGyp:()=>aq});Ye();Pt();function r1e(t){return W.isPackageCompatible(t,zi.getArchitectureSet())}function vQ(t,e,r,{configuration:o}){let a=[];for(let n of["preinstall","install","postinstall"])e.manifest.scripts.has(n)&&a.push({type:0,script:n});return!e.manifest.scripts.has("install")&&e.misc.hasBindingGyp&&a.push({type:1,script:"node-gyp rebuild"}),a.length===0?null:t.linkType!=="HARD"?{skipped:!0,explain:n=>n.reportWarningOnce(6,`${W.prettyLocator(o,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?{skipped:!0,explain:n=>n.reportInfoOnce(5,`${W.prettyLocator(o,t)} lists build scripts, but its build has been explicitly disabled through configuration.`)}:!o.get("enableScripts")&&!r.built?{skipped:!0,explain:n=>n.reportWarningOnce(4,`${W.prettyLocator(o,t)} lists build scripts, but all build scripts have been disabled.`)}:r1e(t)?{skipped:!1,directives:a}:{skipped:!0,explain:n=>n.reportWarningOnce(76,`${W.prettyLocator(o,t)} The ${zi.getArchitectureName()} architecture is incompatible with this package, build skipped.`)}}var YIt=new Set([".exe",".bin",".h",".hh",".hpp",".c",".cc",".cpp",".java",".jar",".node"]);function oq(t){return t.packageFs.getExtractHint({relevantExtensions:YIt})}function aq(t){let e=V.join(t.prefixPath,"binding.gyp");return t.packageFs.existsSync(e)}var av={};Vt(av,{getUnpluggedPath:()=>ov});Ye();Pt();function ov(t,{configuration:e}){return V.resolve(e.get("pnpUnpluggedFolder"),W.slugifyLocator(t))}var WIt=new Set([W.makeIdent(null,"open").identHash,W.makeIdent(null,"opn").identHash]),D0=class{constructor(){this.mode="strict";this.pnpCache=new Map}getCustomDataKey(){return JSON.stringify({name:"PnpLinker",version:2})}supportsPackage(e,r){return this.isEnabled(r)}async findPackageLocation(e,r){if(!this.isEnabled(r))throw new Error("Assertion failed: Expected the PnP linker to be enabled");let o=P0(r.project).cjs;if(!oe.existsSync(o))throw new it(`The project in ${de.pretty(r.project.configuration,`${r.project.cwd}/package.json`,de.Type.PATH)} doesn't seem to have been installed - running an install there might help`);let a=je.getFactoryWithDefault(this.pnpCache,o,()=>je.dynamicRequire(o,{cachingStrategy:je.CachingStrategy.FsTime})),n={name:W.stringifyIdent(e),reference:e.reference},u=a.getPackageInformation(n);if(!u)throw new it(`Couldn't find ${W.prettyLocator(r.project.configuration,e)} in the currently installed PnP map - running an install might help`);return ue.toPortablePath(u.packageLocation)}async findPackageLocator(e,r){if(!this.isEnabled(r))return null;let o=P0(r.project).cjs;if(!oe.existsSync(o))return null;let n=je.getFactoryWithDefault(this.pnpCache,o,()=>je.dynamicRequire(o,{cachingStrategy:je.CachingStrategy.FsTime})).findPackageLocator(ue.fromPortablePath(e));return n?W.makeLocator(W.parseIdent(n.name),n.reference):null}makeInstaller(e){return new gm(e)}isEnabled(e){return!(e.project.configuration.get("nodeLinker")!=="pnp"||e.project.configuration.get("pnpMode")!==this.mode)}},gm=class{constructor(e){this.opts=e;this.mode="strict";this.asyncActions=new je.AsyncActions(10);this.packageRegistry=new Map;this.virtualTemplates=new Map;this.isESMLoaderRequired=!1;this.customData={store:new Map};this.unpluggedPaths=new Set;this.opts=e}attachCustomData(e){this.customData=e}async installPackage(e,r,o){let a=W.stringifyIdent(e),n=e.reference,u=!!this.opts.project.tryWorkspaceByLocator(e),A=W.isVirtualLocator(e),p=e.peerDependencies.size>0&&!A,h=!p&&!u,C=!p&&e.linkType!=="SOFT",I,v;if(h||C){let te=A?W.devirtualizeLocator(e):e;I=this.customData.store.get(te.locatorHash),typeof I>"u"&&(I=await KIt(r),e.linkType==="HARD"&&this.customData.store.set(te.locatorHash,I)),I.manifest.type==="module"&&(this.isESMLoaderRequired=!0),v=this.opts.project.getDependencyMeta(te,e.version)}let x=h?vQ(e,I,v,{configuration:this.opts.project.configuration}):null,E=C?await this.unplugPackageIfNeeded(e,I,r,v,o):r.packageFs;if(V.isAbsolute(r.prefixPath))throw new Error(`Assertion failed: Expected the prefix path (${r.prefixPath}) to be relative to the parent`);let R=V.resolve(E.getRealPath(),r.prefixPath),L=lq(this.opts.project.cwd,R),U=new Map,z=new Set;if(A){for(let te of e.peerDependencies.values())U.set(W.stringifyIdent(te),null),z.add(W.stringifyIdent(te));if(!u){let te=W.devirtualizeLocator(e);this.virtualTemplates.set(te.locatorHash,{location:lq(this.opts.project.cwd,mi.resolveVirtual(R)),locator:te})}}return je.getMapWithDefault(this.packageRegistry,a).set(n,{packageLocation:L,packageDependencies:U,packagePeers:z,linkType:e.linkType,discardFromLookup:r.discardFromLookup||!1}),{packageLocation:R,buildRequest:x}}async attachInternalDependencies(e,r){let o=this.getPackageInformation(e);for(let[a,n]of r){let u=W.areIdentsEqual(a,n)?n.reference:[W.stringifyIdent(n),n.reference];o.packageDependencies.set(W.stringifyIdent(a),u)}}async attachExternalDependents(e,r){for(let o of r)this.getDiskInformation(o).packageDependencies.set(W.stringifyIdent(e),e.reference)}async finalizeInstall(){if(this.opts.project.configuration.get("pnpMode")!==this.mode)return;let e=P0(this.opts.project);if(this.isEsmEnabled()||await oe.removePromise(e.esmLoader),this.opts.project.configuration.get("nodeLinker")!=="pnp"){await oe.removePromise(e.cjs),await oe.removePromise(e.data),await oe.removePromise(e.esmLoader),await oe.removePromise(this.opts.project.configuration.get("pnpUnpluggedFolder"));return}for(let{locator:C,location:I}of this.virtualTemplates.values())je.getMapWithDefault(this.packageRegistry,W.stringifyIdent(C)).set(C.reference,{packageLocation:I,packageDependencies:new Map,packagePeers:new Set,linkType:"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"),o=this.opts.project.workspaces.map(({anchoredLocator:C})=>({name:W.stringifyIdent(C),reference:C.reference})),a=r!=="none",n=[],u=new Map,A=je.buildIgnorePattern([".yarn/sdks/**",...this.opts.project.configuration.get("pnpIgnorePatterns")]),p=this.packageRegistry,h=this.opts.project.configuration.get("pnpShebang");if(r==="dependencies-only")for(let C of this.opts.project.storedPackages.values())this.opts.project.tryWorkspaceByLocator(C)&&n.push({name:W.stringifyIdent(C),reference:C.reference});return await this.asyncActions.wait(),await this.finalizeInstallWithPnp({dependencyTreeRoots:o,enableTopLevelFallback:a,fallbackExclusionList:n,fallbackPool:u,ignorePattern:A,packageRegistry:p,shebang:h}),{customData:this.customData}}async transformPnpSettings(e){}isEsmEnabled(){if(this.opts.project.configuration.sources.has("pnpEnableEsmLoader"))return this.opts.project.configuration.get("pnpEnableEsmLoader");if(this.isESMLoaderRequired)return!0;for(let e of this.opts.project.workspaces)if(e.manifest.type==="module")return!0;return!1}async finalizeInstallWithPnp(e){let r=P0(this.opts.project),o=await this.locateNodeModules(e.ignorePattern);if(o.length>0){this.opts.report.reportWarning(31,"One or more node_modules have been detected and will be removed. This operation may take some time.");for(let n of o)await oe.removePromise(n)}if(await this.transformPnpSettings(e),this.opts.project.configuration.get("pnpEnableInlining")){let n=xIe(e);await oe.changeFilePromise(r.cjs,n,{automaticNewlines:!0,mode:493}),await oe.removePromise(r.data)}else{let{dataFile:n,loaderFile:u}=kIe(e);await oe.changeFilePromise(r.cjs,u,{automaticNewlines:!0,mode:493}),await oe.changeFilePromise(r.data,n,{automaticNewlines:!0,mode:420})}this.isEsmEnabled()&&(this.opts.report.reportWarning(0,"ESM support for PnP uses the experimental loader API and is therefore experimental"),await oe.changeFilePromise(r.esmLoader,(0,sq.default)(),{automaticNewlines:!0,mode:420}));let a=this.opts.project.configuration.get("pnpUnpluggedFolder");if(this.unpluggedPaths.size===0)await oe.removePromise(a);else for(let n of await oe.readdirPromise(a)){let u=V.resolve(a,n);this.unpluggedPaths.has(u)||await oe.removePromise(u)}}async locateNodeModules(e){let r=[],o=e?new RegExp(e):null;for(let a of this.opts.project.workspaces){let n=V.join(a.cwd,"node_modules");if(o&&o.test(V.relative(this.opts.project.cwd,a.cwd))||!oe.existsSync(n))continue;let u=await oe.readdirPromise(n,{withFileTypes:!0}),A=u.filter(p=>!p.isDirectory()||p.name===".bin"||!p.name.startsWith("."));if(A.length===u.length)r.push(n);else for(let p of A)r.push(V.join(n,p.name))}return r}async unplugPackageIfNeeded(e,r,o,a,n){return this.shouldBeUnplugged(e,r,a)?this.unplugPackage(e,o,n):o.packageFs}shouldBeUnplugged(e,r,o){return typeof o.unplugged<"u"?o.unplugged:WIt.has(e.identHash)||e.conditions!=null?!0:r.manifest.preferUnplugged!==null?r.manifest.preferUnplugged:!!(vQ(e,r,o,{configuration:this.opts.project.configuration})?.skipped===!1||r.misc.extractHint)}async unplugPackage(e,r,o){let a=ov(e,{configuration:this.opts.project.configuration});return this.opts.project.disabledLocators.has(e.locatorHash)?new Uu(a,{baseFs:r.packageFs,pathUtils:V}):(this.unpluggedPaths.add(a),o.holdFetchResult(this.asyncActions.set(e.locatorHash,async()=>{let n=V.join(a,r.prefixPath,".ready");await oe.existsPromise(n)||(this.opts.project.storedBuildState.delete(e.locatorHash),await oe.mkdirPromise(a,{recursive:!0}),await oe.copyPromise(a,Bt.dot,{baseFs:r.packageFs,overwrite:!1}),await oe.writeFilePromise(n,""))})),new gn(a))}getPackageInformation(e){let r=W.stringifyIdent(e),o=e.reference,a=this.packageRegistry.get(r);if(!a)throw new Error(`Assertion failed: The package information store should have been available (for ${W.prettyIdent(this.opts.project.configuration,e)})`);let n=a.get(o);if(!n)throw new Error(`Assertion failed: The package information should have been available (for ${W.prettyLocator(this.opts.project.configuration,e)})`);return n}getDiskInformation(e){let r=je.getMapWithDefault(this.packageRegistry,"@@disk"),o=lq(this.opts.project.cwd,e);return je.getFactoryWithDefault(r,o,()=>({packageLocation:o,packageDependencies:new Map,packagePeers:new Set,linkType:"SOFT",discardFromLookup:!1}))}};function lq(t,e){let r=V.relative(t,e);return r.match(/^\.{0,2}\//)||(r=`./${r}`),r.replace(/\/?$/,"/")}async function KIt(t){let e=await Ot.tryFind(t.prefixPath,{baseFs:t.packageFs})??new Ot,r=new Set(["preinstall","install","postinstall"]);for(let o of e.scripts.keys())r.has(o)||e.scripts.delete(o);return{manifest:{scripts:e.scripts,preferUnplugged:e.preferUnplugged,type:e.type},misc:{extractHint:oq(t),hasBindingGyp:aq(t)}}}Ye();Ye();qt();var n1e=$e(Zo());var S0=class extends ut{constructor(){super(...arguments);this.all=ge.Boolean("-A,--all",!1,{description:"Unplug direct dependencies from the entire project"});this.recursive=ge.Boolean("-R,--recursive",!1,{description:"Unplug both direct and transitive dependencies"});this.json=ge.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"});this.patterns=ge.Rest()}async execute(){let r=await Ke.find(this.context.cwd,this.context.plugins),{project:o,workspace:a}=await St.find(r,this.context.cwd),n=await Lr.find(r);if(!a)throw new rr(o.cwd,this.context.cwd);if(r.get("nodeLinker")!=="pnp")throw new it("This command can only be used if the `nodeLinker` option is set to `pnp`");await o.restoreInstallState();let u=new Set(this.patterns),A=this.patterns.map(x=>{let E=W.parseDescriptor(x),R=E.range!=="unknown"?E:W.makeDescriptor(E,"*");if(!kr.validRange(R.range))throw new it(`The range of the descriptor patterns must be a valid semver range (${W.prettyDescriptor(r,R)})`);return L=>{let U=W.stringifyIdent(L);return!n1e.default.isMatch(U,W.stringifyIdent(R))||L.version&&!kr.satisfiesWithPrereleases(L.version,R.range)?!1:(u.delete(x),!0)}}),p=()=>{let x=[];for(let E of o.storedPackages.values())!o.tryWorkspaceByLocator(E)&&!W.isVirtualLocator(E)&&A.some(R=>R(E))&&x.push(E);return x},h=x=>{let E=new Set,R=[],L=(U,z)=>{if(E.has(U.locatorHash))return;let te=!!o.tryWorkspaceByLocator(U);if(!(z>0&&!this.recursive&&te)&&(E.add(U.locatorHash),!o.tryWorkspaceByLocator(U)&&A.some(le=>le(U))&&R.push(U),!(z>0&&!this.recursive)))for(let le of U.dependencies.values()){let he=o.storedResolutions.get(le.descriptorHash);if(!he)throw new Error("Assertion failed: The resolution should have been registered");let Ae=o.storedPackages.get(he);if(!Ae)throw new Error("Assertion failed: The package should have been registered");L(Ae,z+1)}};for(let U of x)L(U.anchoredPackage,0);return R},C,I;if(this.all&&this.recursive?(C=p(),I="the project"):this.all?(C=h(o.workspaces),I="any workspace"):(C=h([a]),I="this workspace"),u.size>1)throw new it(`Patterns ${de.prettyList(r,u,de.Type.CODE)} don't match any packages referenced by ${I}`);if(u.size>0)throw new it(`Pattern ${de.prettyList(r,u,de.Type.CODE)} doesn't match any packages referenced by ${I}`);C=je.sortMap(C,x=>W.stringifyLocator(x));let v=await Nt.start({configuration:r,stdout:this.context.stdout,json:this.json},async x=>{for(let E of C){let R=E.version??"unknown",L=o.topLevelWorkspace.manifest.ensureDependencyMeta(W.makeDescriptor(E,R));L.unplugged=!0,x.reportInfo(0,`Will unpack ${W.prettyLocator(r,E)} to ${de.pretty(r,ov(E,{configuration:r}),de.Type.PATH)}`),x.reportJson({locator:W.stringifyLocator(E),version:R})}await o.topLevelWorkspace.persistManifest(),this.json||x.reportSeparator()});return v.hasErrors()?v.exitCode():await o.installWithNewReport({json:this.json,stdout:this.context.stdout},{cache:n})}};S0.paths=[["unplug"]],S0.usage=nt.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 P0=t=>({cjs:V.join(t.cwd,dr.pnpCjs),data:V.join(t.cwd,dr.pnpData),esmLoader:V.join(t.cwd,dr.pnpEsmLoader)}),s1e=t=>/\s/.test(t)?JSON.stringify(t):t;async function VIt(t,e,r){let o=/\s*--require\s+\S*\.pnp\.c?js\s*/g,a=/\s*--experimental-loader\s+\S*\.pnp\.loader\.mjs\s*/,n=(e.NODE_OPTIONS??"").replace(o," ").replace(a," ").trim();if(t.configuration.get("nodeLinker")!=="pnp"){e.NODE_OPTIONS=n;return}let u=P0(t),A=`--require ${s1e(ue.fromPortablePath(u.cjs))}`;oe.existsSync(u.esmLoader)&&(A=`${A} --experimental-loader ${(0,i1e.pathToFileURL)(ue.fromPortablePath(u.esmLoader)).href}`),oe.existsSync(u.cjs)&&(e.NODE_OPTIONS=n?`${A} ${n}`:A)}async function zIt(t,e){let r=P0(t);e(r.cjs),e(r.data),e(r.esmLoader),e(t.configuration.get("pnpUnpluggedFolder"))}var JIt={hooks:{populateYarnPaths:zIt,setupScriptEnvironment:VIt},configuration:{nodeLinker:{description:'The linker used for installing Node packages, one of: "pnp", "pnpm", or "node-modules"',type:"STRING",default:"pnp"},winLinkType:{description:"Whether Yarn should use Windows Junctions or symlinks when creating links on Windows.",type:"STRING",values:["junctions","symlinks"],default:"junctions"},pnpMode:{description:"If 'strict', generates standard PnP maps. If 'loose', merges them with the n_m resolution.",type:"STRING",default:"strict"},pnpShebang:{description:"String to prepend to the generated PnP script",type:"STRING",default:"#!/usr/bin/env node"},pnpIgnorePatterns:{description:"Array of glob patterns; files matching them will use the classic resolution",type:"STRING",default:[],isArray:!0},pnpEnableEsmLoader:{description:"If true, Yarn will generate an ESM loader (`.pnp.loader.mjs`). If this is not explicitly set Yarn tries to automatically detect whether ESM support is required.",type:"BOOLEAN",default:!1},pnpEnableInlining:{description:"If true, the PnP data will be inlined along with the generated loader",type:"BOOLEAN",default:!0},pnpFallbackMode:{description:"If true, the generated PnP loader will follow the top-level fallback rule",type:"STRING",default:"dependencies-only"},pnpUnpluggedFolder:{description:"Folder where the unplugged packages must be stored",type:"ABSOLUTE_PATH",default:"./.yarn/unplugged"}},linkers:[D0],commands:[S0]},XIt=JIt;var p1e=$e(u1e());qt();var dq=$e(Be("crypto")),h1e=$e(Be("fs")),g1e=1,Pi="node_modules",DQ=".bin",d1e=".yarn-state.yml",h1t=1e3,mq=(o=>(o.CLASSIC="classic",o.HARDLINKS_LOCAL="hardlinks-local",o.HARDLINKS_GLOBAL="hardlinks-global",o))(mq||{}),lv=class{constructor(){this.installStateCache=new Map}getCustomDataKey(){return JSON.stringify({name:"NodeModulesLinker",version:3})}supportsPackage(e,r){return this.isEnabled(r)}async findPackageLocation(e,r){if(!this.isEnabled(r))throw new Error("Assertion failed: Expected the node-modules linker to be enabled");let o=r.project.tryWorkspaceByLocator(e);if(o)return o.cwd;let a=await je.getFactoryWithDefault(this.installStateCache,r.project.cwd,async()=>await gq(r.project,{unrollAliases:!0}));if(a===null)throw new it("Couldn't find the node_modules state file - running an install might help (findPackageLocation)");let n=a.locatorMap.get(W.stringifyLocator(e));if(!n){let p=new it(`Couldn't find ${W.prettyLocator(r.project.configuration,e)} in the currently installed node_modules map - running an install might help`);throw p.code="LOCATOR_NOT_INSTALLED",p}let u=n.locations.sort((p,h)=>p.split(V.sep).length-h.split(V.sep).length),A=V.join(r.project.configuration.startingCwd,Pi);return u.find(p=>V.contains(A,p))||n.locations[0]}async findPackageLocator(e,r){if(!this.isEnabled(r))return null;let o=await je.getFactoryWithDefault(this.installStateCache,r.project.cwd,async()=>await gq(r.project,{unrollAliases:!0}));if(o===null)return null;let{locationRoot:a,segments:n}=PQ(V.resolve(e),{skipPrefix:r.project.cwd}),u=o.locationTree.get(a);if(!u)return null;let A=u.locator;for(let p of n){if(u=u.children.get(p),!u)break;A=u.locator||A}return W.parseLocator(A)}makeInstaller(e){return new hq(e)}isEnabled(e){return e.project.configuration.get("nodeLinker")==="node-modules"}},hq=class{constructor(e){this.opts=e;this.localStore=new Map;this.realLocatorChecksums=new Map;this.customData={store:new Map}}attachCustomData(e){this.customData=e}async installPackage(e,r){let o=V.resolve(r.packageFs.getRealPath(),r.prefixPath),a=this.customData.store.get(e.locatorHash);if(typeof a>"u"&&(a=await g1t(e,r),e.linkType==="HARD"&&this.customData.store.set(e.locatorHash,a)),!W.isPackageCompatible(e,this.opts.project.configuration.getSupportedArchitectures()))return{packageLocation:null,buildRequest:null};let n=new Map,u=new Set;n.has(W.stringifyIdent(e))||n.set(W.stringifyIdent(e),e.reference);let A=e;if(W.isVirtualLocator(e)){A=W.devirtualizeLocator(e);for(let C of e.peerDependencies.values())n.set(W.stringifyIdent(C),null),u.add(W.stringifyIdent(C))}let p={packageLocation:`${ue.fromPortablePath(o)}/`,packageDependencies:n,packagePeers:u,linkType:e.linkType,discardFromLookup:r.discardFromLookup??!1};this.localStore.set(e.locatorHash,{pkg:e,customPackageData:a,dependencyMeta:this.opts.project.getDependencyMeta(e,e.version),pnpNode:p});let h=r.checksum?r.checksum.substring(r.checksum.indexOf("/")+1):null;return this.realLocatorChecksums.set(A.locatorHash,h),{packageLocation:o,buildRequest:null}}async attachInternalDependencies(e,r){let o=this.localStore.get(e.locatorHash);if(typeof o>"u")throw new Error("Assertion failed: Expected information object to have been registered");for(let[a,n]of r){let u=W.areIdentsEqual(a,n)?n.reference:[W.stringifyIdent(n),n.reference];o.pnpNode.packageDependencies.set(W.stringifyIdent(a),u)}}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 mi({baseFs:new zl({maxOpenFiles:80,readOnlyArchives:!0})}),r=await gq(this.opts.project),o=this.opts.project.configuration.get("nmMode");(r===null||o!==r.nmMode)&&(this.opts.project.storedBuildState.clear(),r={locatorMap:new Map,binSymlinks:new Map,locationTree:new Map,nmMode:o,mtimeMs:0});let a=new Map(this.opts.project.workspaces.map(v=>{let x=this.opts.project.configuration.get("nmHoistingLimits");try{x=je.validateEnum(VB,v.manifest.installConfig?.hoistingLimits??x)}catch{let R=W.prettyWorkspace(this.opts.project.configuration,v);this.opts.report.reportWarning(57,`${R}: Invalid 'installConfig.hoistingLimits' value. Expected one of ${Object.values(VB).join(", ")}, using default: "${x}"`)}return[v.relativeCwd,x]})),n=new Map(this.opts.project.workspaces.map(v=>{let x=this.opts.project.configuration.get("nmSelfReferences");return x=v.manifest.installConfig?.selfReferences??x,[v.relativeCwd,x]})),u={VERSIONS:{std:1},topLevel:{name:null,reference:null},getLocator:(v,x)=>Array.isArray(x)?{name:x[0],reference:x[1]}:{name:v,reference:x},getDependencyTreeRoots:()=>this.opts.project.workspaces.map(v=>{let x=v.anchoredLocator;return{name:W.stringifyIdent(x),reference:x.reference}}),getPackageInformation:v=>{let x=v.reference===null?this.opts.project.topLevelWorkspace.anchoredLocator:W.makeLocator(W.parseIdent(v.name),v.reference),E=this.localStore.get(x.locatorHash);if(typeof E>"u")throw new Error("Assertion failed: Expected the package reference to have been registered");return E.pnpNode},findPackageLocator:v=>{let x=this.opts.project.tryWorkspaceByCwd(ue.toPortablePath(v));if(x!==null){let E=x.anchoredLocator;return{name:W.stringifyIdent(E),reference:E.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:v=>ue.fromPortablePath(mi.resolveVirtual(ue.toPortablePath(v)))},{tree:A,errors:p,preserveSymlinksRequired:h}=zB(u,{pnpifyFs:!1,validateExternalSoftLinks:!0,hoistingLimitsByCwd:a,project:this.opts.project,selfReferencesByCwd:n});if(!A){for(let{messageName:v,text:x}of p)this.opts.report.reportError(v,x);return}let C=qj(A);await w1t(r,C,{baseFs:e,project:this.opts.project,report:this.opts.report,realLocatorChecksums:this.realLocatorChecksums,loadManifest:async v=>{let x=W.parseLocator(v),E=this.localStore.get(x.locatorHash);if(typeof E>"u")throw new Error("Assertion failed: Expected the slot to exist");return E.customPackageData.manifest}});let I=[];for(let[v,x]of C.entries()){if(C1e(v))continue;let E=W.parseLocator(v),R=this.localStore.get(E.locatorHash);if(typeof R>"u")throw new Error("Assertion failed: Expected the slot to exist");if(this.opts.project.tryWorkspaceByLocator(R.pkg))continue;let L=mA.extractBuildRequest(R.pkg,R.customPackageData,R.dependencyMeta,{configuration:this.opts.project.configuration});!L||I.push({buildLocations:x.locations,locator:E,buildRequest:L})}return h&&this.opts.report.reportWarning(72,`The application uses portals and that's why ${de.pretty(this.opts.project.configuration,"--preserve-symlinks",de.Type.CODE)} Node option is required for launching it`),{customData:this.customData,records:I}}};async function g1t(t,e){let r=await Ot.tryFind(e.prefixPath,{baseFs:e.packageFs})??new Ot,o=new Set(["preinstall","install","postinstall"]);for(let a of r.scripts.keys())o.has(a)||r.scripts.delete(a);return{manifest:{bin:r.bin,scripts:r.scripts},misc:{hasBindingGyp:mA.hasBindingGyp(e)}}}async function d1t(t,e,r,o,{installChangedByUser:a}){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: ${g1e} +`,n+=` nmMode: ${o.value} +`;let u=Array.from(e.keys()).sort(),A=W.stringifyLocator(t.topLevelWorkspace.anchoredLocator);for(let C of u){let I=e.get(C);n+=` +`,n+=`${JSON.stringify(C)}: +`,n+=` locations: +`;for(let v of I.locations){let x=V.contains(t.cwd,v);if(x===null)throw new Error(`Assertion failed: Expected the path to be within the project (${v})`);n+=` - ${JSON.stringify(x)} +`}if(I.aliases.length>0){n+=` aliases: +`;for(let v of I.aliases)n+=` - ${JSON.stringify(v)} +`}if(C===A&&r.size>0){n+=` bin: +`;for(let[v,x]of r){let E=V.contains(t.cwd,v);if(E===null)throw new Error(`Assertion failed: Expected the path to be within the project (${v})`);n+=` ${JSON.stringify(E)}: +`;for(let[R,L]of x){let U=V.relative(V.join(v,Pi),L);n+=` ${JSON.stringify(R)}: ${JSON.stringify(U)} +`}}}}let p=t.cwd,h=V.join(p,Pi,d1e);a&&await oe.removePromise(h),await oe.changeFilePromise(h,n,{automaticNewlines:!0})}async function gq(t,{unrollAliases:e=!1}={}){let r=t.cwd,o=V.join(r,Pi,d1e),a;try{a=await oe.statPromise(o)}catch{}if(!a)return null;let n=Ki(await oe.readFilePromise(o,"utf8"));if(n.__metadata.version>g1e)return null;let u=n.__metadata.nmMode||"classic",A=new Map,p=new Map;delete n.__metadata;for(let[h,C]of Object.entries(n)){let I=C.locations.map(x=>V.join(r,x)),v=C.bin;if(v)for(let[x,E]of Object.entries(v)){let R=V.join(r,ue.toPortablePath(x)),L=je.getMapWithDefault(p,R);for(let[U,z]of Object.entries(E))L.set(U,ue.toPortablePath([R,Pi,z].join(V.sep)))}if(A.set(h,{target:Bt.dot,linkType:"HARD",locations:I,aliases:C.aliases||[]}),e&&C.aliases)for(let x of C.aliases){let{scope:E,name:R}=W.parseLocator(h),L=W.makeLocator(W.makeIdent(E,R),x),U=W.stringifyLocator(L);A.set(U,{target:Bt.dot,linkType:"HARD",locations:I,aliases:[]})}}return{locatorMap:A,binSymlinks:p,locationTree:m1e(A,{skipPrefix:t.cwd}),nmMode:u,mtimeMs:a.mtimeMs}}var GC=async(t,e)=>{if(t.split(V.sep).indexOf(Pi)<0)throw new Error(`Assertion failed: trying to remove dir that doesn't contain node_modules: ${t}`);try{if(!e.innerLoop){let o=e.allowSymlink?await oe.statPromise(t):await oe.lstatPromise(t);if(e.allowSymlink&&!o.isDirectory()||!e.allowSymlink&&o.isSymbolicLink()){await oe.unlinkPromise(t);return}}let r=await oe.readdirPromise(t,{withFileTypes:!0});for(let o of r){let a=V.join(t,o.name);o.isDirectory()?(o.name!==Pi||e&&e.innerLoop)&&await GC(a,{innerLoop:!0,contentsOnly:!1}):await oe.unlinkPromise(a)}e.contentsOnly||await oe.rmdirPromise(t)}catch(r){if(r.code!=="ENOENT"&&r.code!=="ENOTEMPTY")throw r}},A1e=4,PQ=(t,{skipPrefix:e})=>{let r=V.contains(e,t);if(r===null)throw new Error(`Assertion failed: Writing attempt prevented to ${t} which is outside project root: ${e}`);let o=r.split(V.sep).filter(p=>p!==""),a=o.indexOf(Pi),n=o.slice(0,a).join(V.sep),u=V.join(e,n),A=o.slice(a);return{locationRoot:u,segments:A}},m1e=(t,{skipPrefix:e})=>{let r=new Map;if(t===null)return r;let o=()=>({children:new Map,linkType:"HARD"});for(let[a,n]of t.entries()){if(n.linkType==="SOFT"&&V.contains(e,n.target)!==null){let A=je.getFactoryWithDefault(r,n.target,o);A.locator=a,A.linkType=n.linkType}for(let u of n.locations){let{locationRoot:A,segments:p}=PQ(u,{skipPrefix:e}),h=je.getFactoryWithDefault(r,A,o);for(let C=0;C{if(process.platform==="win32"&&r==="junctions"){let o;try{o=await oe.lstatPromise(t)}catch{}if(!o||o.isDirectory()){await oe.symlinkPromise(t,e,"junction");return}}await oe.symlinkPromise(V.relative(V.dirname(e),t),e)};async function y1e(t,e,r){let o=V.join(t,`${dq.default.randomBytes(16).toString("hex")}.tmp`);try{await oe.writeFilePromise(o,r);try{await oe.linkPromise(o,e)}catch{}}finally{await oe.unlinkPromise(o)}}async function m1t({srcPath:t,dstPath:e,entry:r,globalHardlinksStore:o,baseFs:a,nmMode:n}){if(r.kind===E1e.FILE){if(n.value==="hardlinks-global"&&o&&r.digest){let A=V.join(o,r.digest.substring(0,2),`${r.digest.substring(2)}.dat`),p;try{let h=await oe.statPromise(A);if(h&&(!r.mtimeMs||h.mtimeMs>r.mtimeMs||h.mtimeMs(o.FILE="file",o.DIRECTORY="directory",o.SYMLINK="symlink",o))(E1e||{}),y1t=async(t,e,{baseFs:r,globalHardlinksStore:o,nmMode:a,windowsLinkType:n,packageChecksum:u})=>{await oe.mkdirPromise(t,{recursive:!0});let A=async(C=Bt.dot)=>{let I=V.join(e,C),v=await r.readdirPromise(I,{withFileTypes:!0}),x=new Map;for(let E of v){let R=V.join(C,E.name),L,U=V.join(I,E.name);if(E.isFile()){if(L={kind:"file",mode:(await r.lstatPromise(U)).mode},a.value==="hardlinks-global"){let z=await wn.checksumFile(U,{baseFs:r,algorithm:"sha1"});L.digest=z}}else if(E.isDirectory())L={kind:"directory"};else if(E.isSymbolicLink())L={kind:"symlink",symlinkTo:await r.readlinkPromise(U)};else throw new Error(`Unsupported file type (file: ${U}, mode: 0o${await r.statSync(U).mode.toString(8).padStart(6,"0")})`);if(x.set(R,L),E.isDirectory()&&R!==Pi){let z=await A(R);for(let[te,le]of z)x.set(te,le)}}return x},p;if(a.value==="hardlinks-global"&&o&&u){let C=V.join(o,u.substring(0,2),`${u.substring(2)}.json`);try{p=new Map(Object.entries(JSON.parse(await oe.readFilePromise(C,"utf8"))))}catch{p=await A()}}else p=await A();let h=!1;for(let[C,I]of p){let v=V.join(e,C),x=V.join(t,C);if(I.kind==="directory")await oe.mkdirPromise(x,{recursive:!0});else if(I.kind==="file"){let E=I.mtimeMs;await m1t({srcPath:v,dstPath:x,entry:I,nmMode:a,baseFs:r,globalHardlinksStore:o}),I.mtimeMs!==E&&(h=!0)}else I.kind==="symlink"&&await yq(V.resolve(V.dirname(x),I.symlinkTo),x,n)}if(a.value==="hardlinks-global"&&o&&h&&u){let C=V.join(o,u.substring(0,2),`${u.substring(2)}.json`);await oe.removePromise(C),await y1e(o,C,Buffer.from(JSON.stringify(Object.fromEntries(p))))}};function E1t(t,e,r,o){let a=new Map,n=new Map,u=new Map,A=!1,p=(h,C,I,v,x)=>{let E=!0,R=V.join(h,C),L=new Set;if(C===Pi||C.startsWith("@")){let z;try{z=oe.statSync(R)}catch{}E=!!z,z?z.mtimeMs>r?(A=!0,L=new Set(oe.readdirSync(R))):L=new Set(I.children.get(C).children.keys()):A=!0;let te=e.get(h);if(te){let le=V.join(h,Pi,DQ),he;try{he=oe.statSync(le)}catch{}if(!he)A=!0;else if(he.mtimeMs>r){A=!0;let Ae=new Set(oe.readdirSync(le)),ye=new Map;n.set(h,ye);for(let[ae,Ie]of te)Ae.has(ae)&&ye.set(ae,Ie)}else n.set(h,te)}}else E=x.has(C);let U=I.children.get(C);if(E){let{linkType:z,locator:te}=U,le={children:new Map,linkType:z,locator:te};if(v.children.set(C,le),te){let he=je.getSetWithDefault(u,te);he.add(R),u.set(te,he)}for(let he of U.children.keys())p(R,he,U,le,L)}else U.locator&&o.storedBuildState.delete(W.parseLocator(U.locator).locatorHash)};for(let[h,C]of t){let{linkType:I,locator:v}=C,x={children:new Map,linkType:I,locator:v};if(a.set(h,x),v){let E=je.getSetWithDefault(u,C.locator);E.add(h),u.set(C.locator,E)}C.children.has(Pi)&&p(h,Pi,C,x,new Set)}return{locationTree:a,binSymlinks:n,locatorLocations:u,installChangedByUser:A}}function C1e(t){let e=W.parseDescriptor(t);return W.isVirtualDescriptor(e)&&(e=W.devirtualizeDescriptor(e)),e.range.startsWith("link:")}async function C1t(t,e,r,{loadManifest:o}){let a=new Map;for(let[A,{locations:p}]of t){let h=C1e(A)?null:await o(A,p[0]),C=new Map;if(h)for(let[I,v]of h.bin){let x=V.join(p[0],v);v!==""&&oe.existsSync(x)&&C.set(I,v)}a.set(A,C)}let n=new Map,u=(A,p,h)=>{let C=new Map,I=V.contains(r,A);if(h.locator&&I!==null){let v=a.get(h.locator);for(let[x,E]of v){let R=V.join(A,ue.toPortablePath(E));C.set(x,R)}for(let[x,E]of h.children){let R=V.join(A,x),L=u(R,R,E);L.size>0&&n.set(A,new Map([...n.get(A)||new Map,...L]))}}else for(let[v,x]of h.children){let E=u(V.join(A,v),p,x);for(let[R,L]of E)C.set(R,L)}return C};for(let[A,p]of e){let h=u(A,A,p);h.size>0&&n.set(A,new Map([...n.get(A)||new Map,...h]))}return n}var f1e=(t,e)=>{if(!t||!e)return t===e;let r=W.parseLocator(t);W.isVirtualLocator(r)&&(r=W.devirtualizeLocator(r));let o=W.parseLocator(e);return W.isVirtualLocator(o)&&(o=W.devirtualizeLocator(o)),W.areLocatorsEqual(r,o)};function Eq(t){return V.join(t.get("globalFolder"),"store")}async function w1t(t,e,{baseFs:r,project:o,report:a,loadManifest:n,realLocatorChecksums:u}){let A=V.join(o.cwd,Pi),{locationTree:p,binSymlinks:h,locatorLocations:C,installChangedByUser:I}=E1t(t.locationTree,t.binSymlinks,t.mtimeMs,o),v=m1e(e,{skipPrefix:o.cwd}),x=[],E=async({srcDir:Ie,dstDir:Fe,linkType:g,globalHardlinksStore:Ee,nmMode:De,windowsLinkType:ce,packageChecksum:ne})=>{let ee=(async()=>{try{g==="SOFT"?(await oe.mkdirPromise(V.dirname(Fe),{recursive:!0}),await yq(V.resolve(Ie),Fe,ce)):await y1t(Fe,Ie,{baseFs:r,globalHardlinksStore:Ee,nmMode:De,windowsLinkType:ce,packageChecksum:ne})}catch(we){throw we.message=`While persisting ${Ie} -> ${Fe} ${we.message}`,we}finally{le.tick()}})().then(()=>x.splice(x.indexOf(ee),1));x.push(ee),x.length>A1e&&await Promise.race(x)},R=async(Ie,Fe,g)=>{let Ee=(async()=>{let De=async(ce,ne,ee)=>{try{ee.innerLoop||await oe.mkdirPromise(ne,{recursive:!0});let we=await oe.readdirPromise(ce,{withFileTypes:!0});for(let xe of we){if(!ee.innerLoop&&xe.name===DQ)continue;let ht=V.join(ce,xe.name),H=V.join(ne,xe.name);xe.isDirectory()?(xe.name!==Pi||ee&&ee.innerLoop)&&(await oe.mkdirPromise(H,{recursive:!0}),await De(ht,H,{...ee,innerLoop:!0})):ye.value==="hardlinks-local"||ye.value==="hardlinks-global"?await oe.linkPromise(ht,H):await oe.copyFilePromise(ht,H,h1e.default.constants.COPYFILE_FICLONE)}}catch(we){throw ee.innerLoop||(we.message=`While cloning ${ce} -> ${ne} ${we.message}`),we}finally{ee.innerLoop||le.tick()}};await De(Ie,Fe,g)})().then(()=>x.splice(x.indexOf(Ee),1));x.push(Ee),x.length>A1e&&await Promise.race(x)},L=async(Ie,Fe,g)=>{if(g)for(let[Ee,De]of Fe.children){let ce=g.children.get(Ee);await L(V.join(Ie,Ee),De,ce)}else{Fe.children.has(Pi)&&await GC(V.join(Ie,Pi),{contentsOnly:!1});let Ee=V.basename(Ie)===Pi&&v.has(V.join(V.dirname(Ie),V.sep));await GC(Ie,{contentsOnly:Ie===A,allowSymlink:Ee})}};for(let[Ie,Fe]of p){let g=v.get(Ie);for(let[Ee,De]of Fe.children){if(Ee===".")continue;let ce=g&&g.children.get(Ee),ne=V.join(Ie,Ee);await L(ne,De,ce)}}let U=async(Ie,Fe,g)=>{if(g){f1e(Fe.locator,g.locator)||await GC(Ie,{contentsOnly:Fe.linkType==="HARD"});for(let[Ee,De]of Fe.children){let ce=g.children.get(Ee);await U(V.join(Ie,Ee),De,ce)}}else{Fe.children.has(Pi)&&await GC(V.join(Ie,Pi),{contentsOnly:!0});let Ee=V.basename(Ie)===Pi&&v.has(V.join(V.dirname(Ie),V.sep));await GC(Ie,{contentsOnly:Fe.linkType==="HARD",allowSymlink:Ee})}};for(let[Ie,Fe]of v){let g=p.get(Ie);for(let[Ee,De]of Fe.children){if(Ee===".")continue;let ce=g&&g.children.get(Ee);await U(V.join(Ie,Ee),De,ce)}}let z=new Map,te=[];for(let[Ie,Fe]of C)for(let g of Fe){let{locationRoot:Ee,segments:De}=PQ(g,{skipPrefix:o.cwd}),ce=v.get(Ee),ne=Ee;if(ce){for(let ee of De)if(ne=V.join(ne,ee),ce=ce.children.get(ee),!ce)break;if(ce){let ee=f1e(ce.locator,Ie),we=e.get(ce.locator),xe=we.target,ht=ne,H=we.linkType;if(ee)z.has(xe)||z.set(xe,ht);else if(xe!==ht){let lt=W.parseLocator(ce.locator);W.isVirtualLocator(lt)&&(lt=W.devirtualizeLocator(lt)),te.push({srcDir:xe,dstDir:ht,linkType:H,realLocatorHash:lt.locatorHash})}}}}for(let[Ie,{locations:Fe}]of e.entries())for(let g of Fe){let{locationRoot:Ee,segments:De}=PQ(g,{skipPrefix:o.cwd}),ce=p.get(Ee),ne=v.get(Ee),ee=Ee,we=e.get(Ie),xe=W.parseLocator(Ie);W.isVirtualLocator(xe)&&(xe=W.devirtualizeLocator(xe));let ht=xe.locatorHash,H=we.target,lt=g;if(H===lt)continue;let Te=we.linkType;for(let ke of De)ne=ne.children.get(ke);if(!ce)te.push({srcDir:H,dstDir:lt,linkType:Te,realLocatorHash:ht});else for(let ke of De)if(ee=V.join(ee,ke),ce=ce.children.get(ke),!ce){te.push({srcDir:H,dstDir:lt,linkType:Te,realLocatorHash:ht});break}}let le=Xs.progressViaCounter(te.length),he=a.reportProgress(le),Ae=o.configuration.get("nmMode"),ye={value:Ae},ae=o.configuration.get("winLinkType");try{let Ie=ye.value==="hardlinks-global"?`${Eq(o.configuration)}/v1`:null;if(Ie&&!await oe.existsPromise(Ie)){await oe.mkdirpPromise(Ie);for(let g=0;g<256;g++)await oe.mkdirPromise(V.join(Ie,g.toString(16).padStart(2,"0")))}for(let g of te)(g.linkType==="SOFT"||!z.has(g.srcDir))&&(z.set(g.srcDir,g.dstDir),await E({...g,globalHardlinksStore:Ie,nmMode:ye,windowsLinkType:ae,packageChecksum:u.get(g.realLocatorHash)||null}));await Promise.all(x),x.length=0;for(let g of te){let Ee=z.get(g.srcDir);g.linkType!=="SOFT"&&g.dstDir!==Ee&&await R(Ee,g.dstDir,{nmMode:ye})}await Promise.all(x),await oe.mkdirPromise(A,{recursive:!0});let Fe=await C1t(e,v,o.cwd,{loadManifest:n});await I1t(h,Fe,o.cwd,ae),await d1t(o,e,Fe,ye,{installChangedByUser:I}),Ae=="hardlinks-global"&&ye.value=="hardlinks-local"&&a.reportWarningOnce(74,"'nmMode' has been downgraded to 'hardlinks-local' due to global cache and install folder being on different devices")}finally{he.stop()}}async function I1t(t,e,r,o){for(let a of t.keys()){if(V.contains(r,a)===null)throw new Error(`Assertion failed. Excepted bin symlink location to be inside project dir, instead it was at ${a}`);if(!e.has(a)){let n=V.join(a,Pi,DQ);await oe.removePromise(n)}}for(let[a,n]of e){if(V.contains(r,a)===null)throw new Error(`Assertion failed. Excepted bin symlink location to be inside project dir, instead it was at ${a}`);let u=V.join(a,Pi,DQ),A=t.get(a)||new Map;await oe.mkdirPromise(u,{recursive:!0});for(let p of A.keys())n.has(p)||(await oe.removePromise(V.join(u,p)),process.platform==="win32"&&await oe.removePromise(V.join(u,`${p}.cmd`)));for(let[p,h]of n){let C=A.get(p),I=V.join(u,p);C!==h&&(process.platform==="win32"?await(0,p1e.default)(ue.fromPortablePath(h),ue.fromPortablePath(I),{createPwshFile:!1}):(await oe.removePromise(I),await yq(h,I,o),V.contains(r,await oe.realpathPromise(h))!==null&&await oe.chmodPromise(h,493)))}}}Ye();Pt();nA();var cv=class extends D0{constructor(){super(...arguments);this.mode="loose"}makeInstaller(r){return new Cq(r)}},Cq=class extends gm{constructor(){super(...arguments);this.mode="loose"}async transformPnpSettings(r){let o=new mi({baseFs:new zl({maxOpenFiles:80,readOnlyArchives:!0})}),a=$Ie(r,this.opts.project.cwd,o),{tree:n,errors:u}=zB(a,{pnpifyFs:!1,project:this.opts.project});if(!n){for(let{messageName:I,text:v}of u)this.opts.report.reportError(I,v);return}let A=new Map;r.fallbackPool=A;let p=(I,v)=>{let x=W.parseLocator(v.locator),E=W.stringifyIdent(x);E===I?A.set(I,x.reference):A.set(I,[E,x.reference])},h=V.join(this.opts.project.cwd,dr.nodeModules),C=n.get(h);if(!(typeof C>"u")){if("target"in C)throw new Error("Assertion failed: Expected the root junction point to be a directory");for(let I of C.dirList){let v=V.join(h,I),x=n.get(v);if(typeof x>"u")throw new Error("Assertion failed: Expected the child to have been registered");if("target"in x)p(I,x);else for(let E of x.dirList){let R=V.join(v,E),L=n.get(R);if(typeof L>"u")throw new Error("Assertion failed: Expected the subchild to have been registered");if("target"in L)p(`${I}/${E}`,L);else throw new Error("Assertion failed: Expected the leaf junction to be a package")}}}}};var B1t={hooks:{cleanGlobalArtifacts:async t=>{let e=Eq(t);await oe.removePromise(e)}},configuration:{nmHoistingLimits:{description:"Prevents packages to be hoisted past specific levels",type:"STRING",values:["workspaces","dependencies","none"],default:"none"},nmMode:{description:"Defines in which measure Yarn must use hardlinks and symlinks when generated `node_modules` directories.",type:"STRING",values:["classic","hardlinks-local","hardlinks-global"],default:"classic"},nmSelfReferences:{description:"Defines whether the linker should generate self-referencing symlinks for workspaces.",type:"BOOLEAN",default:!0}},linkers:[lv,cv]},v1t=B1t;var CG={};Vt(CG,{NpmHttpFetcher:()=>fv,NpmRemapResolver:()=>pv,NpmSemverFetcher:()=>dl,NpmSemverResolver:()=>hv,NpmTagResolver:()=>gv,default:()=>Lvt,npmConfigUtils:()=>Zn,npmHttpUtils:()=>on,npmPublishUtils:()=>iw});Ye();var b1e=$e(Jn());var Wn="npm:";var on={};Vt(on,{AuthType:()=>P1e,customPackageError:()=>dm,del:()=>R1t,get:()=>mm,getIdentUrl:()=>SQ,getPackageMetadata:()=>KC,handleInvalidAuthenticationError:()=>b0,post:()=>Q1t,put:()=>F1t});Ye();Ye();Pt();var vq=$e(u2()),v1e=$e(S_()),D1e=$e(Jn()),Dq=Be("url");var Zn={};Vt(Zn,{RegistryType:()=>w1e,getAuditRegistry:()=>D1t,getAuthConfiguration:()=>Bq,getDefaultRegistry:()=>uv,getPublishRegistry:()=>P1t,getRegistryConfiguration:()=>I1e,getScopeConfiguration:()=>Iq,getScopeRegistry:()=>YC,normalizeRegistry:()=>oc});var w1e=(o=>(o.AUDIT_REGISTRY="npmAuditRegistry",o.FETCH_REGISTRY="npmRegistryServer",o.PUBLISH_REGISTRY="npmPublishRegistry",o))(w1e||{});function oc(t){return t.replace(/\/$/,"")}function D1t({configuration:t}){return uv({configuration:t,type:"npmAuditRegistry"})}function P1t(t,{configuration:e}){return t.publishConfig?.registry?oc(t.publishConfig.registry):t.name?YC(t.name.scope,{configuration:e,type:"npmPublishRegistry"}):uv({configuration:e,type:"npmPublishRegistry"})}function YC(t,{configuration:e,type:r="npmRegistryServer"}){let o=Iq(t,{configuration:e});if(o===null)return uv({configuration:e,type:r});let a=o.get(r);return a===null?uv({configuration:e,type:r}):oc(a)}function uv({configuration:t,type:e="npmRegistryServer"}){let r=t.get(e);return oc(r!==null?r:t.get("npmRegistryServer"))}function I1e(t,{configuration:e}){let r=e.get("npmRegistries"),o=oc(t),a=r.get(o);if(typeof a<"u")return a;let n=r.get(o.replace(/^[a-z]+:/,""));return typeof n<"u"?n:null}function Iq(t,{configuration:e}){if(t===null)return null;let o=e.get("npmScopes").get(t);return o||null}function Bq(t,{configuration:e,ident:r}){let o=r&&Iq(r.scope,{configuration:e});return o?.get("npmAuthIdent")||o?.get("npmAuthToken")?o:I1e(t,{configuration:e})||e}var P1e=(a=>(a[a.NO_AUTH=0]="NO_AUTH",a[a.BEST_EFFORT=1]="BEST_EFFORT",a[a.CONFIGURATION=2]="CONFIGURATION",a[a.ALWAYS_AUTH=3]="ALWAYS_AUTH",a))(P1e||{});async function b0(t,{attemptedAs:e,registry:r,headers:o,configuration:a}){if(xQ(t))throw new Jt(41,"Invalid OTP token");if(t.originalError?.name==="HTTPError"&&t.originalError?.response.statusCode===401)throw new Jt(41,`Invalid authentication (${typeof e!="string"?`as ${await N1t(r,o,{configuration:a})}`:`attempted as ${e}`})`)}function dm(t,e){let r=t.response?.statusCode;return r?r===404?"Package not found":r>=500&&r<600?`The registry appears to be down (using a ${de.applyHyperlink(e,"local cache","https://yarnpkg.com/advanced/lexicon#local-cache")} might have protected you against such outages)`:null:null}function SQ(t){return t.scope?`/@${t.scope}%2f${t.name}`:`/${t.name}`}var B1e=new Map;async function KC(t,{cache:e,project:r,registry:o,headers:a,version:n,...u}){return await je.getFactoryWithDefault(B1e,t.identHash,async()=>{let{configuration:A}=r;o=Av(A,{ident:t,registry:o});let p=x1t(A,o),h=V.join(p,`${W.slugifyIdent(t)}.json`),C=null;if(!r.lockfileNeedsRefresh){try{C=await oe.readJsonPromise(h)}catch{}if(C){if(typeof n<"u"&&typeof C.metadata.versions[n]<"u")return C.metadata;if(A.get("enableOfflineMode")){let I=structuredClone(C.metadata),v=new Set;if(e){for(let E of Object.keys(I.versions)){let R=W.makeLocator(t,`npm:${E}`),L=e.getLocatorMirrorPath(R);(!L||!oe.existsSync(L))&&(delete I.versions[E],v.add(E))}let x=I["dist-tags"].latest;if(v.has(x)){let E=Object.keys(C.metadata.versions).sort(D1e.default.compare),R=E.indexOf(x);for(;v.has(E[R])&&R>=0;)R-=1;R>=0?I["dist-tags"].latest=E[R]:delete I["dist-tags"].latest}}return I}}}return await mm(SQ(t),{...u,customErrorMessage:dm,configuration:A,registry:o,ident:t,headers:{...a,["If-None-Match"]:C?.etag,["If-Modified-Since"]:C?.lastModified},wrapNetworkRequest:async I=>async()=>{let v=await I();if(v.statusCode===304){if(C===null)throw new Error("Assertion failed: cachedMetadata should not be null");return{...v,body:C.metadata}}let x=S1t(JSON.parse(v.body.toString()));B1e.set(t.identHash,x);let E={metadata:x,etag:v.headers.etag,lastModified:v.headers["last-modified"]},R=`${h}-${process.pid}.tmp`;return await oe.mkdirPromise(p,{recursive:!0}),await oe.writeJsonPromise(R,E,{compact:!0}),await oe.renamePromise(R,h),{...v,body:x}}})})}var S1e=["name","dist.tarball","bin","scripts","os","cpu","libc","dependencies","dependenciesMeta","optionalDependencies","peerDependencies","peerDependenciesMeta","deprecated"];function S1t(t){return{"dist-tags":t["dist-tags"],versions:Object.fromEntries(Object.entries(t.versions).map(([e,r])=>[e,(0,v1e.default)(r,S1e)]))}}var b1t=wn.makeHash(...S1e).slice(0,6);function x1t(t,e){let r=k1t(t),o=new Dq.URL(e);return V.join(r,b1t,o.hostname)}function k1t(t){return V.join(t.get("globalFolder"),"metadata/npm")}async function mm(t,{configuration:e,headers:r,ident:o,authType:a,registry:n,...u}){n=Av(e,{ident:o,registry:n}),o&&o.scope&&typeof a>"u"&&(a=1);let A=await bQ(n,{authType:a,configuration:e,ident:o});A&&(r={...r,authorization:A});try{return await rn.get(t.charAt(0)==="/"?`${n}${t}`:t,{configuration:e,headers:r,...u})}catch(p){throw await b0(p,{registry:n,configuration:e,headers:r}),p}}async function Q1t(t,e,{attemptedAs:r,configuration:o,headers:a,ident:n,authType:u=3,registry:A,otp:p,...h}){A=Av(o,{ident:n,registry:A});let C=await bQ(A,{authType:u,configuration:o,ident:n});C&&(a={...a,authorization:C}),p&&(a={...a,...WC(p)});try{return await rn.post(A+t,e,{configuration:o,headers:a,...h})}catch(I){if(!xQ(I)||p)throw await b0(I,{attemptedAs:r,registry:A,configuration:o,headers:a}),I;p=await Pq(I,{configuration:o});let v={...a,...WC(p)};try{return await rn.post(`${A}${t}`,e,{configuration:o,headers:v,...h})}catch(x){throw await b0(x,{attemptedAs:r,registry:A,configuration:o,headers:a}),x}}}async function F1t(t,e,{attemptedAs:r,configuration:o,headers:a,ident:n,authType:u=3,registry:A,otp:p,...h}){A=Av(o,{ident:n,registry:A});let C=await bQ(A,{authType:u,configuration:o,ident:n});C&&(a={...a,authorization:C}),p&&(a={...a,...WC(p)});try{return await rn.put(A+t,e,{configuration:o,headers:a,...h})}catch(I){if(!xQ(I))throw await b0(I,{attemptedAs:r,registry:A,configuration:o,headers:a}),I;p=await Pq(I,{configuration:o});let v={...a,...WC(p)};try{return await rn.put(`${A}${t}`,e,{configuration:o,headers:v,...h})}catch(x){throw await b0(x,{attemptedAs:r,registry:A,configuration:o,headers:a}),x}}}async function R1t(t,{attemptedAs:e,configuration:r,headers:o,ident:a,authType:n=3,registry:u,otp:A,...p}){u=Av(r,{ident:a,registry:u});let h=await bQ(u,{authType:n,configuration:r,ident:a});h&&(o={...o,authorization:h}),A&&(o={...o,...WC(A)});try{return await rn.del(u+t,{configuration:r,headers:o,...p})}catch(C){if(!xQ(C)||A)throw await b0(C,{attemptedAs:e,registry:u,configuration:r,headers:o}),C;A=await Pq(C,{configuration:r});let I={...o,...WC(A)};try{return await rn.del(`${u}${t}`,{configuration:r,headers:I,...p})}catch(v){throw await b0(v,{attemptedAs:e,registry:u,configuration:r,headers:o}),v}}}function Av(t,{ident:e,registry:r}){if(typeof r>"u"&&e)return YC(e.scope,{configuration:t});if(typeof r!="string")throw new Error("Assertion failed: The registry should be a string");return oc(r)}async function bQ(t,{authType:e=2,configuration:r,ident:o}){let a=Bq(t,{configuration:r,ident:o}),n=T1t(a,e);if(!n)return null;let u=await r.reduceHook(A=>A.getNpmAuthenticationHeader,void 0,t,{configuration:r,ident:o});if(u)return u;if(a.get("npmAuthToken"))return`Bearer ${a.get("npmAuthToken")}`;if(a.get("npmAuthIdent")){let A=a.get("npmAuthIdent");return A.includes(":")?`Basic ${Buffer.from(A).toString("base64")}`:`Basic ${A}`}if(n&&e!==1)throw new Jt(33,"No authentication configured for request");return null}function T1t(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 N1t(t,e,{configuration:r}){if(typeof e>"u"||typeof e.authorization>"u")return"an anonymous user";try{return(await rn.get(new Dq.URL(`${t}/-/whoami`).href,{configuration:r,headers:e,jsonResponse:!0})).username??"an unknown user"}catch{return"an unknown user"}}async function Pq(t,{configuration:e}){let r=t.originalError?.response.headers["npm-notice"];if(r&&(await Nt.start({configuration:e,stdout:process.stdout,includeFooter:!1},async a=>{if(a.reportInfo(0,r.replace(/(https?:\/\/\S+)/g,de.pretty(e,"$1",de.Type.URL))),!process.env.YARN_IS_TEST_ENV){let n=r.match(/open (https?:\/\/\S+)/i);if(n&&zi.openUrl){let{openNow:u}=await(0,vq.prompt)({type:"confirm",name:"openNow",message:"Do you want to try to open this url now?",required:!0,initial:!0,onCancel:()=>process.exit(130)});u&&(await zi.openUrl(n[1])||(a.reportSeparator(),a.reportWarning(0,"We failed to automatically open the url; you'll have to open it yourself in your browser of choice.")))}}}),process.stdout.write(` +`)),process.env.YARN_IS_TEST_ENV)return process.env.YARN_INJECT_NPM_2FA_TOKEN||"";let{otp:o}=await(0,vq.prompt)({type:"password",name:"otp",message:"One-time password:",required:!0,onCancel:()=>process.exit(130)});return process.stdout.write(` +`),o}function xQ(t){if(t.originalError?.name!=="HTTPError")return!1;try{return(t.originalError?.response.headers["www-authenticate"].split(/,\s*/).map(r=>r.toLowerCase())).includes("otp")}catch{return!1}}function WC(t){return{["npm-otp"]:t}}var fv=class{supports(e,r){if(!e.reference.startsWith(Wn))return!1;let{selector:o,params:a}=W.parseRange(e.reference);return!(!b1e.default.valid(o)||a===null||typeof a.__archiveUrl!="string")}getLocalPath(e,r){return null}async fetch(e,r){let o=r.checksums.get(e.locatorHash)||null,[a,n,u]=await r.cache.fetchPackageFromCache(e,o,{onHit:()=>r.report.reportCacheHit(e),onMiss:()=>r.report.reportCacheMiss(e,`${W.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),...r.cacheOptions});return{packageFs:a,releaseFs:n,prefixPath:W.getIdentVendorPath(e),checksum:u}}async fetchFromNetwork(e,r){let{params:o}=W.parseRange(e.reference);if(o===null||typeof o.__archiveUrl!="string")throw new Error("Assertion failed: The archiveUrl querystring parameter should have been available");let a=await mm(o.__archiveUrl,{customErrorMessage:dm,configuration:r.project.configuration,ident:e});return await Xi.convertToZip(a,{configuration:r.project.configuration,prefixPath:W.getIdentVendorPath(e),stripComponents:1})}};Ye();var pv=class{supportsDescriptor(e,r){return!(!e.range.startsWith(Wn)||!W.tryParseDescriptor(e.range.slice(Wn.length),!0))}supportsLocator(e,r){return!1}shouldPersistResolution(e,r){throw new Error("Unreachable")}bindDescriptor(e,r,o){return e}getResolutionDependencies(e,r){let o=r.project.configuration.normalizeDependency(W.parseDescriptor(e.range.slice(Wn.length),!0));return r.resolver.getResolutionDependencies(o,r)}async getCandidates(e,r,o){let a=o.project.configuration.normalizeDependency(W.parseDescriptor(e.range.slice(Wn.length),!0));return await o.resolver.getCandidates(a,r,o)}async getSatisfying(e,r,o,a){let n=a.project.configuration.normalizeDependency(W.parseDescriptor(e.range.slice(Wn.length),!0));return a.resolver.getSatisfying(n,r,o,a)}resolve(e,r){throw new Error("Unreachable")}};Ye();Ye();var x1e=$e(Jn()),k1e=Be("url");var dl=class{supports(e,r){if(!e.reference.startsWith(Wn))return!1;let o=new k1e.URL(e.reference);return!(!x1e.default.valid(o.pathname)||o.searchParams.has("__archiveUrl"))}getLocalPath(e,r){return null}async fetch(e,r){let o=r.checksums.get(e.locatorHash)||null,[a,n,u]=await r.cache.fetchPackageFromCache(e,o,{onHit:()=>r.report.reportCacheHit(e),onMiss:()=>r.report.reportCacheMiss(e,`${W.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),...r.cacheOptions});return{packageFs:a,releaseFs:n,prefixPath:W.getIdentVendorPath(e),checksum:u}}async fetchFromNetwork(e,r){let o;try{o=await mm(dl.getLocatorUrl(e),{customErrorMessage:dm,configuration:r.project.configuration,ident:e})}catch{o=await mm(dl.getLocatorUrl(e).replace(/%2f/g,"/"),{customErrorMessage:dm,configuration:r.project.configuration,ident:e})}return await Xi.convertToZip(o,{configuration:r.project.configuration,prefixPath:W.getIdentVendorPath(e),stripComponents:1})}static isConventionalTarballUrl(e,r,{configuration:o}){let a=YC(e.scope,{configuration:o}),n=dl.getLocatorUrl(e);return r=r.replace(/^https?:(\/\/(?:[^/]+\.)?npmjs.org(?:$|\/))/,"https:$1"),a=a.replace(/^https:\/\/registry\.npmjs\.org($|\/)/,"https://registry.yarnpkg.com$1"),r=r.replace(/^https:\/\/registry\.npmjs\.org($|\/)/,"https://registry.yarnpkg.com$1"),r===a+n||r===a+n.replace(/%2f/g,"/")}static getLocatorUrl(e){let r=kr.clean(e.reference.slice(Wn.length));if(r===null)throw new Jt(10,"The npm semver resolver got selected, but the version isn't semver");return`${SQ(e)}/-/${e.name}-${r}.tgz`}};Ye();Ye();Ye();var Sq=$e(Jn());var kQ=W.makeIdent(null,"node-gyp"),L1t=/\b(node-gyp|prebuild-install)\b/,hv=class{supportsDescriptor(e,r){return e.range.startsWith(Wn)?!!kr.validRange(e.range.slice(Wn.length)):!1}supportsLocator(e,r){if(!e.reference.startsWith(Wn))return!1;let{selector:o}=W.parseRange(e.reference);return!!Sq.default.valid(o)}shouldPersistResolution(e,r){return!0}bindDescriptor(e,r,o){return e}getResolutionDependencies(e,r){return{}}async getCandidates(e,r,o){let a=kr.validRange(e.range.slice(Wn.length));if(a===null)throw new Error(`Expected a valid range, got ${e.range.slice(Wn.length)}`);let n=await KC(e,{cache:o.fetchOptions?.cache,project:o.project,version:Sq.default.valid(a.raw)?a.raw:void 0}),u=je.mapAndFilter(Object.keys(n.versions),h=>{try{let C=new kr.SemVer(h);if(a.test(C))return C}catch{}return je.mapAndFilter.skip}),A=u.filter(h=>!n.versions[h.raw].deprecated),p=A.length>0?A:u;return p.sort((h,C)=>-h.compare(C)),p.map(h=>{let C=W.makeLocator(e,`${Wn}${h.raw}`),I=n.versions[h.raw].dist.tarball;return dl.isConventionalTarballUrl(C,I,{configuration:o.project.configuration})?C:W.bindLocator(C,{__archiveUrl:I})})}async getSatisfying(e,r,o,a){let n=kr.validRange(e.range.slice(Wn.length));if(n===null)throw new Error(`Expected a valid range, got ${e.range.slice(Wn.length)}`);return{locators:je.mapAndFilter(o,p=>{if(p.identHash!==e.identHash)return je.mapAndFilter.skip;let h=W.tryParseRange(p.reference,{requireProtocol:Wn});if(!h)return je.mapAndFilter.skip;let C=new kr.SemVer(h.selector);return n.test(C)?{locator:p,version:C}:je.mapAndFilter.skip}).sort((p,h)=>-p.version.compare(h.version)).map(({locator:p})=>p),sorted:!0}}async resolve(e,r){let{selector:o}=W.parseRange(e.reference),a=kr.clean(o);if(a===null)throw new Jt(10,"The npm semver resolver got selected, but the version isn't semver");let n=await KC(e,{cache:r.fetchOptions?.cache,project:r.project,version:a});if(!Object.hasOwn(n,"versions"))throw new Jt(15,'Registry returned invalid data for - missing "versions" field');if(!Object.hasOwn(n.versions,a))throw new Jt(16,`Registry failed to return reference "${a}"`);let u=new Ot;if(u.load(n.versions[a]),!u.dependencies.has(kQ.identHash)&&!u.peerDependencies.has(kQ.identHash)){for(let A of u.scripts.values())if(A.match(L1t)){u.dependencies.set(kQ.identHash,W.makeDescriptor(kQ,"latest"));break}}return{...e,version:a,languageName:"node",linkType:"HARD",conditions:u.getConditions(),dependencies:r.project.configuration.normalizeDependencyMap(u.dependencies),peerDependencies:u.peerDependencies,dependenciesMeta:u.dependenciesMeta,peerDependenciesMeta:u.peerDependenciesMeta,bin:u.bin}}};Ye();Ye();var Q1e=$e(Jn());var gv=class{supportsDescriptor(e,r){return!(!e.range.startsWith(Wn)||!kE.test(e.range.slice(Wn.length)))}supportsLocator(e,r){return!1}shouldPersistResolution(e,r){throw new Error("Unreachable")}bindDescriptor(e,r,o){return e}getResolutionDependencies(e,r){return{}}async getCandidates(e,r,o){let a=e.range.slice(Wn.length),n=await KC(e,{cache:o.fetchOptions?.cache,project:o.project});if(!Object.hasOwn(n,"dist-tags"))throw new Jt(15,'Registry returned invalid data - missing "dist-tags" field');let u=n["dist-tags"];if(!Object.hasOwn(u,a))throw new Jt(16,`Registry failed to return tag "${a}"`);let A=u[a],p=W.makeLocator(e,`${Wn}${A}`),h=n.versions[A].dist.tarball;return dl.isConventionalTarballUrl(p,h,{configuration:o.project.configuration})?[p]:[W.bindLocator(p,{__archiveUrl:h})]}async getSatisfying(e,r,o,a){let n=[];for(let u of o){if(u.identHash!==e.identHash)continue;let A=W.tryParseRange(u.reference,{requireProtocol:Wn});if(!(!A||!Q1e.default.valid(A.selector))){if(A.params?.__archiveUrl){let p=W.makeRange({protocol:Wn,selector:A.selector,source:null,params:null}),[h]=await a.resolver.getCandidates(W.makeDescriptor(e,p),r,a);if(u.reference!==h.reference)continue}n.push(u)}}return{locators:n,sorted:!1}}async resolve(e,r){throw new Error("Unreachable")}};var iw={};Vt(iw,{getGitHead:()=>Tvt,getPublishAccess:()=>wBe,getReadmeContent:()=>IBe,makePublishBody:()=>Rvt});Ye();Ye();Pt();var gG={};Vt(gG,{PackCommand:()=>O0,default:()=>gvt,packUtils:()=>CA});Ye();Ye();Ye();Pt();qt();var CA={};Vt(CA,{genPackList:()=>$Q,genPackStream:()=>hG,genPackageManifest:()=>lBe,hasPackScripts:()=>fG,prepareForPack:()=>pG});Ye();Pt();var AG=$e(Zo()),oBe=$e(rBe()),aBe=Be("zlib"),ivt=["/package.json","/readme","/readme.*","/license","/license.*","/licence","/licence.*","/changelog","/changelog.*"],svt=["/package.tgz",".github",".git",".hg","node_modules",".npmignore",".gitignore",".#*",".DS_Store"];async function fG(t){return!!(un.hasWorkspaceScript(t,"prepack")||un.hasWorkspaceScript(t,"postpack"))}async function pG(t,{report:e},r){await un.maybeExecuteWorkspaceLifecycleScript(t,"prepack",{report:e});try{let o=V.join(t.cwd,Ot.fileName);await oe.existsPromise(o)&&await t.manifest.loadFile(o,{baseFs:oe}),await r()}finally{await un.maybeExecuteWorkspaceLifecycleScript(t,"postpack",{report:e})}}async function hG(t,e){typeof e>"u"&&(e=await $Q(t));let r=new Set;for(let n of t.manifest.publishConfig?.executableFiles??new Set)r.add(V.normalize(n));for(let n of t.manifest.bin.values())r.add(V.normalize(n));let o=oBe.default.pack();process.nextTick(async()=>{for(let n of e){let u=V.normalize(n),A=V.resolve(t.cwd,u),p=V.join("package",u),h=await oe.lstatPromise(A),C={name:p,mtime:new Date(vi.SAFE_TIME*1e3)},I=r.has(u)?493:420,v,x,E=new Promise((L,U)=>{v=L,x=U}),R=L=>{L?x(L):v()};if(h.isFile()){let L;u==="package.json"?L=Buffer.from(JSON.stringify(await lBe(t),null,2)):L=await oe.readFilePromise(A),o.entry({...C,mode:I,type:"file"},L,R)}else h.isSymbolicLink()?o.entry({...C,mode:I,type:"symlink",linkname:await oe.readlinkPromise(A)},R):R(new Error(`Unsupported file type ${h.mode} for ${ue.fromPortablePath(u)}`));await E}o.finalize()});let a=(0,aBe.createGzip)();return o.pipe(a),a}async function lBe(t){let e=JSON.parse(JSON.stringify(t.manifest.raw));return await t.project.configuration.triggerHook(r=>r.beforeWorkspacePacking,t,e),e}async function $Q(t){let e=t.project,r=e.configuration,o={accept:[],reject:[]};for(let I of svt)o.reject.push(I);for(let I of ivt)o.accept.push(I);o.reject.push(r.get("rcFilename"));let a=I=>{if(I===null||!I.startsWith(`${t.cwd}/`))return;let v=V.relative(t.cwd,I),x=V.resolve(Bt.root,v);o.reject.push(x)};a(V.resolve(e.cwd,dr.lockfile)),a(r.get("cacheFolder")),a(r.get("globalFolder")),a(r.get("installStatePath")),a(r.get("virtualFolder")),a(r.get("yarnPath")),await r.triggerHook(I=>I.populateYarnPaths,e,I=>{a(I)});for(let I of e.workspaces){let v=V.relative(t.cwd,I.cwd);v!==""&&!v.match(/^(\.\.)?\//)&&o.reject.push(`/${v}`)}let n={accept:[],reject:[]},u=t.manifest.publishConfig?.main??t.manifest.main,A=t.manifest.publishConfig?.module??t.manifest.module,p=t.manifest.publishConfig?.browser??t.manifest.browser,h=t.manifest.publishConfig?.bin??t.manifest.bin;u!=null&&n.accept.push(V.resolve(Bt.root,u)),A!=null&&n.accept.push(V.resolve(Bt.root,A)),typeof p=="string"&&n.accept.push(V.resolve(Bt.root,p));for(let I of h.values())n.accept.push(V.resolve(Bt.root,I));if(p instanceof Map)for(let[I,v]of p.entries())n.accept.push(V.resolve(Bt.root,I)),typeof v=="string"&&n.accept.push(V.resolve(Bt.root,v));let C=t.manifest.files!==null;if(C){n.reject.push("/*");for(let I of t.manifest.files)cBe(n.accept,I,{cwd:Bt.root})}return await ovt(t.cwd,{hasExplicitFileList:C,globalList:o,ignoreList:n})}async function ovt(t,{hasExplicitFileList:e,globalList:r,ignoreList:o}){let a=[],n=new _u(t),u=[[Bt.root,[o]]];for(;u.length>0;){let[A,p]=u.pop(),h=await n.lstatPromise(A);if(!iBe(A,{globalList:r,ignoreLists:h.isDirectory()?null:p}))if(h.isDirectory()){let C=await n.readdirPromise(A),I=!1,v=!1;if(!e||A!==Bt.root)for(let R of C)I=I||R===".gitignore",v=v||R===".npmignore";let x=v?await nBe(n,A,".npmignore"):I?await nBe(n,A,".gitignore"):null,E=x!==null?[x].concat(p):p;iBe(A,{globalList:r,ignoreLists:p})&&(E=[...p,{accept:[],reject:["**/*"]}]);for(let R of C)u.push([V.resolve(A,R),E])}else(h.isFile()||h.isSymbolicLink())&&a.push(V.relative(Bt.root,A))}return a.sort()}async function nBe(t,e,r){let o={accept:[],reject:[]},a=await t.readFilePromise(V.join(e,r),"utf8");for(let n of a.split(/\n/g))cBe(o.reject,n,{cwd:e});return o}function avt(t,{cwd:e}){let r=t[0]==="!";return r&&(t=t.slice(1)),t.match(/\.{0,1}\//)&&(t=V.resolve(e,t)),r&&(t=`!${t}`),t}function cBe(t,e,{cwd:r}){let o=e.trim();o===""||o[0]==="#"||t.push(avt(o,{cwd:r}))}function iBe(t,{globalList:e,ignoreLists:r}){let o=ZQ(t,e.accept);if(o!==0)return o===2;let a=ZQ(t,e.reject);if(a!==0)return a===1;if(r!==null)for(let n of r){let u=ZQ(t,n.accept);if(u!==0)return u===2;let A=ZQ(t,n.reject);if(A!==0)return A===1}return!1}function ZQ(t,e){let r=e,o=[];for(let a=0;a{await pG(a,{report:p},async()=>{p.reportJson({base:ue.fromPortablePath(a.cwd)});let h=await $Q(a);for(let C of h)p.reportInfo(null,ue.fromPortablePath(C)),p.reportJson({location:ue.fromPortablePath(C)});if(!this.dryRun){let C=await hG(a,h),I=oe.createWriteStream(u);C.pipe(I),await new Promise(v=>{I.on("finish",v)})}}),this.dryRun||(p.reportInfo(0,`Package archive generated in ${de.pretty(r,u,de.Type.PATH)}`),p.reportJson({output:ue.fromPortablePath(u)}))})).exitCode()}};O0.paths=[["pack"]],O0.usage=nt.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"]]});function lvt(t,{workspace:e}){let r=t.replace("%s",cvt(e)).replace("%v",uvt(e));return ue.toPortablePath(r)}function cvt(t){return t.manifest.name!==null?W.slugifyIdent(t.manifest.name):"package"}function uvt(t){return t.manifest.version!==null?t.manifest.version:"unknown"}var Avt=["dependencies","devDependencies","peerDependencies"],fvt="workspace:",pvt=(t,e)=>{e.publishConfig&&(e.publishConfig.type&&(e.type=e.publishConfig.type),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.exports&&(e.exports=e.publishConfig.exports),e.publishConfig.imports&&(e.imports=e.publishConfig.imports),e.publishConfig.bin&&(e.bin=e.publishConfig.bin));let r=t.project;for(let o of Avt)for(let a of t.manifest.getForScope(o).values()){let n=r.tryWorkspaceByDescriptor(a),u=W.parseRange(a.range);if(u.protocol===fvt)if(n===null){if(r.tryWorkspaceByIdent(a)===null)throw new Jt(21,`${W.prettyDescriptor(r.configuration,a)}: No local workspace found for this range`)}else{let A;W.areDescriptorsEqual(a,n.anchoredDescriptor)||u.selector==="*"?A=n.manifest.version??"0.0.0":u.selector==="~"||u.selector==="^"?A=`${u.selector}${n.manifest.version??"0.0.0"}`:A=u.selector;let p=o==="dependencies"?W.makeDescriptor(a,"unknown"):null,h=p!==null&&t.manifest.ensureDependencyMeta(p).optional?"optionalDependencies":o;e[h][W.stringifyIdent(a)]=A}}},hvt={hooks:{beforeWorkspacePacking:pvt},commands:[O0]},gvt=hvt;var yBe=Be("crypto"),EBe=$e(mBe()),CBe=Be("url");async function Rvt(t,e,{access:r,tag:o,registry:a,gitHead:n}){let u=t.manifest.name,A=t.manifest.version,p=W.stringifyIdent(u),h=(0,yBe.createHash)("sha1").update(e).digest("hex"),C=EBe.default.fromData(e).toString(),I=r??wBe(t,u),v=await IBe(t),x=await CA.genPackageManifest(t),E=`${p}-${A}.tgz`,R=new CBe.URL(`${oc(a)}/${p}/-/${E}`);return{_id:p,_attachments:{[E]:{content_type:"application/octet-stream",data:e.toString("base64"),length:e.length}},name:p,access:I,["dist-tags"]:{[o]:A},versions:{[A]:{...x,_id:`${p}@${A}`,name:p,version:A,gitHead:n,dist:{shasum:h,integrity:C,tarball:R.toString()}}},readme:v}}async function Tvt(t){try{let{stdout:e}=await Ur.execvp("git",["rev-parse","--revs-only","HEAD"],{cwd:t});return e.trim()===""?void 0:e.trim()}catch{return}}function wBe(t,e){let r=t.project.configuration;return t.manifest.publishConfig&&typeof t.manifest.publishConfig.access=="string"?t.manifest.publishConfig.access:r.get("npmPublishAccess")!==null?r.get("npmPublishAccess"):e.scope?"restricted":"public"}async function IBe(t){let e=ue.toPortablePath(`${t.cwd}/README.md`),r=t.manifest.name,a=`# ${W.stringifyIdent(r)} +`;try{a=await oe.readFilePromise(e,"utf8")}catch(n){if(n.code==="ENOENT")return a;throw n}return a}var EG={npmAlwaysAuth:{description:"URL of the selected npm registry (note: npm enterprise isn't supported)",type:"BOOLEAN",default:!1},npmAuthIdent:{description:"Authentication identity for the npm registry (_auth in npm and yarn v1)",type:"SECRET",default:null},npmAuthToken:{description:"Authentication token for the npm registry (_authToken in npm and yarn v1)",type:"SECRET",default:null}},BBe={npmAuditRegistry:{description:"Registry to query for audit reports",type:"STRING",default:null},npmPublishRegistry:{description:"Registry to push packages to",type:"STRING",default:null},npmRegistryServer:{description:"URL of the selected npm registry (note: npm enterprise isn't supported)",type:"STRING",default:"https://registry.yarnpkg.com"}},Nvt={configuration:{...EG,...BBe,npmScopes:{description:"Settings per package scope",type:"MAP",valueDefinition:{description:"",type:"SHAPE",properties:{...EG,...BBe}}},npmRegistries:{description:"Settings per registry",type:"MAP",normalizeKeys:oc,valueDefinition:{description:"",type:"SHAPE",properties:{...EG}}}},fetchers:[fv,dl],resolvers:[pv,hv,gv]},Lvt=Nvt;var xG={};Vt(xG,{NpmAuditCommand:()=>U0,NpmInfoCommand:()=>_0,NpmLoginCommand:()=>H0,NpmLogoutCommand:()=>j0,NpmPublishCommand:()=>q0,NpmTagAddCommand:()=>Y0,NpmTagListCommand:()=>G0,NpmTagRemoveCommand:()=>W0,NpmWhoamiCommand:()=>K0,default:()=>jvt,npmAuditTypes:()=>Rv,npmAuditUtils:()=>eF});Ye();Ye();qt();var DG=$e(Zo());Za();var Rv={};Vt(Rv,{Environment:()=>Qv,Severity:()=>Fv});var Qv=(o=>(o.All="all",o.Production="production",o.Development="development",o))(Qv||{}),Fv=(n=>(n.Info="info",n.Low="low",n.Moderate="moderate",n.High="high",n.Critical="critical",n))(Fv||{});var eF={};Vt(eF,{allSeverities:()=>sw,getPackages:()=>vG,getReportTree:()=>IG,getSeverityInclusions:()=>wG,getTopLevelDependencies:()=>BG});Ye();var vBe=$e(Jn());var sw=["info","low","moderate","high","critical"];function wG(t){if(typeof t>"u")return new Set(sw);let e=sw.indexOf(t),r=sw.slice(e);return new Set(r)}function IG(t){let e={},r={children:e};for(let[o,a]of je.sortMap(Object.entries(t),n=>n[0]))for(let n of je.sortMap(a,u=>`${u.id}`))e[`${o}/${n.id}`]={value:de.tuple(de.Type.IDENT,W.parseIdent(o)),children:{ID:typeof n.id<"u"&&{label:"ID",value:de.tuple(de.Type.ID,n.id)},Issue:{label:"Issue",value:de.tuple(de.Type.NO_HINT,n.title)},URL:typeof n.url<"u"&&{label:"URL",value:de.tuple(de.Type.URL,n.url)},Severity:{label:"Severity",value:de.tuple(de.Type.NO_HINT,n.severity)},["Vulnerable Versions"]:{label:"Vulnerable Versions",value:de.tuple(de.Type.RANGE,n.vulnerable_versions)},["Tree Versions"]:{label:"Tree Versions",children:[...n.versions].sort(vBe.default.compare).map(u=>({value:de.tuple(de.Type.REFERENCE,u)}))},Dependents:{label:"Dependents",children:je.sortMap(n.dependents,u=>W.stringifyLocator(u)).map(u=>({value:de.tuple(de.Type.LOCATOR,u)}))}}};return r}function BG(t,e,{all:r,environment:o}){let a=[],n=r?t.workspaces:[e],u=["all","production"].includes(o),A=["all","development"].includes(o);for(let p of n)for(let h of p.anchoredPackage.dependencies.values())(p.manifest.devDependencies.has(h.identHash)?!A:!u)||a.push({workspace:p,dependency:h});return a}function vG(t,e,{recursive:r}){let o=new Map,a=new Set,n=[],u=(A,p)=>{let h=t.storedResolutions.get(p.descriptorHash);if(typeof h>"u")throw new Error("Assertion failed: The resolution should have been registered");if(!a.has(h))a.add(h);else return;let C=t.storedPackages.get(h);if(typeof C>"u")throw new Error("Assertion failed: The package should have been registered");if(W.ensureDevirtualizedLocator(C).reference.startsWith("npm:")&&C.version!==null){let v=W.stringifyIdent(C),x=je.getMapWithDefault(o,v);je.getArrayWithDefault(x,C.version).push(A)}if(r)for(let v of C.dependencies.values())n.push([C,v])};for(let{workspace:A,dependency:p}of e)n.push([A.anchoredLocator,p]);for(;n.length>0;){let[A,p]=n.shift();u(A,p)}return o}var U0=class extends ut{constructor(){super(...arguments);this.all=ge.Boolean("-A,--all",!1,{description:"Audit dependencies from all workspaces"});this.recursive=ge.Boolean("-R,--recursive",!1,{description:"Audit transitive dependencies as well"});this.environment=ge.String("--environment","all",{description:"Which environments to cover",validator:Ks(Qv)});this.json=ge.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"});this.noDeprecations=ge.Boolean("--no-deprecations",!1,{description:"Don't warn about deprecated packages"});this.severity=ge.String("--severity","info",{description:"Minimal severity requested for packages to be displayed",validator:Ks(Fv)});this.excludes=ge.Array("--exclude",[],{description:"Array of glob patterns of packages to exclude from audit"});this.ignores=ge.Array("--ignore",[],{description:"Array of glob patterns of advisory ID's to ignore in the audit report"})}async execute(){let r=await Ke.find(this.context.cwd,this.context.plugins),{project:o,workspace:a}=await St.find(r,this.context.cwd);if(!a)throw new rr(o.cwd,this.context.cwd);await o.restoreInstallState();let n=BG(o,a,{all:this.all,environment:this.environment}),u=vG(o,n,{recursive:this.recursive}),A=Array.from(new Set([...r.get("npmAuditExcludePackages"),...this.excludes])),p=Object.create(null);for(let[L,U]of u)A.some(z=>DG.default.isMatch(L,z))||(p[L]=[...U.keys()]);let h=Zn.getAuditRegistry({configuration:r}),C,I=await AA.start({configuration:r,stdout:this.context.stdout},async()=>{let L=on.post("/-/npm/v1/security/advisories/bulk",p,{authType:on.AuthType.BEST_EFFORT,configuration:r,jsonResponse:!0,registry:h}),U=this.noDeprecations?[]:await Promise.all(Array.from(Object.entries(p),async([te,le])=>{let he=await on.getPackageMetadata(W.parseIdent(te),{project:o});return je.mapAndFilter(le,Ae=>{let{deprecated:ye}=he.versions[Ae];return ye?[te,Ae,ye]:je.mapAndFilter.skip})})),z=await L;for(let[te,le,he]of U.flat(1))Object.hasOwn(z,te)&&z[te].some(Ae=>kr.satisfiesWithPrereleases(le,Ae.vulnerable_versions))||(z[te]??=[],z[te].push({id:`${te} (deprecation)`,title:he.trim()||"This package has been deprecated.",severity:"moderate",vulnerable_versions:le}));C=z});if(I.hasErrors())return I.exitCode();let v=wG(this.severity),x=Array.from(new Set([...r.get("npmAuditIgnoreAdvisories"),...this.ignores])),E=Object.create(null);for(let[L,U]of Object.entries(C)){let z=U.filter(te=>!DG.default.isMatch(`${te.id}`,x)&&v.has(te.severity));z.length>0&&(E[L]=z.map(te=>{let le=u.get(L);if(typeof le>"u")throw new Error("Assertion failed: Expected the registry to only return packages that were requested");let he=[...le.keys()].filter(ye=>kr.satisfiesWithPrereleases(ye,te.vulnerable_versions)),Ae=new Map;for(let ye of he)for(let ae of le.get(ye))Ae.set(ae.locatorHash,ae);return{...te,versions:he,dependents:[...Ae.values()]}}))}let R=Object.keys(E).length>0;return R?($s.emitTree(IG(E),{configuration:r,json:this.json,stdout:this.context.stdout,separators:2}),1):(await Nt.start({configuration:r,includeFooter:!1,json:this.json,stdout:this.context.stdout},async L=>{L.reportInfo(1,"No audit suggestions")}),R?1:0)}};U0.paths=[["npm","audit"]],U0.usage=nt.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 ${sw.map(r=>`\`${r}\``).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. + + If certain packages produce false positives for a particular environment, the \`--exclude\` flag can be used to exclude any number of packages from the audit. This can also be set in the configuration file with the \`npmAuditExcludePackages\` option. + + If particular advisories are needed to be ignored, the \`--ignore\` flag can be used with Advisory ID's to ignore any number of advisories in the audit report. This can also be set in the configuration file with the \`npmAuditIgnoreAdvisories\` option. + + To understand the dependency tree requiring vulnerable packages, check the raw report with the \`--json\` flag or use \`yarn why package\` 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"],["Exclude certain packages","yarn npm audit --exclude package1 --exclude package2"],["Ignore specific advisories","yarn npm audit --ignore 1234567 --ignore 7654321"]]});Ye();Ye();Pt();qt();var PG=$e(Jn()),SG=Be("util"),_0=class extends ut{constructor(){super(...arguments);this.fields=ge.String("-f,--fields",{description:"A comma-separated list of manifest fields that should be displayed"});this.json=ge.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"});this.packages=ge.Rest()}async execute(){let r=await Ke.find(this.context.cwd,this.context.plugins),{project:o}=await St.find(r,this.context.cwd),a=typeof this.fields<"u"?new Set(["name",...this.fields.split(/\s*,\s*/)]):null,n=[],u=!1,A=await Nt.start({configuration:r,includeFooter:!1,json:this.json,stdout:this.context.stdout},async p=>{for(let h of this.packages){let C;if(h==="."){let le=o.topLevelWorkspace;if(!le.manifest.name)throw new it(`Missing ${de.pretty(r,"name",de.Type.CODE)} field in ${ue.fromPortablePath(V.join(le.cwd,dr.manifest))}`);C=W.makeDescriptor(le.manifest.name,"unknown")}else C=W.parseDescriptor(h);let I=on.getIdentUrl(C),v=bG(await on.get(I,{configuration:r,ident:C,jsonResponse:!0,customErrorMessage:on.customPackageError})),x=Object.keys(v.versions).sort(PG.default.compareLoose),R=v["dist-tags"].latest||x[x.length-1],L=kr.validRange(C.range);if(L){let le=PG.default.maxSatisfying(x,L);le!==null?R=le:(p.reportWarning(0,`Unmet range ${W.prettyRange(r,C.range)}; falling back to the latest version`),u=!0)}else Object.hasOwn(v["dist-tags"],C.range)?R=v["dist-tags"][C.range]:C.range!=="unknown"&&(p.reportWarning(0,`Unknown tag ${W.prettyRange(r,C.range)}; falling back to the latest version`),u=!0);let U=v.versions[R],z={...v,...U,version:R,versions:x},te;if(a!==null){te={};for(let le of a){let he=z[le];if(typeof he<"u")te[le]=he;else{p.reportWarning(1,`The ${de.pretty(r,le,de.Type.CODE)} field doesn't exist inside ${W.prettyIdent(r,C)}'s information`),u=!0;continue}}}else this.json||(delete z.dist,delete z.readme,delete z.users),te=z;p.reportJson(te),this.json||n.push(te)}});SG.inspect.styles.name="cyan";for(let p of n)(p!==n[0]||u)&&this.context.stdout.write(` +`),this.context.stdout.write(`${(0,SG.inspect)(p,{depth:1/0,colors:!0,compact:!1})} +`);return A.exitCode()}};_0.paths=[["npm","info"]],_0.usage=nt.Usage({category:"Npm-related commands",description:"show information about a package",details:"\n This command fetches 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 or to the corresponding tagged version. 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 information.\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 all available information about react@next","yarn npm info react@next"],["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"]]});function bG(t){if(Array.isArray(t)){let e=[];for(let r of t)r=bG(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 o=bG(t[r]);o&&(e[r]=o)}return e}else return t||null}Ye();Ye();qt();var DBe=$e(u2()),H0=class extends ut{constructor(){super(...arguments);this.scope=ge.String("-s,--scope",{description:"Login to the registry configured for a given scope"});this.publish=ge.Boolean("--publish",!1,{description:"Login to the publish registry"});this.alwaysAuth=ge.Boolean("--always-auth",{description:"Set the npmAlwaysAuth configuration"})}async execute(){let r=await Ke.find(this.context.cwd,this.context.plugins),o=await tF({configuration:r,cwd:this.context.cwd,publish:this.publish,scope:this.scope});return(await Nt.start({configuration:r,stdout:this.context.stdout,includeFooter:!1},async n=>{let u=await Mvt({configuration:r,registry:o,report:n,stdin:this.context.stdin,stdout:this.context.stdout}),A=`/-/user/org.couchdb.user:${encodeURIComponent(u.name)}`,p=await on.put(A,u,{attemptedAs:u.name,configuration:r,registry:o,jsonResponse:!0,authType:on.AuthType.NO_AUTH});return await Ovt(o,p.token,{alwaysAuth:this.alwaysAuth,scope:this.scope}),n.reportInfo(0,"Successfully logged in")})).exitCode()}};H0.paths=[["npm","login"]],H0.usage=nt.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"]]});async function tF({scope:t,publish:e,configuration:r,cwd:o}){return t&&e?Zn.getScopeRegistry(t,{configuration:r,type:Zn.RegistryType.PUBLISH_REGISTRY}):t?Zn.getScopeRegistry(t,{configuration:r}):e?Zn.getPublishRegistry((await uC(r,o)).manifest,{configuration:r}):Zn.getDefaultRegistry({configuration:r})}async function Ovt(t,e,{alwaysAuth:r,scope:o}){let a=u=>A=>{let p=je.isIndexableObject(A)?A:{},h=p[u],C=je.isIndexableObject(h)?h:{};return{...p,[u]:{...C,...r!==void 0?{npmAlwaysAuth:r}:{},npmAuthToken:e}}},n=o?{npmScopes:a(o)}:{npmRegistries:a(t)};return await Ke.updateHomeConfiguration(n)}async function Mvt({configuration:t,registry:e,report:r,stdin:o,stdout:a}){r.reportInfo(0,`Logging in to ${de.pretty(t,e,de.Type.URL)}`);let n=!1;if(e.match(/^https:\/\/npm\.pkg\.github\.com(\/|$)/)&&(r.reportInfo(0,"You seem to be using the GitHub Package Registry. Tokens must be generated with the 'repo', 'write:packages', and 'read:packages' permissions."),n=!0),r.reportSeparator(),t.env.YARN_IS_TEST_ENV)return{name:t.env.YARN_INJECT_NPM_USER||"",password:t.env.YARN_INJECT_NPM_PASSWORD||""};let{username:u,password:A}=await(0,DBe.prompt)([{type:"input",name:"username",message:"Username:",required:!0,onCancel:()=>process.exit(130),stdin:o,stdout:a},{type:"password",name:"password",message:n?"Token:":"Password:",required:!0,onCancel:()=>process.exit(130),stdin:o,stdout:a}]);return r.reportSeparator(),{name:u,password:A}}Ye();Ye();qt();var ow=new Set(["npmAuthIdent","npmAuthToken"]),j0=class extends ut{constructor(){super(...arguments);this.scope=ge.String("-s,--scope",{description:"Logout of the registry configured for a given scope"});this.publish=ge.Boolean("--publish",!1,{description:"Logout of the publish registry"});this.all=ge.Boolean("-A,--all",!1,{description:"Logout of all registries"})}async execute(){let r=await Ke.find(this.context.cwd,this.context.plugins),o=async()=>{let n=await tF({configuration:r,cwd:this.context.cwd,publish:this.publish,scope:this.scope}),u=await Ke.find(this.context.cwd,this.context.plugins),A=W.makeIdent(this.scope??null,"pkg");return!Zn.getAuthConfiguration(n,{configuration:u,ident:A}).get("npmAuthToken")};return(await Nt.start({configuration:r,stdout:this.context.stdout},async n=>{if(this.all&&(await _vt(),n.reportInfo(0,"Successfully logged out from everything")),this.scope){await PBe("npmScopes",this.scope),await o()?n.reportInfo(0,`Successfully logged out from ${this.scope}`):n.reportWarning(0,"Scope authentication settings removed, but some other ones settings still apply to it");return}let u=await tF({configuration:r,cwd:this.context.cwd,publish:this.publish});await PBe("npmRegistries",u),await o()?n.reportInfo(0,`Successfully logged out from ${u}`):n.reportWarning(0,"Registry authentication settings removed, but some other ones settings still apply to it")})).exitCode()}};j0.paths=[["npm","logout"]],j0.usage=nt.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"]]});function Uvt(t,e){let r=t[e];if(!je.isIndexableObject(r))return!1;let o=new Set(Object.keys(r));if([...ow].every(n=>!o.has(n)))return!1;for(let n of ow)o.delete(n);if(o.size===0)return t[e]=void 0,!0;let a={...r};for(let n of ow)delete a[n];return t[e]=a,!0}async function _vt(){let t=e=>{let r=!1,o=je.isIndexableObject(e)?{...e}:{};o.npmAuthToken&&(delete o.npmAuthToken,r=!0);for(let a of Object.keys(o))Uvt(o,a)&&(r=!0);if(Object.keys(o).length!==0)return r?o:e};return await Ke.updateHomeConfiguration({npmRegistries:t,npmScopes:t})}async function PBe(t,e){return await Ke.updateHomeConfiguration({[t]:r=>{let o=je.isIndexableObject(r)?r:{};if(!Object.hasOwn(o,e))return r;let a=o[e],n=je.isIndexableObject(a)?a:{},u=new Set(Object.keys(n));if([...ow].every(p=>!u.has(p)))return r;for(let p of ow)u.delete(p);if(u.size===0)return Object.keys(o).length===1?void 0:{...o,[e]:void 0};let A={};for(let p of ow)A[p]=void 0;return{...o,[e]:{...n,...A}}}})}Ye();qt();var q0=class extends ut{constructor(){super(...arguments);this.access=ge.String("--access",{description:"The access for the published package (public or restricted)"});this.tag=ge.String("--tag","latest",{description:"The tag on the registry that the package should be attached to"});this.tolerateRepublish=ge.Boolean("--tolerate-republish",!1,{description:"Warn and exit when republishing an already existing version of a package"});this.otp=ge.String("--otp",{description:"The OTP token to use with the command"})}async execute(){let r=await Ke.find(this.context.cwd,this.context.plugins),{project:o,workspace:a}=await St.find(r,this.context.cwd);if(!a)throw new rr(o.cwd,this.context.cwd);if(a.manifest.private)throw new it("Private workspaces cannot be published");if(a.manifest.name===null||a.manifest.version===null)throw new it("Workspaces must have valid names and versions to be published on an external registry");await o.restoreInstallState();let n=a.manifest.name,u=a.manifest.version,A=Zn.getPublishRegistry(a.manifest,{configuration:r});return(await Nt.start({configuration:r,stdout:this.context.stdout},async h=>{if(this.tolerateRepublish)try{let C=await on.get(on.getIdentUrl(n),{configuration:r,registry:A,ident:n,jsonResponse:!0});if(!Object.hasOwn(C,"versions"))throw new Jt(15,'Registry returned invalid data for - missing "versions" field');if(Object.hasOwn(C.versions,u)){h.reportWarning(0,`Registry already knows about version ${u}; skipping.`);return}}catch(C){if(C.originalError?.response?.statusCode!==404)throw C}await un.maybeExecuteWorkspaceLifecycleScript(a,"prepublish",{report:h}),await CA.prepareForPack(a,{report:h},async()=>{let C=await CA.genPackList(a);for(let R of C)h.reportInfo(null,R);let I=await CA.genPackStream(a,C),v=await je.bufferStream(I),x=await iw.getGitHead(a.cwd),E=await iw.makePublishBody(a,v,{access:this.access,tag:this.tag,registry:A,gitHead:x});await on.put(on.getIdentUrl(n),E,{configuration:r,registry:A,ident:n,otp:this.otp,jsonResponse:!0})}),h.reportInfo(0,"Package archive published")})).exitCode()}};q0.paths=[["npm","publish"]],q0.usage=nt.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"]]});Ye();qt();var SBe=$e(Jn());Ye();Pt();qt();var G0=class extends ut{constructor(){super(...arguments);this.json=ge.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"});this.package=ge.String({required:!1})}async execute(){let r=await Ke.find(this.context.cwd,this.context.plugins),{project:o,workspace:a}=await St.find(r,this.context.cwd),n;if(typeof this.package<"u")n=W.parseIdent(this.package);else{if(!a)throw new rr(o.cwd,this.context.cwd);if(!a.manifest.name)throw new it(`Missing 'name' field in ${ue.fromPortablePath(V.join(a.cwd,dr.manifest))}`);n=a.manifest.name}let u=await Tv(n,r),p={children:je.sortMap(Object.entries(u),([h])=>h).map(([h,C])=>({value:de.tuple(de.Type.RESOLUTION,{descriptor:W.makeDescriptor(n,h),locator:W.makeLocator(n,C)})}))};return $s.emitTree(p,{configuration:r,json:this.json,stdout:this.context.stdout})}};G0.paths=[["npm","tag","list"]],G0.usage=nt.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"]]});async function Tv(t,e){let r=`/-/package${on.getIdentUrl(t)}/dist-tags`;return on.get(r,{configuration:e,ident:t,jsonResponse:!0,customErrorMessage:on.customPackageError})}var Y0=class extends ut{constructor(){super(...arguments);this.package=ge.String();this.tag=ge.String()}async execute(){let r=await Ke.find(this.context.cwd,this.context.plugins),{project:o,workspace:a}=await St.find(r,this.context.cwd);if(!a)throw new rr(o.cwd,this.context.cwd);let n=W.parseDescriptor(this.package,!0),u=n.range;if(!SBe.default.valid(u))throw new it(`The range ${de.pretty(r,n.range,de.Type.RANGE)} must be a valid semver version`);let A=Zn.getPublishRegistry(a.manifest,{configuration:r}),p=de.pretty(r,n,de.Type.IDENT),h=de.pretty(r,u,de.Type.RANGE),C=de.pretty(r,this.tag,de.Type.CODE);return(await Nt.start({configuration:r,stdout:this.context.stdout},async v=>{let x=await Tv(n,r);Object.hasOwn(x,this.tag)&&x[this.tag]===u&&v.reportWarning(0,`Tag ${C} is already set to version ${h}`);let E=`/-/package${on.getIdentUrl(n)}/dist-tags/${encodeURIComponent(this.tag)}`;await on.put(E,u,{configuration:r,registry:A,ident:n,jsonRequest:!0,jsonResponse:!0}),v.reportInfo(0,`Tag ${C} added to version ${h} of package ${p}`)})).exitCode()}};Y0.paths=[["npm","tag","add"]],Y0.usage=nt.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"]]});Ye();qt();var W0=class extends ut{constructor(){super(...arguments);this.package=ge.String();this.tag=ge.String()}async execute(){if(this.tag==="latest")throw new it("The 'latest' tag cannot be removed.");let r=await Ke.find(this.context.cwd,this.context.plugins),{project:o,workspace:a}=await St.find(r,this.context.cwd);if(!a)throw new rr(o.cwd,this.context.cwd);let n=W.parseIdent(this.package),u=Zn.getPublishRegistry(a.manifest,{configuration:r}),A=de.pretty(r,this.tag,de.Type.CODE),p=de.pretty(r,n,de.Type.IDENT),h=await Tv(n,r);if(!Object.hasOwn(h,this.tag))throw new it(`${A} is not a tag of package ${p}`);return(await Nt.start({configuration:r,stdout:this.context.stdout},async I=>{let v=`/-/package${on.getIdentUrl(n)}/dist-tags/${encodeURIComponent(this.tag)}`;await on.del(v,{configuration:r,registry:u,ident:n,jsonResponse:!0}),I.reportInfo(0,`Tag ${A} removed from package ${p}`)})).exitCode()}};W0.paths=[["npm","tag","remove"]],W0.usage=nt.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"]]});Ye();Ye();qt();var K0=class extends ut{constructor(){super(...arguments);this.scope=ge.String("-s,--scope",{description:"Print username for the registry configured for a given scope"});this.publish=ge.Boolean("--publish",!1,{description:"Print username for the publish registry"})}async execute(){let r=await Ke.find(this.context.cwd,this.context.plugins),o;return this.scope&&this.publish?o=Zn.getScopeRegistry(this.scope,{configuration:r,type:Zn.RegistryType.PUBLISH_REGISTRY}):this.scope?o=Zn.getScopeRegistry(this.scope,{configuration:r}):this.publish?o=Zn.getPublishRegistry((await uC(r,this.context.cwd)).manifest,{configuration:r}):o=Zn.getDefaultRegistry({configuration:r}),(await Nt.start({configuration:r,stdout:this.context.stdout},async n=>{let u;try{u=await on.get("/-/whoami",{configuration:r,registry:o,authType:on.AuthType.ALWAYS_AUTH,jsonResponse:!0,ident:this.scope?W.makeIdent(this.scope,""):void 0})}catch(A){if(A.response?.statusCode===401||A.response?.statusCode===403){n.reportError(41,"Authentication failed - your credentials may have expired");return}else throw A}n.reportInfo(0,u.username)})).exitCode()}};K0.paths=[["npm","whoami"]],K0.usage=nt.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 Hvt={configuration:{npmPublishAccess:{description:"Default access of the published packages",type:"STRING",default:null},npmAuditExcludePackages:{description:"Array of glob patterns of packages to exclude from npm audit",type:"STRING",default:[],isArray:!0},npmAuditIgnoreAdvisories:{description:"Array of glob patterns of advisory IDs to exclude from npm audit",type:"STRING",default:[],isArray:!0}},commands:[U0,_0,H0,j0,q0,Y0,G0,W0,K0]},jvt=Hvt;var LG={};Vt(LG,{PatchCommand:()=>J0,PatchCommitCommand:()=>z0,PatchFetcher:()=>Uv,PatchResolver:()=>_v,default:()=>oDt,patchUtils:()=>vm});Ye();Ye();Pt();nA();var vm={};Vt(vm,{applyPatchFile:()=>nF,diffFolders:()=>TG,ensureUnpatchedDescriptor:()=>kG,ensureUnpatchedLocator:()=>sF,extractPackageToDisk:()=>RG,extractPatchFlags:()=>TBe,isParentRequired:()=>FG,isPatchDescriptor:()=>iF,isPatchLocator:()=>V0,loadPatchFiles:()=>Mv,makeDescriptor:()=>oF,makeLocator:()=>QG,makePatchHash:()=>NG,parseDescriptor:()=>Lv,parseLocator:()=>Ov,parsePatchFile:()=>Nv,unpatchDescriptor:()=>nDt,unpatchLocator:()=>iDt});Ye();Pt();Ye();Pt();var qvt=/^@@ -(\d+)(,(\d+))? \+(\d+)(,(\d+))? @@.*/;function aw(t){return V.relative(Bt.root,V.resolve(Bt.root,ue.toPortablePath(t)))}function Gvt(t){let e=t.trim().match(qvt);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 Yvt=420,Wvt=493;var bBe=()=>({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}),Kvt=t=>({header:Gvt(t),parts:[]}),Vvt={["@"]:"header",["-"]:"deletion",["+"]:"insertion",[" "]:"context",["\\"]:"pragma",undefined:"context"};function zvt(t){let e=[],r=bBe(),o="parsing header",a=null,n=null;function u(){a&&(n&&(a.parts.push(n),n=null),r.hunks.push(a),a=null)}function A(){u(),e.push(r),r=bBe()}for(let p=0;p0?"patch":"mode change",z=null;switch(U){case"rename":{if(!C||!I)throw new Error("Bad parser state: rename from & to not given");e.push({type:"rename",semverExclusivity:o,fromPath:aw(C),toPath:aw(I)}),z=I}break;case"file deletion":{let te=a||E;if(!te)throw new Error("Bad parse state: no path given for file deletion");e.push({type:"file deletion",semverExclusivity:o,hunk:L&&L[0]||null,path:aw(te),mode:rF(p),hash:v})}break;case"file creation":{let te=n||R;if(!te)throw new Error("Bad parse state: no path given for file creation");e.push({type:"file creation",semverExclusivity:o,hunk:L&&L[0]||null,path:aw(te),mode:rF(h),hash:x})}break;case"patch":case"mode change":z=R||n;break;default:je.assertNever(U);break}z&&u&&A&&u!==A&&e.push({type:"mode change",semverExclusivity:o,path:aw(z),oldMode:rF(u),newMode:rF(A)}),z&&L&&L.length&&e.push({type:"patch",semverExclusivity:o,path:aw(z),hunks:L,beforeHash:v,afterHash:x})}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 rF(t){let e=parseInt(t,8)&511;if(e!==Yvt&&e!==Wvt)throw new Error(`Unexpected file mode string: ${t}`);return e}function Nv(t){let e=t.split(/\n/g);return e[e.length-1]===""&&e.pop(),Jvt(zvt(e))}function Xvt(t){let e=0,r=0;for(let{type:o,lines:a}of t.parts)switch(o){case"context":r+=a.length,e+=a.length;break;case"deletion":e+=a.length;break;case"insertion":r+=a.length;break;default:je.assertNever(o);break}if(e!==t.header.original.length||r!==t.header.patched.length){let o=a=>a<0?a:`+${a}`;throw new Error(`hunk header integrity check failed (expected @@ ${o(t.header.original.length)} ${o(t.header.patched.length)} @@, got @@ ${o(e)} ${o(r)} @@)`)}}Ye();Pt();var lw=class extends Error{constructor(r,o){super(`Cannot apply hunk #${r+1}`);this.hunk=o}};async function cw(t,e,r){let o=await t.lstatPromise(e),a=await r();typeof a<"u"&&(e=a),await t.lutimesPromise(e,o.atime,o.mtime)}async function nF(t,{baseFs:e=new Tn,dryRun:r=!1,version:o=null}={}){for(let a of t)if(!(a.semverExclusivity!==null&&o!==null&&!kr.satisfiesWithPrereleases(o,a.semverExclusivity)))switch(a.type){case"file deletion":if(r){if(!e.existsSync(a.path))throw new Error(`Trying to delete a file that doesn't exist: ${a.path}`)}else await cw(e,V.dirname(a.path),async()=>{await e.unlinkPromise(a.path)});break;case"rename":if(r){if(!e.existsSync(a.fromPath))throw new Error(`Trying to move a file that doesn't exist: ${a.fromPath}`)}else await cw(e,V.dirname(a.fromPath),async()=>{await cw(e,V.dirname(a.toPath),async()=>{await cw(e,a.fromPath,async()=>(await e.movePromise(a.fromPath,a.toPath),a.toPath))})});break;case"file creation":if(r){if(e.existsSync(a.path))throw new Error(`Trying to create a file that already exists: ${a.path}`)}else{let n=a.hunk?a.hunk.parts[0].lines.join(` +`)+(a.hunk.parts[0].noNewlineAtEndOfFile?"":` +`):"";await e.mkdirpPromise(V.dirname(a.path),{chmod:493,utimes:[vi.SAFE_TIME,vi.SAFE_TIME]}),await e.writeFilePromise(a.path,n,{mode:a.mode}),await e.utimesPromise(a.path,vi.SAFE_TIME,vi.SAFE_TIME)}break;case"patch":await cw(e,a.path,async()=>{await eDt(a,{baseFs:e,dryRun:r})});break;case"mode change":{let u=(await e.statPromise(a.path)).mode;if(xBe(a.newMode)!==xBe(u))continue;await cw(e,a.path,async()=>{await e.chmodPromise(a.path,a.newMode)})}break;default:je.assertNever(a);break}}function xBe(t){return(t&64)>0}function kBe(t){return t.replace(/\s+$/,"")}function $vt(t,e){return kBe(t)===kBe(e)}async function eDt({hunks:t,path:e},{baseFs:r,dryRun:o=!1}){let a=await r.statSync(e).mode,u=(await r.readFileSync(e,"utf8")).split(/\n/),A=[],p=0,h=0;for(let I of t){let v=Math.max(h,I.header.patched.start+p),x=Math.max(0,v-h),E=Math.max(0,u.length-v-I.header.original.length),R=Math.max(x,E),L=0,U=0,z=null;for(;L<=R;){if(L<=x&&(U=v-L,z=QBe(I,u,U),z!==null)){L=-L;break}if(L<=E&&(U=v+L,z=QBe(I,u,U),z!==null))break;L+=1}if(z===null)throw new lw(t.indexOf(I),I);A.push(z),p+=L,h=U+I.header.original.length}if(o)return;let C=0;for(let I of A)for(let v of I)switch(v.type){case"splice":{let x=v.index+C;u.splice(x,v.numToDelete,...v.linesToInsert),C+=v.linesToInsert.length-v.numToDelete}break;case"pop":u.pop();break;case"push":u.push(v.line);break;default:je.assertNever(v);break}await r.writeFilePromise(e,u.join(` +`),{mode:a})}function QBe(t,e,r){let o=[];for(let a of t.parts)switch(a.type){case"context":case"deletion":{for(let n of a.lines){let u=e[r];if(u==null||!$vt(u,n))return null;r+=1}a.type==="deletion"&&(o.push({type:"splice",index:r-a.lines.length,numToDelete:a.lines.length,linesToInsert:[]}),a.noNewlineAtEndOfFile&&o.push({type:"push",line:""}))}break;case"insertion":o.push({type:"splice",index:r,numToDelete:0,linesToInsert:a.lines}),a.noNewlineAtEndOfFile&&o.push({type:"pop"});break;default:je.assertNever(a.type);break}return o}var rDt=/^builtin<([^>]+)>$/;function uw(t,e){let{protocol:r,source:o,selector:a,params:n}=W.parseRange(t);if(r!=="patch:")throw new Error("Invalid patch range");if(o===null)throw new Error("Patch locators must explicitly define their source");let u=a?a.split(/&/).map(C=>ue.toPortablePath(C)):[],A=n&&typeof n.locator=="string"?W.parseLocator(n.locator):null,p=n&&typeof n.version=="string"?n.version:null,h=e(o);return{parentLocator:A,sourceItem:h,patchPaths:u,sourceVersion:p}}function iF(t){return t.range.startsWith("patch:")}function V0(t){return t.reference.startsWith("patch:")}function Lv(t){let{sourceItem:e,...r}=uw(t.range,W.parseDescriptor);return{...r,sourceDescriptor:e}}function Ov(t){let{sourceItem:e,...r}=uw(t.reference,W.parseLocator);return{...r,sourceLocator:e}}function nDt(t){let{sourceItem:e}=uw(t.range,W.parseDescriptor);return e}function iDt(t){let{sourceItem:e}=uw(t.reference,W.parseLocator);return e}function kG(t){if(!iF(t))return t;let{sourceItem:e}=uw(t.range,W.parseDescriptor);return e}function sF(t){if(!V0(t))return t;let{sourceItem:e}=uw(t.reference,W.parseLocator);return e}function FBe({parentLocator:t,sourceItem:e,patchPaths:r,sourceVersion:o,patchHash:a},n){let u=t!==null?{locator:W.stringifyLocator(t)}:{},A=typeof o<"u"?{version:o}:{},p=typeof a<"u"?{hash:a}:{};return W.makeRange({protocol:"patch:",source:n(e),selector:r.join("&"),params:{...A,...p,...u}})}function oF(t,{parentLocator:e,sourceDescriptor:r,patchPaths:o}){return W.makeDescriptor(t,FBe({parentLocator:e,sourceItem:r,patchPaths:o},W.stringifyDescriptor))}function QG(t,{parentLocator:e,sourcePackage:r,patchPaths:o,patchHash:a}){return W.makeLocator(t,FBe({parentLocator:e,sourceItem:r,sourceVersion:r.version,patchPaths:o,patchHash:a},W.stringifyLocator))}function RBe({onAbsolute:t,onRelative:e,onProject:r,onBuiltin:o},a){let n=a.lastIndexOf("!");n!==-1&&(a=a.slice(n+1));let u=a.match(rDt);return u!==null?o(u[1]):a.startsWith("~/")?r(a.slice(2)):V.isAbsolute(a)?t(a):e(a)}function TBe(t){let e=t.lastIndexOf("!");return{optional:(e!==-1?new Set(t.slice(0,e).split(/!/)):new Set).has("optional")}}function FG(t){return RBe({onAbsolute:()=>!1,onRelative:()=>!0,onProject:()=>!1,onBuiltin:()=>!1},t)}async function Mv(t,e,r){let o=t!==null?await r.fetcher.fetch(t,r):null,a=o&&o.localPath?{packageFs:new gn(Bt.root),prefixPath:V.relative(Bt.root,o.localPath)}:o;o&&o!==a&&o.releaseFs&&o.releaseFs();let n=await je.releaseAfterUseAsync(async()=>await Promise.all(e.map(async u=>{let A=TBe(u),p=await RBe({onAbsolute:async h=>await oe.readFilePromise(h,"utf8"),onRelative:async h=>{if(a===null)throw new Error("Assertion failed: The parent locator should have been fetched");return await a.packageFs.readFilePromise(V.join(a.prefixPath,h),"utf8")},onProject:async h=>await oe.readFilePromise(V.join(r.project.cwd,h),"utf8"),onBuiltin:async h=>await r.project.configuration.firstHook(C=>C.getBuiltinPatch,r.project,h)},u);return{...A,source:p}})));for(let u of n)typeof u.source=="string"&&(u.source=u.source.replace(/\r\n?/g,` +`));return n}async function RG(t,{cache:e,project:r}){let o=r.storedPackages.get(t.locatorHash);if(typeof o>"u")throw new Error("Assertion failed: Expected the package to be registered");let a=sF(t),n=r.storedChecksums,u=new Qi,A=await oe.mktempPromise(),p=V.join(A,"source"),h=V.join(A,"user"),C=V.join(A,".yarn-patch.json"),I=r.configuration.makeFetcher(),v=[];try{let x,E;if(t.locatorHash===a.locatorHash){let R=await I.fetch(t,{cache:e,project:r,fetcher:I,checksums:n,report:u});v.push(()=>R.releaseFs?.()),x=R,E=R}else x=await I.fetch(t,{cache:e,project:r,fetcher:I,checksums:n,report:u}),v.push(()=>x.releaseFs?.()),E=await I.fetch(t,{cache:e,project:r,fetcher:I,checksums:n,report:u}),v.push(()=>E.releaseFs?.());await Promise.all([oe.copyPromise(p,x.prefixPath,{baseFs:x.packageFs}),oe.copyPromise(h,E.prefixPath,{baseFs:E.packageFs}),oe.writeJsonPromise(C,{locator:W.stringifyLocator(t),version:o.version})])}finally{for(let x of v)x()}return oe.detachTemp(A),h}async function TG(t,e){let r=ue.fromPortablePath(t).replace(/\\/g,"/"),o=ue.fromPortablePath(e).replace(/\\/g,"/"),{stdout:a,stderr:n}=await Ur.execvp("git",["-c","core.safecrlf=false","diff","--src-prefix=a/","--dst-prefix=b/","--ignore-cr-at-eol","--full-index","--no-index","--no-renames","--text",r,o],{cwd:ue.toPortablePath(process.cwd()),env:{...process.env,GIT_CONFIG_NOSYSTEM:"1",HOME:"",XDG_CONFIG_HOME:"",USERPROFILE:""}});if(n.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': +${n}`);let u=r.startsWith("/")?A=>A.slice(1):A=>A;return a.replace(new RegExp(`(a|b)(${je.escapeRegExp(`/${u(r)}/`)})`,"g"),"$1/").replace(new RegExp(`(a|b)${je.escapeRegExp(`/${u(o)}/`)}`,"g"),"$1/").replace(new RegExp(je.escapeRegExp(`${r}/`),"g"),"").replace(new RegExp(je.escapeRegExp(`${o}/`),"g"),"")}function NG(t,e){let r=[];for(let{source:o}of t){if(o===null)continue;let a=Nv(o);for(let n of a){let{semverExclusivity:u,...A}=n;u!==null&&e!==null&&!kr.satisfiesWithPrereleases(e,u)||r.push(JSON.stringify(A))}}return wn.makeHash(`${3}`,...r).slice(0,6)}Ye();function NBe(t,{configuration:e,report:r}){for(let o of t.parts)for(let a of o.lines)switch(o.type){case"context":r.reportInfo(null,` ${de.pretty(e,a,"grey")}`);break;case"deletion":r.reportError(28,`- ${de.pretty(e,a,de.Type.REMOVED)}`);break;case"insertion":r.reportError(28,`+ ${de.pretty(e,a,de.Type.ADDED)}`);break;default:je.assertNever(o.type)}}var Uv=class{supports(e,r){return!!V0(e)}getLocalPath(e,r){return null}async fetch(e,r){let o=r.checksums.get(e.locatorHash)||null,[a,n,u]=await r.cache.fetchPackageFromCache(e,o,{onHit:()=>r.report.reportCacheHit(e),onMiss:()=>r.report.reportCacheMiss(e,`${W.prettyLocator(r.project.configuration,e)} can't be found in the cache and will be fetched from the disk`),loader:()=>this.patchPackage(e,r),...r.cacheOptions});return{packageFs:a,releaseFs:n,prefixPath:W.getIdentVendorPath(e),localPath:this.getLocalPath(e,r),checksum:u}}async patchPackage(e,r){let{parentLocator:o,sourceLocator:a,sourceVersion:n,patchPaths:u}=Ov(e),A=await Mv(o,u,r),p=await oe.mktempPromise(),h=V.join(p,"current.zip"),C=await r.fetcher.fetch(a,r),I=W.getIdentVendorPath(e),v=new Ji(h,{create:!0,level:r.project.configuration.get("compressionLevel")});await je.releaseAfterUseAsync(async()=>{await v.copyPromise(I,C.prefixPath,{baseFs:C.packageFs,stableSort:!0})},C.releaseFs),v.saveAndClose();for(let{source:x,optional:E}of A){if(x===null)continue;let R=new Ji(h,{level:r.project.configuration.get("compressionLevel")}),L=new gn(V.resolve(Bt.root,I),{baseFs:R});try{await nF(Nv(x),{baseFs:L,version:n})}catch(U){if(!(U instanceof lw))throw U;let z=r.project.configuration.get("enableInlineHunks"),te=!z&&!E?" (set enableInlineHunks for details)":"",le=`${W.prettyLocator(r.project.configuration,e)}: ${U.message}${te}`,he=Ae=>{!z||NBe(U.hunk,{configuration:r.project.configuration,report:Ae})};if(R.discardAndClose(),E){r.report.reportWarningOnce(66,le,{reportExtra:he});continue}else throw new Jt(66,le,he)}R.saveAndClose()}return new Ji(h,{level:r.project.configuration.get("compressionLevel")})}};Ye();var _v=class{supportsDescriptor(e,r){return!!iF(e)}supportsLocator(e,r){return!!V0(e)}shouldPersistResolution(e,r){return!1}bindDescriptor(e,r,o){let{patchPaths:a}=Lv(e);return a.every(n=>!FG(n))?e:W.bindDescriptor(e,{locator:W.stringifyLocator(r)})}getResolutionDependencies(e,r){let{sourceDescriptor:o}=Lv(e);return{sourceDescriptor:r.project.configuration.normalizeDependency(o)}}async getCandidates(e,r,o){if(!o.fetchOptions)throw new Error("Assertion failed: This resolver cannot be used unless a fetcher is configured");let{parentLocator:a,patchPaths:n}=Lv(e),u=await Mv(a,n,o.fetchOptions),A=r.sourceDescriptor;if(typeof A>"u")throw new Error("Assertion failed: The dependency should have been resolved");let p=NG(u,A.version);return[QG(e,{parentLocator:a,sourcePackage:A,patchPaths:n,patchHash:p})]}async getSatisfying(e,r,o,a){let[n]=await this.getCandidates(e,r,a);return{locators:o.filter(u=>u.locatorHash===n.locatorHash),sorted:!1}}async resolve(e,r){let{sourceLocator:o}=Ov(e);return{...await r.resolver.resolve(o,r),...e}}};Ye();Pt();qt();var z0=class extends ut{constructor(){super(...arguments);this.save=ge.Boolean("-s,--save",!1,{description:"Add the patch to your resolution entries"});this.patchFolder=ge.String()}async execute(){let r=await Ke.find(this.context.cwd,this.context.plugins),{project:o,workspace:a}=await St.find(r,this.context.cwd);if(!a)throw new rr(o.cwd,this.context.cwd);await o.restoreInstallState();let n=V.resolve(this.context.cwd,ue.toPortablePath(this.patchFolder)),u=V.join(n,"../source"),A=V.join(n,"../.yarn-patch.json");if(!oe.existsSync(u))throw new it("The argument folder didn't get created by 'yarn patch'");let p=await TG(u,n),h=await oe.readJsonPromise(A),C=W.parseLocator(h.locator,!0);if(!o.storedPackages.has(C.locatorHash))throw new it("No package found in the project for the given locator");if(!this.save){this.context.stdout.write(p);return}let I=r.get("patchFolder"),v=V.join(I,`${W.slugifyLocator(C)}.patch`);await oe.mkdirPromise(I,{recursive:!0}),await oe.writeFilePromise(v,p);let x=[],E=new Map;for(let R of o.storedPackages.values()){if(W.isVirtualLocator(R))continue;let L=R.dependencies.get(C.identHash);if(!L)continue;let U=W.ensureDevirtualizedDescriptor(L),z=kG(U),te=o.storedResolutions.get(z.descriptorHash);if(!te)throw new Error("Assertion failed: Expected the resolution to have been registered");if(!o.storedPackages.get(te))throw new Error("Assertion failed: Expected the package to have been registered");let he=o.tryWorkspaceByLocator(R);if(he)x.push(he);else{let Ae=o.originalPackages.get(R.locatorHash);if(!Ae)throw new Error("Assertion failed: Expected the original package to have been registered");let ye=Ae.dependencies.get(L.identHash);if(!ye)throw new Error("Assertion failed: Expected the original dependency to have been registered");E.set(ye.descriptorHash,ye)}}for(let R of x)for(let L of Ot.hardDependencies){let U=R.manifest[L].get(C.identHash);if(!U)continue;let z=oF(U,{parentLocator:null,sourceDescriptor:W.convertLocatorToDescriptor(C),patchPaths:[V.join(dr.home,V.relative(o.cwd,v))]});R.manifest[L].set(U.identHash,z)}for(let R of E.values()){let L=oF(R,{parentLocator:null,sourceDescriptor:W.convertLocatorToDescriptor(C),patchPaths:[V.join(dr.home,V.relative(o.cwd,v))]});o.topLevelWorkspace.manifest.resolutions.push({pattern:{descriptor:{fullName:W.stringifyIdent(L),description:R.range}},reference:L.range})}await o.persist()}};z0.paths=[["patch-commit"]],z0.usage=nt.Usage({description:"generate a patch out of a directory",details:"\n By default, 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 With the `-s,--save` option set, the patchfile won't be printed on stdout anymore and will instead be stored within a local file (by default kept within `.yarn/patches`, but configurable via the `patchFolder` setting). A `resolutions` entry will also be added to your top-level manifest, referencing the patched package via the `patch:` protocol.\n\n Note that only folders generated by `yarn patch` are accepted as valid input for `yarn patch-commit`.\n "});Ye();Pt();qt();var J0=class extends ut{constructor(){super(...arguments);this.update=ge.Boolean("-u,--update",!1,{description:"Reapply local patches that already apply to this packages"});this.json=ge.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"});this.package=ge.String()}async execute(){let r=await Ke.find(this.context.cwd,this.context.plugins),{project:o,workspace:a}=await St.find(r,this.context.cwd),n=await Lr.find(r);if(!a)throw new rr(o.cwd,this.context.cwd);await o.restoreInstallState();let u=W.parseLocator(this.package);if(u.reference==="unknown"){let A=je.mapAndFilter([...o.storedPackages.values()],p=>p.identHash!==u.identHash?je.mapAndFilter.skip:W.isVirtualLocator(p)?je.mapAndFilter.skip:V0(p)!==this.update?je.mapAndFilter.skip:p);if(A.length===0)throw new it("No package found in the project for the given locator");if(A.length>1)throw new it(`Multiple candidate packages found; explicitly choose one of them (use \`yarn why \` to get more information as to who depends on them): +${A.map(p=>` +- ${W.prettyLocator(r,p)}`).join("")}`);u=A[0]}if(!o.storedPackages.has(u.locatorHash))throw new it("No package found in the project for the given locator");await Nt.start({configuration:r,json:this.json,stdout:this.context.stdout},async A=>{let p=sF(u),h=await RG(u,{cache:n,project:o});A.reportJson({locator:W.stringifyLocator(p),path:ue.fromPortablePath(h)});let C=this.update?" along with its current modifications":"";A.reportInfo(0,`Package ${W.prettyLocator(r,p)} got extracted with success${C}!`),A.reportInfo(0,`You can now edit the following folder: ${de.pretty(r,ue.fromPortablePath(h),"magenta")}`),A.reportInfo(0,`Once you are done run ${de.pretty(r,`yarn patch-commit -s ${process.platform==="win32"?'"':""}${ue.fromPortablePath(h)}${process.platform==="win32"?'"':""}`,"cyan")} and Yarn will store a patchfile based on your changes.`)})}};J0.paths=[["patch"]],J0.usage=nt.Usage({description:"prepare a package for patching",details:"\n This command will cause a package to be extracted in a temporary directory intended to be editable at will.\n\n Once you're done with your changes, run `yarn patch-commit -s path` (with `path` being the temporary directory you received) to generate a patchfile and register it into your top-level manifest via the `patch:` protocol. Run `yarn patch-commit -h` for more details.\n\n Calling the command when you already have a patch won't import it by default (in other words, the default behavior is to reset existing patches). However, adding the `-u,--update` flag will import any current patch.\n "});var sDt={configuration:{enableInlineHunks:{description:"If true, the installs will print unmatched patch hunks",type:"BOOLEAN",default:!1},patchFolder:{description:"Folder where the patch files must be written",type:"ABSOLUTE_PATH",default:"./.yarn/patches"}},commands:[z0,J0],fetchers:[Uv],resolvers:[_v]},oDt=sDt;var UG={};Vt(UG,{PnpmLinker:()=>Hv,default:()=>ADt});Ye();Pt();qt();var Hv=class{getCustomDataKey(){return JSON.stringify({name:"PnpmLinker",version:3})}supportsPackage(e,r){return this.isEnabled(r)}async findPackageLocation(e,r){if(!this.isEnabled(r))throw new Error("Assertion failed: Expected the pnpm linker to be enabled");let o=this.getCustomDataKey(),a=r.project.linkersCustomData.get(o);if(!a)throw new it(`The project in ${de.pretty(r.project.configuration,`${r.project.cwd}/package.json`,de.Type.PATH)} doesn't seem to have been installed - running an install there might help`);let n=a.pathsByLocator.get(e.locatorHash);if(typeof n>"u")throw new it(`Couldn't find ${W.prettyLocator(r.project.configuration,e)} in the currently installed pnpm map - running an install might help`);return n.packageLocation}async findPackageLocator(e,r){if(!this.isEnabled(r))return null;let o=this.getCustomDataKey(),a=r.project.linkersCustomData.get(o);if(!a)throw new it(`The project in ${de.pretty(r.project.configuration,`${r.project.cwd}/package.json`,de.Type.PATH)} doesn't seem to have been installed - running an install there might help`);let n=e.match(/(^.*\/node_modules\/(@[^/]*\/)?[^/]+)(\/.*$)/);if(n){let p=a.locatorByPath.get(n[1]);if(p)return p}let u=e,A=e;do{A=u,u=V.dirname(A);let p=a.locatorByPath.get(A);if(p)return p}while(u!==A);return null}makeInstaller(e){return new OG(e)}isEnabled(e){return e.project.configuration.get("nodeLinker")==="pnpm"}},OG=class{constructor(e){this.opts=e;this.asyncActions=new je.AsyncActions(10);this.customData={pathsByLocator:new Map,locatorByPath:new Map};this.indexFolderPromise=PD(oe,{indexPath:V.join(e.project.configuration.get("globalFolder"),"index")})}attachCustomData(e){}async installPackage(e,r,o){switch(e.linkType){case"SOFT":return this.installPackageSoft(e,r,o);case"HARD":return this.installPackageHard(e,r,o)}throw new Error("Assertion failed: Unsupported package link type")}async installPackageSoft(e,r,o){let a=V.resolve(r.packageFs.getRealPath(),r.prefixPath),n=this.opts.project.tryWorkspaceByLocator(e)?V.join(a,dr.nodeModules):null;return this.customData.pathsByLocator.set(e.locatorHash,{packageLocation:a,dependenciesLocation:n}),{packageLocation:a,buildRequest:null}}async installPackageHard(e,r,o){let a=aDt(e,{project:this.opts.project}),n=a.packageLocation;this.customData.locatorByPath.set(n,W.stringifyLocator(e)),this.customData.pathsByLocator.set(e.locatorHash,a),o.holdFetchResult(this.asyncActions.set(e.locatorHash,async()=>{await oe.mkdirPromise(n,{recursive:!0}),await oe.copyPromise(n,r.prefixPath,{baseFs:r.packageFs,overwrite:!1,linkStrategy:{type:"HardlinkFromIndex",indexPath:await this.indexFolderPromise,autoRepair:!0}})}));let A=W.isVirtualLocator(e)?W.devirtualizeLocator(e):e,p={manifest:await Ot.tryFind(r.prefixPath,{baseFs:r.packageFs})??new Ot,misc:{hasBindingGyp:mA.hasBindingGyp(r)}},h=this.opts.project.getDependencyMeta(A,e.version),C=mA.extractBuildRequest(e,p,h,{configuration:this.opts.project.configuration});return{packageLocation:n,buildRequest:C}}async attachInternalDependencies(e,r){if(this.opts.project.configuration.get("nodeLinker")!=="pnpm"||!LBe(e,{project:this.opts.project}))return;let o=this.customData.pathsByLocator.get(e.locatorHash);if(typeof o>"u")throw new Error(`Assertion failed: Expected the package to have been registered (${W.stringifyLocator(e)})`);let{dependenciesLocation:a}=o;!a||this.asyncActions.reduce(e.locatorHash,async n=>{await oe.mkdirPromise(a,{recursive:!0});let u=await lDt(a),A=new Map(u),p=[n],h=(I,v)=>{let x=v;LBe(v,{project:this.opts.project})||(this.opts.report.reportWarningOnce(0,"The pnpm linker doesn't support providing different versions to workspaces' peer dependencies"),x=W.devirtualizeLocator(v));let E=this.customData.pathsByLocator.get(x.locatorHash);if(typeof E>"u")throw new Error(`Assertion failed: Expected the package to have been registered (${W.stringifyLocator(v)})`);let R=W.stringifyIdent(I),L=V.join(a,R),U=V.relative(V.dirname(L),E.packageLocation),z=A.get(R);A.delete(R),p.push(Promise.resolve().then(async()=>{if(z){if(z.isSymbolicLink()&&await oe.readlinkPromise(L)===U)return;await oe.removePromise(L)}await oe.mkdirpPromise(V.dirname(L)),process.platform=="win32"&&this.opts.project.configuration.get("winLinkType")==="junctions"?await oe.symlinkPromise(E.packageLocation,L,"junction"):await oe.symlinkPromise(U,L)}))},C=!1;for(let[I,v]of r)I.identHash===e.identHash&&(C=!0),h(I,v);!C&&!this.opts.project.tryWorkspaceByLocator(e)&&h(W.convertLocatorToDescriptor(e),e),p.push(cDt(a,A)),await Promise.all(p)})}async attachExternalDependents(e,r){throw new Error("External dependencies haven't been implemented for the pnpm linker")}async finalizeInstall(){let e=MBe(this.opts.project);if(this.opts.project.configuration.get("nodeLinker")!=="pnpm")await oe.removePromise(e);else{let r;try{r=new Set(await oe.readdirPromise(e))}catch{r=new Set}for(let{dependenciesLocation:o}of this.customData.pathsByLocator.values()){if(!o)continue;let a=V.contains(e,o);if(a===null)continue;let[n]=a.split(V.sep);r.delete(n)}await Promise.all([...r].map(async o=>{await oe.removePromise(V.join(e,o))}))}return await this.asyncActions.wait(),await MG(e),this.opts.project.configuration.get("nodeLinker")!=="node-modules"&&await MG(OBe(this.opts.project)),{customData:this.customData}}};function OBe(t){return V.join(t.cwd,dr.nodeModules)}function MBe(t){return V.join(OBe(t),".store")}function aDt(t,{project:e}){let r=W.slugifyLocator(t),o=MBe(e),a=V.join(o,r,"package"),n=V.join(o,r,dr.nodeModules);return{packageLocation:a,dependenciesLocation:n}}function LBe(t,{project:e}){return!W.isVirtualLocator(t)||!e.tryWorkspaceByLocator(t)}async function lDt(t){let e=new Map,r=[];try{r=await oe.readdirPromise(t,{withFileTypes:!0})}catch(o){if(o.code!=="ENOENT")throw o}try{for(let o of r)if(!o.name.startsWith("."))if(o.name.startsWith("@")){let a=await oe.readdirPromise(V.join(t,o.name),{withFileTypes:!0});if(a.length===0)e.set(o.name,o);else for(let n of a)e.set(`${o.name}/${n.name}`,n)}else e.set(o.name,o)}catch(o){if(o.code!=="ENOENT")throw o}return e}async function cDt(t,e){let r=[],o=new Set;for(let a of e.keys()){r.push(oe.removePromise(V.join(t,a)));let n=W.tryParseIdent(a)?.scope;n&&o.add(`@${n}`)}return Promise.all(r).then(()=>Promise.all([...o].map(a=>MG(V.join(t,a)))))}async function MG(t){try{await oe.rmdirPromise(t)}catch(e){if(e.code!=="ENOENT"&&e.code!=="ENOTEMPTY")throw e}}var uDt={linkers:[Hv]},ADt=uDt;var WG={};Vt(WG,{StageCommand:()=>X0,default:()=>IDt,stageUtils:()=>lF});Ye();Pt();qt();Ye();Pt();var lF={};Vt(lF,{ActionType:()=>_G,checkConsensus:()=>aF,expandDirectory:()=>qG,findConsensus:()=>GG,findVcsRoot:()=>HG,genCommitMessage:()=>YG,getCommitPrefix:()=>UBe,isYarnFile:()=>jG});Pt();var _G=(n=>(n[n.CREATE=0]="CREATE",n[n.DELETE=1]="DELETE",n[n.ADD=2]="ADD",n[n.REMOVE=3]="REMOVE",n[n.MODIFY=4]="MODIFY",n))(_G||{});async function HG(t,{marker:e}){do if(!oe.existsSync(V.join(t,e)))t=V.dirname(t);else return t;while(t!=="/");return null}function jG(t,{roots:e,names:r}){if(r.has(V.basename(t)))return!0;do if(!e.has(t))t=V.dirname(t);else return!0;while(t!=="/");return!1}function qG(t){let e=[],r=[t];for(;r.length>0;){let o=r.pop(),a=oe.readdirSync(o);for(let n of a){let u=V.resolve(o,n);oe.lstatSync(u).isDirectory()?r.push(u):e.push(u)}}return e}function aF(t,e){let r=0,o=0;for(let a of t)a!=="wip"&&(e.test(a)?r+=1:o+=1);return r>=o}function GG(t){let e=aF(t,/^(\w\(\w+\):\s*)?\w+s/),r=aF(t,/^(\w\(\w+\):\s*)?[A-Z]/),o=aF(t,/^\w\(\w+\):/);return{useThirdPerson:e,useUpperCase:r,useComponent:o}}function UBe(t){return t.useComponent?"chore(yarn): ":""}var fDt=new Map([[0,"create"],[1,"delete"],[2,"add"],[3,"remove"],[4,"update"]]);function YG(t,e){let r=UBe(t),o=[],a=e.slice().sort((n,u)=>n[0]-u[0]);for(;a.length>0;){let[n,u]=a.shift(),A=fDt.get(n);t.useUpperCase&&o.length===0&&(A=`${A[0].toUpperCase()}${A.slice(1)}`),t.useThirdPerson&&(A+="s");let p=[u];for(;a.length>0&&a[0][0]===n;){let[,C]=a.shift();p.push(C)}p.sort();let h=p.shift();p.length===1?h+=" (and one other)":p.length>1&&(h+=` (and ${p.length} others)`),o.push(`${A} ${h}`)}return`${r}${o.join(", ")}`}var pDt="Commit generated via `yarn stage`",hDt=11;async function _Be(t){let{code:e,stdout:r}=await Ur.execvp("git",["log","-1","--pretty=format:%H"],{cwd:t});return e===0?r.trim():null}async function gDt(t,e){let r=[],o=e.filter(h=>V.basename(h.path)==="package.json");for(let{action:h,path:C}of o){let I=V.relative(t,C);if(h===4){let v=await _Be(t),{stdout:x}=await Ur.execvp("git",["show",`${v}:${I}`],{cwd:t,strict:!0}),E=await Ot.fromText(x),R=await Ot.fromFile(C),L=new Map([...R.dependencies,...R.devDependencies]),U=new Map([...E.dependencies,...E.devDependencies]);for(let[z,te]of U){let le=W.stringifyIdent(te),he=L.get(z);he?he.range!==te.range&&r.push([4,`${le} to ${he.range}`]):r.push([3,le])}for(let[z,te]of L)U.has(z)||r.push([2,W.stringifyIdent(te)])}else if(h===0){let v=await Ot.fromFile(C);v.name?r.push([0,W.stringifyIdent(v.name)]):r.push([0,"a package"])}else if(h===1){let v=await _Be(t),{stdout:x}=await Ur.execvp("git",["show",`${v}:${I}`],{cwd:t,strict:!0}),E=await Ot.fromText(x);E.name?r.push([1,W.stringifyIdent(E.name)]):r.push([1,"a package"])}else throw new Error("Assertion failed: Unsupported action type")}let{code:a,stdout:n}=await Ur.execvp("git",["log",`-${hDt}`,"--pretty=format:%s"],{cwd:t}),u=a===0?n.split(/\n/g).filter(h=>h!==""):[],A=GG(u);return YG(A,r)}var dDt={[0]:[" A ","?? "],[4]:[" M "],[1]:[" D "]},mDt={[0]:["A "],[4]:["M "],[1]:["D "]},HBe={async findRoot(t){return await HG(t,{marker:".git"})},async filterChanges(t,e,r,o){let{stdout:a}=await Ur.execvp("git",["status","-s"],{cwd:t,strict:!0}),n=a.toString().split(/\n/g),u=o?.staged?mDt:dDt;return[].concat(...n.map(p=>{if(p==="")return[];let h=p.slice(0,3),C=V.resolve(t,p.slice(3));if(!o?.staged&&h==="?? "&&p.endsWith("/"))return qG(C).map(I=>({action:0,path:I}));{let v=[0,4,1].find(x=>u[x].includes(h));return v!==void 0?[{action:v,path:C}]:[]}})).filter(p=>jG(p.path,{roots:e,names:r}))},async genCommitMessage(t,e){return await gDt(t,e)},async makeStage(t,e){let r=e.map(o=>ue.fromPortablePath(o.path));await Ur.execvp("git",["add","--",...r],{cwd:t,strict:!0})},async makeCommit(t,e,r){let o=e.map(a=>ue.fromPortablePath(a.path));await Ur.execvp("git",["add","-N","--",...o],{cwd:t,strict:!0}),await Ur.execvp("git",["commit","-m",`${r} + +${pDt} +`,"--",...o],{cwd:t,strict:!0})},async makeReset(t,e){let r=e.map(o=>ue.fromPortablePath(o.path));await Ur.execvp("git",["reset","HEAD","--",...r],{cwd:t,strict:!0})}};var yDt=[HBe],X0=class extends ut{constructor(){super(...arguments);this.commit=ge.Boolean("-c,--commit",!1,{description:"Commit the staged files"});this.reset=ge.Boolean("-r,--reset",!1,{description:"Remove all files from the staging area"});this.dryRun=ge.Boolean("-n,--dry-run",!1,{description:"Print the commit message and the list of modified files without staging / committing"});this.update=ge.Boolean("-u,--update",!1,{hidden:!0})}async execute(){let r=await Ke.find(this.context.cwd,this.context.plugins),{project:o}=await St.find(r,this.context.cwd),{driver:a,root:n}=await EDt(o.cwd),u=[r.get("cacheFolder"),r.get("globalFolder"),r.get("virtualFolder"),r.get("yarnPath")];await r.triggerHook(I=>I.populateYarnPaths,o,I=>{u.push(I)});let A=new Set;for(let I of u)for(let v of CDt(n,I))A.add(v);let p=new Set([r.get("rcFilename"),dr.lockfile,dr.manifest]),h=await a.filterChanges(n,A,p),C=await a.genCommitMessage(n,h);if(this.dryRun)if(this.commit)this.context.stdout.write(`${C} +`);else for(let I of h)this.context.stdout.write(`${ue.fromPortablePath(I.path)} +`);else if(this.reset){let I=await a.filterChanges(n,A,p,{staged:!0});I.length===0?this.context.stdout.write("No staged changes found!"):await a.makeReset(n,I)}else h.length===0?this.context.stdout.write("No changes found!"):this.commit?await a.makeCommit(n,h,C):(await a.makeStage(n,h),this.context.stdout.write(C))}};X0.paths=[["stage"]],X0.usage=nt.Usage({description:"add all yarn files to your vcs",details:"\n This command will add to your staging area the files belonging to Yarn (typically any modified `package.json` and `.yarnrc.yml` files, but also linker-generated files, cache data, etc). It will take your ignore list into account, so the cache files won't be added if the cache is ignored in a `.gitignore` file (assuming you use Git).\n\n Running `--reset` will instead remove them from the staging area (the changes will still be there, but won't be committed until you stage them back).\n\n Since the staging area is a non-existent concept in Mercurial, Yarn will always create a new commit when running this command on Mercurial repositories. You can get this behavior when using Git by using the `--commit` flag which will directly create a commit.\n ",examples:[["Adds all modified project files to the staging area","yarn stage"],["Creates a new commit containing all modified project files","yarn stage --commit"]]});async function EDt(t){let e=null,r=null;for(let o of yDt)if((r=await o.findRoot(t))!==null){e=o;break}if(e===null||r===null)throw new it("No stage driver has been found for your current project");return{driver:e,root:r}}function CDt(t,e){let r=[];if(e===null)return r;for(;;){(e===t||e.startsWith(`${t}/`))&&r.push(e);let o;try{o=oe.statSync(e)}catch{break}if(o.isSymbolicLink())e=V.resolve(V.dirname(e),oe.readlinkSync(e));else break}return r}var wDt={commands:[X0]},IDt=wDt;var KG={};Vt(KG,{default:()=>kDt});Ye();Ye();Pt();var GBe=$e(Jn());Ye();var jBe=$e(ZH()),BDt="e8e1bd300d860104bb8c58453ffa1eb4",vDt="OFCNCOG2CU",qBe=async(t,e)=>{let r=W.stringifyIdent(t),a=DDt(e).initIndex("npm-search");try{return(await a.getObject(r,{attributesToRetrieve:["types"]})).types?.ts==="definitely-typed"}catch{return!1}},DDt=t=>(0,jBe.default)(vDt,BDt,{requester:{async send(r){try{let o=await rn.request(r.url,r.data||null,{configuration:t,headers:r.headers});return{content:o.body,isTimedOut:!1,status:o.statusCode}}catch(o){return{content:o.response.body,isTimedOut:!1,status:o.response.statusCode}}}}});var YBe=t=>t.scope?`${t.scope}__${t.name}`:`${t.name}`,PDt=async(t,e,r,o)=>{if(r.scope==="types")return;let{project:a}=t,{configuration:n}=a;if(!(n.get("tsEnableAutoTypes")??oe.existsSync(V.join(a.cwd,"tsconfig.json"))))return;let A=n.makeResolver(),p={project:a,resolver:A,report:new Qi};if(!await qBe(r,n))return;let C=YBe(r),I=W.parseRange(r.range).selector;if(!kr.validRange(I)){let L=n.normalizeDependency(r),U=await A.getCandidates(L,{},p);I=W.parseRange(U[0].reference).selector}let v=GBe.default.coerce(I);if(v===null)return;let x=`${Jc.Modifier.CARET}${v.major}`,E=W.makeDescriptor(W.makeIdent("types",C),x),R=je.mapAndFind(a.workspaces,L=>{let U=L.manifest.dependencies.get(r.identHash)?.descriptorHash,z=L.manifest.devDependencies.get(r.identHash)?.descriptorHash;if(U!==r.descriptorHash&&z!==r.descriptorHash)return je.mapAndFind.skip;let te=[];for(let le of Ot.allDependencies){let he=L.manifest[le].get(E.identHash);typeof he>"u"||te.push([le,he])}return te.length===0?je.mapAndFind.skip:te});if(typeof R<"u")for(let[L,U]of R)t.manifest[L].set(U.identHash,U);else{try{let L=n.normalizeDependency(E);if((await A.getCandidates(L,{},p)).length===0)return}catch{return}t.manifest[Jc.Target.DEVELOPMENT].set(E.identHash,E)}},SDt=async(t,e,r)=>{if(r.scope==="types")return;let{project:o}=t,{configuration:a}=o;if(!(a.get("tsEnableAutoTypes")??oe.existsSync(V.join(o.cwd,"tsconfig.json"))))return;let u=YBe(r),A=W.makeIdent("types",u);for(let p of Ot.allDependencies)typeof t.manifest[p].get(A.identHash)>"u"||t.manifest[p].delete(A.identHash)},bDt=(t,e)=>{e.publishConfig&&e.publishConfig.typings&&(e.typings=e.publishConfig.typings),e.publishConfig&&e.publishConfig.types&&(e.types=e.publishConfig.types)},xDt={configuration:{tsEnableAutoTypes:{description:"Whether Yarn should auto-install @types/ dependencies on 'yarn add'",type:"BOOLEAN",isNullable:!0,default:null}},hooks:{afterWorkspaceDependencyAddition:PDt,afterWorkspaceDependencyRemoval:SDt,beforeWorkspacePacking:bDt}},kDt=xDt;var ZG={};Vt(ZG,{VersionApplyCommand:()=>Z0,VersionCheckCommand:()=>$0,VersionCommand:()=>eg,default:()=>zDt,versionUtils:()=>hw});Ye();Ye();qt();var hw={};Vt(hw,{Decision:()=>fw,applyPrerelease:()=>XBe,applyReleases:()=>XG,applyStrategy:()=>uF,clearVersionFiles:()=>VG,getUndecidedDependentWorkspaces:()=>qv,getUndecidedWorkspaces:()=>cF,openVersionFile:()=>pw,requireMoreDecisions:()=>WDt,resolveVersionFiles:()=>jv,suggestStrategy:()=>JG,updateVersionFiles:()=>zG,validateReleaseDecision:()=>Aw});Ye();Pt();Nl();qt();var JBe=$e(zBe()),BA=$e(Jn()),YDt=/^(>=|[~^]|)(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(-(0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(\.(0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*)?(\+[0-9a-zA-Z-]+(\.[0-9a-zA-Z-]+)*)?$/,fw=(u=>(u.UNDECIDED="undecided",u.DECLINE="decline",u.MAJOR="major",u.MINOR="minor",u.PATCH="patch",u.PRERELEASE="prerelease",u))(fw||{});function Aw(t){let e=BA.default.valid(t);return e||je.validateEnum((0,JBe.default)(fw,"UNDECIDED"),t)}async function jv(t,{prerelease:e=null}={}){let r=new Map,o=t.configuration.get("deferredVersionFolder");if(!oe.existsSync(o))return r;let a=await oe.readdirPromise(o);for(let n of a){if(!n.endsWith(".yml"))continue;let u=V.join(o,n),A=await oe.readFilePromise(u,"utf8"),p=Ki(A);for(let[h,C]of Object.entries(p.releases||{})){if(C==="decline")continue;let I=W.parseIdent(h),v=t.tryWorkspaceByIdent(I);if(v===null)throw new Error(`Assertion failed: Expected a release definition file to only reference existing workspaces (${V.basename(u)} references ${h})`);if(v.manifest.version===null)throw new Error(`Assertion failed: Expected the workspace to have a version (${W.prettyLocator(t.configuration,v.anchoredLocator)})`);let x=v.manifest.raw.stableVersion??v.manifest.version,E=r.get(v),R=uF(x,Aw(C));if(R===null)throw new Error(`Assertion failed: Expected ${x} to support being bumped via strategy ${C}`);let L=typeof E<"u"?BA.default.gt(R,E)?R:E:R;r.set(v,L)}}return e&&(r=new Map([...r].map(([n,u])=>[n,XBe(u,{current:n.manifest.version,prerelease:e})]))),r}async function VG(t){let e=t.configuration.get("deferredVersionFolder");!oe.existsSync(e)||await oe.removePromise(e)}async function zG(t,e){let r=new Set(e),o=t.configuration.get("deferredVersionFolder");if(!oe.existsSync(o))return;let a=await oe.readdirPromise(o);for(let n of a){if(!n.endsWith(".yml"))continue;let u=V.join(o,n),A=await oe.readFilePromise(u,"utf8"),p=Ki(A),h=p?.releases;if(!!h){for(let C of Object.keys(h)){let I=W.parseIdent(C),v=t.tryWorkspaceByIdent(I);(v===null||r.has(v))&&delete p.releases[C]}Object.keys(p.releases).length>0?await oe.changeFilePromise(u,Ba(new Ba.PreserveOrdering(p))):await oe.unlinkPromise(u)}}}async function pw(t,{allowEmpty:e=!1}={}){let r=t.configuration;if(r.projectCwd===null)throw new it("This command can only be run from within a Yarn project");let o=await ra.fetchRoot(r.projectCwd),a=o!==null?await ra.fetchBase(o,{baseRefs:r.get("changesetBaseRefs")}):null,n=o!==null?await ra.fetchChangedFiles(o,{base:a.hash,project:t}):[],u=r.get("deferredVersionFolder"),A=n.filter(x=>V.contains(u,x)!==null);if(A.length>1)throw new it(`Your current branch contains multiple versioning files; this isn't supported: +- ${A.map(x=>ue.fromPortablePath(x)).join(` +- `)}`);let p=new Set(je.mapAndFilter(n,x=>{let E=t.tryWorkspaceByFilePath(x);return E===null?je.mapAndFilter.skip:E}));if(A.length===0&&p.size===0&&!e)return null;let h=A.length===1?A[0]:V.join(u,`${wn.makeHash(Math.random().toString()).slice(0,8)}.yml`),C=oe.existsSync(h)?await oe.readFilePromise(h,"utf8"):"{}",I=Ki(C),v=new Map;for(let x of I.declined||[]){let E=W.parseIdent(x),R=t.getWorkspaceByIdent(E);v.set(R,"decline")}for(let[x,E]of Object.entries(I.releases||{})){let R=W.parseIdent(x),L=t.getWorkspaceByIdent(R);v.set(L,Aw(E))}return{project:t,root:o,baseHash:a!==null?a.hash:null,baseTitle:a!==null?a.title:null,changedFiles:new Set(n),changedWorkspaces:p,releaseRoots:new Set([...p].filter(x=>x.manifest.version!==null)),releases:v,async saveAll(){let x={},E=[],R=[];for(let L of t.workspaces){if(L.manifest.version===null)continue;let U=W.stringifyIdent(L.anchoredLocator),z=v.get(L);z==="decline"?E.push(U):typeof z<"u"?x[U]=Aw(z):p.has(L)&&R.push(U)}await oe.mkdirPromise(V.dirname(h),{recursive:!0}),await oe.changeFilePromise(h,Ba(new Ba.PreserveOrdering({releases:Object.keys(x).length>0?x:void 0,declined:E.length>0?E:void 0,undecided:R.length>0?R:void 0})))}}}function WDt(t){return cF(t).size>0||qv(t).length>0}function cF(t){let e=new Set;for(let r of t.changedWorkspaces)r.manifest.version!==null&&(t.releases.has(r)||e.add(r));return e}function qv(t,{include:e=new Set}={}){let r=[],o=new Map(je.mapAndFilter([...t.releases],([n,u])=>u==="decline"?je.mapAndFilter.skip:[n.anchoredLocator.locatorHash,n])),a=new Map(je.mapAndFilter([...t.releases],([n,u])=>u!=="decline"?je.mapAndFilter.skip:[n.anchoredLocator.locatorHash,n]));for(let n of t.project.workspaces)if(!(!e.has(n)&&(a.has(n.anchoredLocator.locatorHash)||o.has(n.anchoredLocator.locatorHash)))&&n.manifest.version!==null)for(let u of Ot.hardDependencies)for(let A of n.manifest.getForScope(u).values()){let p=t.project.tryWorkspaceByDescriptor(A);p!==null&&o.has(p.anchoredLocator.locatorHash)&&r.push([n,p])}return r}function JG(t,e){let r=BA.default.clean(e);for(let o of Object.values(fw))if(o!=="undecided"&&o!=="decline"&&BA.default.inc(t,o)===r)return o;return null}function uF(t,e){if(BA.default.valid(e))return e;if(t===null)throw new it(`Cannot apply the release strategy "${e}" unless the workspace already has a valid version`);if(!BA.default.valid(t))throw new it(`Cannot apply the release strategy "${e}" on a non-semver version (${t})`);let r=BA.default.inc(t,e);if(r===null)throw new it(`Cannot apply the release strategy "${e}" on the specified version (${t})`);return r}function XG(t,e,{report:r}){let o=new Map;for(let a of t.workspaces)for(let n of Ot.allDependencies)for(let u of a.manifest[n].values()){let A=t.tryWorkspaceByDescriptor(u);if(A===null||!e.has(A))continue;je.getArrayWithDefault(o,A).push([a,n,u.identHash])}for(let[a,n]of e){let u=a.manifest.version;a.manifest.version=n,BA.default.prerelease(n)===null?delete a.manifest.raw.stableVersion:a.manifest.raw.stableVersion||(a.manifest.raw.stableVersion=u);let A=a.manifest.name!==null?W.stringifyIdent(a.manifest.name):null;r.reportInfo(0,`${W.prettyLocator(t.configuration,a.anchoredLocator)}: Bumped to ${n}`),r.reportJson({cwd:ue.fromPortablePath(a.cwd),ident:A,oldVersion:u,newVersion:n});let p=o.get(a);if(!(typeof p>"u"))for(let[h,C,I]of p){let v=h.manifest[C].get(I);if(typeof v>"u")throw new Error("Assertion failed: The dependency should have existed");let x=v.range,E=!1;if(x.startsWith(Xn.protocol)&&(x=x.slice(Xn.protocol.length),E=!0,x===a.relativeCwd))continue;let R=x.match(YDt);if(!R){r.reportWarning(0,`Couldn't auto-upgrade range ${x} (in ${W.prettyLocator(t.configuration,h.anchoredLocator)})`);continue}let L=`${R[1]}${n}`;E&&(L=`${Xn.protocol}${L}`);let U=W.makeDescriptor(v,L);h.manifest[C].set(I,U)}}}var KDt=new Map([["%n",{extract:t=>t.length>=1?[t[0],t.slice(1)]:null,generate:(t=0)=>`${t+1}`}]]);function XBe(t,{current:e,prerelease:r}){let o=new BA.default.SemVer(e),a=o.prerelease.slice(),n=[];o.prerelease=[],o.format()!==t&&(a.length=0);let u=!0,A=r.split(/\./g);for(let p of A){let h=KDt.get(p);if(typeof h>"u")n.push(p),a[0]===p?a.shift():u=!1;else{let C=u?h.extract(a):null;C!==null&&typeof C[0]=="number"?(n.push(h.generate(C[0])),a=C[1]):(n.push(h.generate()),u=!1)}}return o.prerelease&&(o.prerelease=[]),`${t}-${n.join(".")}`}var Z0=class extends ut{constructor(){super(...arguments);this.all=ge.Boolean("--all",!1,{description:"Apply the deferred version changes on all workspaces"});this.dryRun=ge.Boolean("--dry-run",!1,{description:"Print the versions without actually generating the package archive"});this.prerelease=ge.String("--prerelease",{description:"Add a prerelease identifier to new versions",tolerateBoolean:!0});this.recursive=ge.Boolean("-R,--recursive",{description:"Release the transitive workspaces as well"});this.json=ge.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"})}async execute(){let r=await Ke.find(this.context.cwd,this.context.plugins),{project:o,workspace:a}=await St.find(r,this.context.cwd),n=await Lr.find(r);if(!a)throw new rr(o.cwd,this.context.cwd);await o.restoreInstallState({restoreResolutions:!1});let u=await Nt.start({configuration:r,json:this.json,stdout:this.context.stdout},async A=>{let p=this.prerelease?typeof this.prerelease!="boolean"?this.prerelease:"rc.%n":null,h=await jv(o,{prerelease:p}),C=new Map;if(this.all)C=h;else{let I=this.recursive?a.getRecursiveWorkspaceDependencies():[a];for(let v of I){let x=h.get(v);typeof x<"u"&&C.set(v,x)}}if(C.size===0){let I=h.size>0?" Did you want to add --all?":"";A.reportWarning(0,`The current workspace doesn't seem to require a version bump.${I}`);return}XG(o,C,{report:A}),this.dryRun||(p||(this.all?await VG(o):await zG(o,[...C.keys()])),A.reportSeparator())});return u.hasErrors()?u.exitCode():await o.installWithNewReport({json:this.json,stdout:this.context.stdout},{cache:n})}};Z0.paths=[["version","apply"]],Z0.usage=nt.Usage({category:"Release-related commands",description:"apply all the deferred version bumps at once",details:` + This command will apply the deferred version changes and remove their definitions from the repository. + + Note that if \`--prerelease\` is set, the given prerelease identifier (by default \`rc.%d\`) will be used on all new versions and the version definitions will be kept as-is. + + By default only the current workspace will be bumped, but you can configure this behavior by using one of: + + - \`--recursive\` to also apply the version bump on its dependencies + - \`--all\` to apply the version bump on all packages in the repository + + Note that this command will also update the \`workspace:\` references across all your local workspaces, thus ensuring that they keep referring to the same workspaces even after the version bump. + `,examples:[["Apply the version change to the local workspace","yarn version apply"],["Apply the version change to all the workspaces in the local workspace","yarn version apply --all"]]});Ye();Pt();qt();var AF=$e(Jn());var $0=class extends ut{constructor(){super(...arguments);this.interactive=ge.Boolean("-i,--interactive",{description:"Open an interactive interface used to set version bumps"})}async execute(){return this.interactive?await this.executeInteractive():await this.executeStandard()}async executeInteractive(){PC(this.context);let{Gem:r}=await Promise.resolve().then(()=>(AQ(),Dj)),{ScrollableItems:o}=await Promise.resolve().then(()=>(gQ(),hQ)),{FocusRequest:a}=await Promise.resolve().then(()=>(Sj(),Xwe)),{useListInput:n}=await Promise.resolve().then(()=>(pQ(),Zwe)),{renderForm:u}=await Promise.resolve().then(()=>(EQ(),yQ)),{Box:A,Text:p}=await Promise.resolve().then(()=>$e(ic())),{default:h,useCallback:C,useState:I}=await Promise.resolve().then(()=>$e(sn())),v=await Ke.find(this.context.cwd,this.context.plugins),{project:x,workspace:E}=await St.find(v,this.context.cwd);if(!E)throw new rr(x.cwd,this.context.cwd);await x.restoreInstallState();let R=await pw(x);if(R===null||R.releaseRoots.size===0)return 0;if(R.root===null)throw new it("This command can only be run on Git repositories");let L=()=>h.createElement(A,{flexDirection:"row",paddingBottom:1},h.createElement(A,{flexDirection:"column",width:60},h.createElement(A,null,h.createElement(p,null,"Press ",h.createElement(p,{bold:!0,color:"cyanBright"},""),"/",h.createElement(p,{bold:!0,color:"cyanBright"},"")," to select workspaces.")),h.createElement(A,null,h.createElement(p,null,"Press ",h.createElement(p,{bold:!0,color:"cyanBright"},""),"/",h.createElement(p,{bold:!0,color:"cyanBright"},"")," to select release strategies."))),h.createElement(A,{flexDirection:"column"},h.createElement(A,{marginLeft:1},h.createElement(p,null,"Press ",h.createElement(p,{bold:!0,color:"cyanBright"},"")," to save.")),h.createElement(A,{marginLeft:1},h.createElement(p,null,"Press ",h.createElement(p,{bold:!0,color:"cyanBright"},"")," to abort.")))),U=({workspace:ye,active:ae,decision:Ie,setDecision:Fe})=>{let g=ye.manifest.raw.stableVersion??ye.manifest.version;if(g===null)throw new Error(`Assertion failed: The version should have been set (${W.prettyLocator(v,ye.anchoredLocator)})`);if(AF.default.prerelease(g)!==null)throw new Error(`Assertion failed: Prerelease identifiers shouldn't be found (${g})`);let Ee=["undecided","decline","patch","minor","major"];n(Ie,Ee,{active:ae,minus:"left",plus:"right",set:Fe});let De=Ie==="undecided"?h.createElement(p,{color:"yellow"},g):Ie==="decline"?h.createElement(p,{color:"green"},g):h.createElement(p,null,h.createElement(p,{color:"magenta"},g)," \u2192 ",h.createElement(p,{color:"green"},AF.default.valid(Ie)?Ie:AF.default.inc(g,Ie)));return h.createElement(A,{flexDirection:"column"},h.createElement(A,null,h.createElement(p,null,W.prettyLocator(v,ye.anchoredLocator)," - ",De)),h.createElement(A,null,Ee.map(ce=>h.createElement(A,{key:ce,paddingLeft:2},h.createElement(p,null,h.createElement(r,{active:ce===Ie})," ",ce)))))},z=ye=>{let ae=new Set(R.releaseRoots),Ie=new Map([...ye].filter(([Fe])=>ae.has(Fe)));for(;;){let Fe=qv({project:R.project,releases:Ie}),g=!1;if(Fe.length>0){for(let[Ee]of Fe)if(!ae.has(Ee)){ae.add(Ee),g=!0;let De=ye.get(Ee);typeof De<"u"&&Ie.set(Ee,De)}}if(!g)break}return{relevantWorkspaces:ae,relevantReleases:Ie}},te=()=>{let[ye,ae]=I(()=>new Map(R.releases)),Ie=C((Fe,g)=>{let Ee=new Map(ye);g!=="undecided"?Ee.set(Fe,g):Ee.delete(Fe);let{relevantReleases:De}=z(Ee);ae(De)},[ye,ae]);return[ye,Ie]},le=({workspaces:ye,releases:ae})=>{let Ie=[];Ie.push(`${ye.size} total`);let Fe=0,g=0;for(let Ee of ye){let De=ae.get(Ee);typeof De>"u"?g+=1:De!=="decline"&&(Fe+=1)}return Ie.push(`${Fe} release${Fe===1?"":"s"}`),Ie.push(`${g} remaining`),h.createElement(p,{color:"yellow"},Ie.join(", "))},Ae=await u(({useSubmit:ye})=>{let[ae,Ie]=te();ye(ae);let{relevantWorkspaces:Fe}=z(ae),g=new Set([...Fe].filter(ne=>!R.releaseRoots.has(ne))),[Ee,De]=I(0),ce=C(ne=>{switch(ne){case a.BEFORE:De(Ee-1);break;case a.AFTER:De(Ee+1);break}},[Ee,De]);return h.createElement(A,{flexDirection:"column"},h.createElement(L,null),h.createElement(A,null,h.createElement(p,{wrap:"wrap"},"The following files have been modified in your local checkout.")),h.createElement(A,{flexDirection:"column",marginTop:1,paddingLeft:2},[...R.changedFiles].map(ne=>h.createElement(A,{key:ne},h.createElement(p,null,h.createElement(p,{color:"grey"},ue.fromPortablePath(R.root)),ue.sep,ue.relative(ue.fromPortablePath(R.root),ue.fromPortablePath(ne)))))),R.releaseRoots.size>0&&h.createElement(h.Fragment,null,h.createElement(A,{marginTop:1},h.createElement(p,{wrap:"wrap"},"Because of those files having been modified, the following workspaces may need to be released again (note that private workspaces are also shown here, because even though they won't be published, releasing them will allow us to flag their dependents for potential re-release):")),g.size>3?h.createElement(A,{marginTop:1},h.createElement(le,{workspaces:R.releaseRoots,releases:ae})):null,h.createElement(A,{marginTop:1,flexDirection:"column"},h.createElement(o,{active:Ee%2===0,radius:1,size:2,onFocusRequest:ce},[...R.releaseRoots].map(ne=>h.createElement(U,{key:ne.cwd,workspace:ne,decision:ae.get(ne)||"undecided",setDecision:ee=>Ie(ne,ee)}))))),g.size>0?h.createElement(h.Fragment,null,h.createElement(A,{marginTop:1},h.createElement(p,{wrap:"wrap"},"The following workspaces depend on other workspaces that have been marked for release, and thus may need to be released as well:")),h.createElement(A,null,h.createElement(p,null,"(Press ",h.createElement(p,{bold:!0,color:"cyanBright"},"")," to move the focus between the workspace groups.)")),g.size>5?h.createElement(A,{marginTop:1},h.createElement(le,{workspaces:g,releases:ae})):null,h.createElement(A,{marginTop:1,flexDirection:"column"},h.createElement(o,{active:Ee%2===1,radius:2,size:2,onFocusRequest:ce},[...g].map(ne=>h.createElement(U,{key:ne.cwd,workspace:ne,decision:ae.get(ne)||"undecided",setDecision:ee=>Ie(ne,ee)}))))):null)},{versionFile:R},{stdin:this.context.stdin,stdout:this.context.stdout,stderr:this.context.stderr});if(typeof Ae>"u")return 1;R.releases.clear();for(let[ye,ae]of Ae)R.releases.set(ye,ae);await R.saveAll()}async executeStandard(){let r=await Ke.find(this.context.cwd,this.context.plugins),{project:o,workspace:a}=await St.find(r,this.context.cwd);if(!a)throw new rr(o.cwd,this.context.cwd);return await o.restoreInstallState(),(await Nt.start({configuration:r,stdout:this.context.stdout},async u=>{let A=await pw(o);if(A===null||A.releaseRoots.size===0)return;if(A.root===null)throw new it("This command can only be run on Git repositories");if(u.reportInfo(0,`Your PR was started right after ${de.pretty(r,A.baseHash.slice(0,7),"yellow")} ${de.pretty(r,A.baseTitle,"magenta")}`),A.changedFiles.size>0){u.reportInfo(0,"You have changed the following files since then:"),u.reportSeparator();for(let v of A.changedFiles)u.reportInfo(null,`${de.pretty(r,ue.fromPortablePath(A.root),"gray")}${ue.sep}${ue.relative(ue.fromPortablePath(A.root),ue.fromPortablePath(v))}`)}let p=!1,h=!1,C=cF(A);if(C.size>0){p||u.reportSeparator();for(let v of C)u.reportError(0,`${W.prettyLocator(r,v.anchoredLocator)} has been modified but doesn't have a release strategy attached`);p=!0}let I=qv(A);for(let[v,x]of I)h||u.reportSeparator(),u.reportError(0,`${W.prettyLocator(r,v.anchoredLocator)} doesn't have a release strategy attached, but depends on ${W.prettyWorkspace(r,x)} which is planned for release.`),h=!0;(p||h)&&(u.reportSeparator(),u.reportInfo(0,"This command detected that at least some workspaces have received modifications without explicit instructions as to how they had to be released (if needed)."),u.reportInfo(0,"To correct these errors, run `yarn version check --interactive` then follow the instructions."))})).exitCode()}};$0.paths=[["version","check"]],$0.usage=nt.Usage({category:"Release-related commands",description:"check that all the relevant packages have been bumped",details:"\n **Warning:** This command currently requires Git.\n\n This command will check that all the packages covered by the files listed in argument have been properly bumped or declined to bump.\n\n In the case of a bump, the check will also cover transitive packages - meaning that should `Foo` be bumped, a package `Bar` depending on `Foo` will require a decision as to whether `Bar` will need to be bumped. This check doesn't cross packages that have declined to bump.\n\n In case no arguments are passed to the function, the list of modified files will be generated by comparing the HEAD against `master`.\n ",examples:[["Check whether the modified packages need a bump","yarn version check"]]});Ye();qt();var fF=$e(Jn());var eg=class extends ut{constructor(){super(...arguments);this.deferred=ge.Boolean("-d,--deferred",{description:"Prepare the version to be bumped during the next release cycle"});this.immediate=ge.Boolean("-i,--immediate",{description:"Bump the version immediately"});this.strategy=ge.String()}async execute(){let r=await Ke.find(this.context.cwd,this.context.plugins),{project:o,workspace:a}=await St.find(r,this.context.cwd);if(!a)throw new rr(o.cwd,this.context.cwd);let n=r.get("preferDeferredVersions");this.deferred&&(n=!0),this.immediate&&(n=!1);let u=fF.default.valid(this.strategy),A=this.strategy==="decline",p;if(u)if(a.manifest.version!==null){let C=JG(a.manifest.version,this.strategy);C!==null?p=C:p=this.strategy}else p=this.strategy;else{let C=a.manifest.version;if(!A){if(C===null)throw new it("Can't bump the version if there wasn't a version to begin with - use 0.0.0 as initial version then run the command again.");if(typeof C!="string"||!fF.default.valid(C))throw new it(`Can't bump the version (${C}) if it's not valid semver`)}p=Aw(this.strategy)}if(!n){let I=(await jv(o)).get(a);if(typeof I<"u"&&p!=="decline"){let v=uF(a.manifest.version,p);if(fF.default.lt(v,I))throw new it(`Can't bump the version to one that would be lower than the current deferred one (${I})`)}}let h=await pw(o,{allowEmpty:!0});return h.releases.set(a,p),await h.saveAll(),n?0:await this.cli.run(["version","apply"])}};eg.paths=[["version"]],eg.usage=nt.Usage({category:"Release-related commands",description:"apply a new version to the current package",details:"\n This command will bump the version number for the given package, following the specified strategy:\n\n - If `major`, the first number from the semver range will be increased (`X.0.0`).\n - If `minor`, the second number from the semver range will be increased (`0.X.0`).\n - If `patch`, the third number from the semver range will be increased (`0.0.X`).\n - If prefixed by `pre` (`premajor`, ...), a `-0` suffix will be set (`0.0.0-0`).\n - If `prerelease`, the suffix will be increased (`0.0.0-X`); the third number from the semver range will also be increased if there was no suffix in the previous version.\n - If `decline`, the nonce will be increased for `yarn version check` to pass without version bump.\n - If a valid semver range, it will be used as new version.\n - If unspecified, Yarn will ask you for guidance.\n\n For more information about the `--deferred` flag, consult our documentation (https://yarnpkg.com/features/release-workflow#deferred-versioning).\n ",examples:[["Immediately bump the version to the next major","yarn version major"],["Prepare the version to be bumped to the next major","yarn version major --deferred"]]});var VDt={configuration:{deferredVersionFolder:{description:"Folder where are stored the versioning files",type:"ABSOLUTE_PATH",default:"./.yarn/versions"},preferDeferredVersions:{description:"If true, running `yarn version` will assume the `--deferred` flag unless `--immediate` is set",type:"BOOLEAN",default:!1}},commands:[Z0,$0,eg]},zDt=VDt;var $G={};Vt($G,{WorkspacesFocusCommand:()=>tg,WorkspacesForeachCommand:()=>sp,default:()=>ZDt});Ye();Ye();qt();var tg=class extends ut{constructor(){super(...arguments);this.json=ge.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"});this.production=ge.Boolean("--production",!1,{description:"Only install regular dependencies by omitting dev dependencies"});this.all=ge.Boolean("-A,--all",!1,{description:"Install the entire project"});this.workspaces=ge.Rest()}async execute(){let r=await Ke.find(this.context.cwd,this.context.plugins),{project:o,workspace:a}=await St.find(r,this.context.cwd),n=await Lr.find(r);await o.restoreInstallState({restoreResolutions:!1});let u;if(this.all)u=new Set(o.workspaces);else if(this.workspaces.length===0){if(!a)throw new rr(o.cwd,this.context.cwd);u=new Set([a])}else u=new Set(this.workspaces.map(A=>o.getWorkspaceByIdent(W.parseIdent(A))));for(let A of u)for(let p of this.production?["dependencies"]:Ot.hardDependencies)for(let h of A.manifest.getForScope(p).values()){let C=o.tryWorkspaceByDescriptor(h);C!==null&&u.add(C)}for(let A of o.workspaces)u.has(A)?this.production&&A.manifest.devDependencies.clear():(A.manifest.installConfig=A.manifest.installConfig||{},A.manifest.installConfig.selfReferences=!1,A.manifest.dependencies.clear(),A.manifest.devDependencies.clear(),A.manifest.peerDependencies.clear(),A.manifest.scripts.clear());return await o.installWithNewReport({json:this.json,stdout:this.context.stdout},{cache:n,persistProject:!1})}};tg.paths=[["workspaces","focus"]],tg.usage=nt.Usage({category:"Workspace-related commands",description:"install a single workspace and its dependencies",details:"\n This command will run an install as if the specified workspaces (and all other workspaces they depend on) were the only ones in the project. If no workspaces are explicitly listed, the active one will be assumed.\n\n Note that this command is only very moderately useful when using zero-installs, since the cache will contain all the packages anyway - meaning that the only difference between a full install and a focused install would just be a few extra lines in the `.pnp.cjs` file, at the cost of introducing an extra complexity.\n\n If the `-A,--all` flag is set, the entire project will be installed. Combine with `--production` to replicate the old `yarn install --production`.\n "});Ye();Ye();Ye();qt();var gw=$e(Zo()),$Be=$e(rd());Za();var sp=class extends ut{constructor(){super(...arguments);this.from=ge.Array("--from",{description:"An array of glob pattern idents or paths from which to base any recursion"});this.all=ge.Boolean("-A,--all",{description:"Run the command on all workspaces of a project"});this.recursive=ge.Boolean("-R,--recursive",{description:"Run the command on the current workspace and all of its recursive dependencies"});this.worktree=ge.Boolean("-W,--worktree",{description:"Run the command on all workspaces of the current worktree"});this.verbose=ge.Boolean("-v,--verbose",{description:"Prefix each output line with the name of the originating workspace"});this.parallel=ge.Boolean("-p,--parallel",!1,{description:"Run the commands in parallel"});this.interlaced=ge.Boolean("-i,--interlaced",!1,{description:"Print the output of commands in real-time instead of buffering it"});this.jobs=ge.String("-j,--jobs",{description:"The maximum number of parallel tasks that the execution will be limited to; or `unlimited`",validator:LT([Ks(["unlimited"]),sI(NT(),[MT(),OT(1)])])});this.topological=ge.Boolean("-t,--topological",!1,{description:"Run the command after all workspaces it depends on (regular) have finished"});this.topologicalDev=ge.Boolean("--topological-dev",!1,{description:"Run the command after all workspaces it depends on (regular + dev) have finished"});this.include=ge.Array("--include",[],{description:"An array of glob pattern idents or paths; only matching workspaces will be traversed"});this.exclude=ge.Array("--exclude",[],{description:"An array of glob pattern idents or paths; matching workspaces won't be traversed"});this.publicOnly=ge.Boolean("--no-private",{description:"Avoid running the command on private workspaces"});this.since=ge.String("--since",{description:"Only include workspaces that have been changed since the specified ref.",tolerateBoolean:!0});this.dryRun=ge.Boolean("-n,--dry-run",{description:"Print the commands that would be run, without actually running them"});this.commandName=ge.String();this.args=ge.Proxy()}async execute(){let r=await Ke.find(this.context.cwd,this.context.plugins),{project:o,workspace:a}=await St.find(r,this.context.cwd);if(!this.all&&!a)throw new rr(o.cwd,this.context.cwd);await o.restoreInstallState();let n=this.cli.process([this.commandName,...this.args]),u=n.path.length===1&&n.path[0]==="run"&&typeof n.scriptName<"u"?n.scriptName:null;if(n.path.length===0)throw new it("Invalid subcommand name for iteration - use the 'run' keyword if you wish to execute a script");let A=ae=>{!this.dryRun||this.context.stdout.write(`${ae} +`)},p=()=>{let ae=this.from.map(Ie=>gw.default.matcher(Ie));return o.workspaces.filter(Ie=>{let Fe=W.stringifyIdent(Ie.anchoredLocator),g=Ie.relativeCwd;return ae.some(Ee=>Ee(Fe)||Ee(g))})},h=[];if(this.since?(A("Option --since is set; selecting the changed workspaces as root for workspace selection"),h=Array.from(await ra.fetchChangedWorkspaces({ref:this.since,project:o}))):this.from?(A("Option --from is set; selecting the specified workspaces"),h=[...p()]):this.worktree?(A("Option --worktree is set; selecting the current workspace"),h=[a]):this.recursive?(A("Option --recursive is set; selecting the current workspace"),h=[a]):this.all&&(A("Option --all is set; selecting all workspaces"),h=[...o.workspaces]),this.dryRun&&!this.all){for(let ae of h)A(` +- ${ae.relativeCwd} + ${W.prettyLocator(r,ae.anchoredLocator)}`);h.length>0&&A("")}let C;if(this.recursive?this.since?(A("Option --recursive --since is set; recursively selecting all dependent workspaces"),C=new Set(h.map(ae=>[...ae.getRecursiveWorkspaceDependents()]).flat())):(A("Option --recursive is set; recursively selecting all transitive dependencies"),C=new Set(h.map(ae=>[...ae.getRecursiveWorkspaceDependencies()]).flat())):this.worktree?(A("Option --worktree is set; recursively selecting all nested workspaces"),C=new Set(h.map(ae=>[...ae.getRecursiveWorkspaceChildren()]).flat())):C=null,C!==null&&(h=[...new Set([...h,...C])],this.dryRun))for(let ae of C)A(` +- ${ae.relativeCwd} + ${W.prettyLocator(r,ae.anchoredLocator)}`);let I=[],v=!1;if(u?.includes(":")){for(let ae of o.workspaces)if(ae.manifest.scripts.has(u)&&(v=!v,v===!1))break}for(let ae of h){if(u&&!ae.manifest.scripts.has(u)&&!v&&!(await un.getWorkspaceAccessibleBinaries(ae)).has(u)){A(`Excluding ${ae.relativeCwd} because it doesn't have a "${u}" script`);continue}if(!(u===r.env.npm_lifecycle_event&&ae.cwd===a.cwd)){if(this.include.length>0&&!gw.default.isMatch(W.stringifyIdent(ae.anchoredLocator),this.include)&&!gw.default.isMatch(ae.relativeCwd,this.include)){A(`Excluding ${ae.relativeCwd} because it doesn't match the --include filter`);continue}if(this.exclude.length>0&&(gw.default.isMatch(W.stringifyIdent(ae.anchoredLocator),this.exclude)||gw.default.isMatch(ae.relativeCwd,this.exclude))){A(`Excluding ${ae.relativeCwd} because it matches the --include filter`);continue}if(this.publicOnly&&ae.manifest.private===!0){A(`Excluding ${ae.relativeCwd} because it's a private workspace and --no-private was set`);continue}I.push(ae)}}if(this.dryRun)return 0;let x=this.verbose??this.context.stdout.isTTY,E=this.parallel?this.jobs==="unlimited"?1/0:Number(this.jobs)||Math.ceil(zi.availableParallelism()/2):1,R=E===1?!1:this.parallel,L=R?this.interlaced:!0,U=(0,$Be.default)(E),z=new Map,te=new Set,le=0,he=null,Ae=!1,ye=await Nt.start({configuration:r,stdout:this.context.stdout,includePrefix:!1},async ae=>{let Ie=async(Fe,{commandIndex:g})=>{if(Ae)return-1;!R&&x&&g>1&&ae.reportSeparator();let Ee=JDt(Fe,{configuration:r,verbose:x,commandIndex:g}),[De,ce]=ZBe(ae,{prefix:Ee,interlaced:L}),[ne,ee]=ZBe(ae,{prefix:Ee,interlaced:L});try{x&&ae.reportInfo(null,`${Ee} Process started`);let we=Date.now(),xe=await this.cli.run([this.commandName,...this.args],{cwd:Fe.cwd,stdout:De,stderr:ne})||0;De.end(),ne.end(),await ce,await ee;let ht=Date.now();if(x){let H=r.get("enableTimers")?`, completed in ${de.pretty(r,ht-we,de.Type.DURATION)}`:"";ae.reportInfo(null,`${Ee} Process exited (exit code ${xe})${H}`)}return xe===130&&(Ae=!0,he=xe),xe}catch(we){throw De.end(),ne.end(),await ce,await ee,we}};for(let Fe of I)z.set(Fe.anchoredLocator.locatorHash,Fe);for(;z.size>0&&!ae.hasErrors();){let Fe=[];for(let[De,ce]of z){if(te.has(ce.anchoredDescriptor.descriptorHash))continue;let ne=!0;if(this.topological||this.topologicalDev){let ee=this.topologicalDev?new Map([...ce.manifest.dependencies,...ce.manifest.devDependencies]):ce.manifest.dependencies;for(let we of ee.values()){let xe=o.tryWorkspaceByDescriptor(we);if(ne=xe===null||!z.has(xe.anchoredLocator.locatorHash),!ne)break}}if(!!ne&&(te.add(ce.anchoredDescriptor.descriptorHash),Fe.push(U(async()=>{let ee=await Ie(ce,{commandIndex:++le});return z.delete(De),te.delete(ce.anchoredDescriptor.descriptorHash),ee})),!R))break}if(Fe.length===0){let De=Array.from(z.values()).map(ce=>W.prettyLocator(r,ce.anchoredLocator)).join(", ");ae.reportError(3,`Dependency cycle detected (${De})`);return}let Ee=(await Promise.all(Fe)).find(De=>De!==0);he===null&&(he=typeof Ee<"u"?1:he),(this.topological||this.topologicalDev)&&typeof Ee<"u"&&ae.reportError(0,"The command failed for workspaces that are depended upon by other workspaces; can't satisfy the dependency graph")}});return he!==null?he:ye.exitCode()}};sp.paths=[["workspaces","foreach"]],sp.usage=nt.Usage({category:"Workspace-related commands",description:"run a command on all workspaces",details:"\n This command will run a given sub-command on current and all its descendant workspaces. Various flags can alter the exact behavior of the command:\n\n - If `-p,--parallel` is set, the commands will be ran in parallel; they'll by default be limited to a number of parallel tasks roughly equal to half your core number, but that can be overridden via `-j,--jobs`, or disabled by setting `-j unlimited`.\n\n - If `-p,--parallel` and `-i,--interlaced` are both set, Yarn will print the lines from the output as it receives them. If `-i,--interlaced` wasn't set, it would instead buffer the output from each process and print the resulting buffers only after their source processes have exited.\n\n - If `-t,--topological` is set, Yarn will only run the command after all workspaces that it depends on through the `dependencies` field have successfully finished executing. If `--topological-dev` is set, both the `dependencies` and `devDependencies` fields will be considered when figuring out the wait points.\n\n - If `-A,--all` is set, Yarn will run the command on all the workspaces of a project.\n\n - If `-R,--recursive` is set, Yarn will find workspaces to run the command on by recursively evaluating `dependencies` and `devDependencies` fields, instead of looking at the `workspaces` fields.\n\n - If `-W,--worktree` is set, Yarn will find workspaces to run the command on by looking at the current worktree.\n\n - If `--from` is set, Yarn will use the packages matching the 'from' glob as the starting point for any recursive search.\n\n - If `--since` is set, Yarn will only run the command on workspaces that have been modified since the specified ref. By default Yarn will use the refs specified by the `changesetBaseRefs` configuration option.\n\n - If `--dry-run` is set, Yarn will explain what it would do without actually doing anything.\n\n - The command may apply to only some workspaces through the use of `--include` which acts as a whitelist. The `--exclude` flag will do the opposite and will be a list of packages that mustn't execute the script. Both flags accept glob patterns (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 Adding the `-v,--verbose` flag (automatically enabled in interactive terminal environments) will cause Yarn to print more information; in particular the name of the workspace that generated the output will be printed at the front of each line.\n\n If the command is `run` and the script being run does not exist the child workspace will be skipped without error.\n ",examples:[["Publish all packages","yarn workspaces foreach -A npm publish --tolerate-republish"],["Run the build script on all descendant packages","yarn workspaces foreach -A run build"],["Run the build script on current and all descendant packages in parallel, building package dependencies first","yarn workspaces foreach -Apt run build"],["Run the build script on several packages and all their dependencies, building dependencies first","yarn workspaces foreach -Rpt --from '{workspace-a,workspace-b}' run build"]]}),sp.schema=[aI("all",Gu.Forbids,["from","recursive","since","worktree"],{missingIf:"undefined"}),UT(["all","recursive","since","worktree"],{missingIf:"undefined"})];function ZBe(t,{prefix:e,interlaced:r}){let o=t.createStreamReporter(e),a=new je.DefaultStream;a.pipe(o,{end:!1}),a.on("finish",()=>{o.end()});let n=new Promise(A=>{o.on("finish",()=>{A(a.active)})});if(r)return[a,n];let u=new je.BufferStream;return u.pipe(a,{end:!1}),u.on("finish",()=>{a.end()}),[u,n]}function JDt(t,{configuration:e,commandIndex:r,verbose:o}){if(!o)return null;let n=`[${W.stringifyIdent(t.anchoredLocator)}]:`,u=["#2E86AB","#A23B72","#F18F01","#C73E1D","#CCE2A3"],A=u[r%u.length];return de.pretty(e,n,A)}var XDt={commands:[tg,sp]},ZDt=XDt;var AC=()=>({modules:new Map([["@yarnpkg/cli",s2],["@yarnpkg/core",i2],["@yarnpkg/fslib",Ww],["@yarnpkg/libzip",S1],["@yarnpkg/parsers",eI],["@yarnpkg/shell",F1],["clipanion",fI],["semver",$Dt],["typanion",Vo],["@yarnpkg/plugin-essentials",tH],["@yarnpkg/plugin-compat",oH],["@yarnpkg/plugin-constraints",BH],["@yarnpkg/plugin-dlx",vH],["@yarnpkg/plugin-exec",SH],["@yarnpkg/plugin-file",xH],["@yarnpkg/plugin-git",eH],["@yarnpkg/plugin-github",FH],["@yarnpkg/plugin-http",RH],["@yarnpkg/plugin-init",TH],["@yarnpkg/plugin-interactive-tools",Lj],["@yarnpkg/plugin-link",Oj],["@yarnpkg/plugin-nm",wq],["@yarnpkg/plugin-npm",CG],["@yarnpkg/plugin-npm-cli",xG],["@yarnpkg/plugin-pack",gG],["@yarnpkg/plugin-patch",LG],["@yarnpkg/plugin-pnp",cq],["@yarnpkg/plugin-pnpm",UG],["@yarnpkg/plugin-stage",WG],["@yarnpkg/plugin-typescript",KG],["@yarnpkg/plugin-version",ZG],["@yarnpkg/plugin-workspace-tools",$G]]),plugins:new Set(["@yarnpkg/plugin-essentials","@yarnpkg/plugin-compat","@yarnpkg/plugin-constraints","@yarnpkg/plugin-dlx","@yarnpkg/plugin-exec","@yarnpkg/plugin-file","@yarnpkg/plugin-git","@yarnpkg/plugin-github","@yarnpkg/plugin-http","@yarnpkg/plugin-init","@yarnpkg/plugin-interactive-tools","@yarnpkg/plugin-link","@yarnpkg/plugin-nm","@yarnpkg/plugin-npm","@yarnpkg/plugin-npm-cli","@yarnpkg/plugin-pack","@yarnpkg/plugin-patch","@yarnpkg/plugin-pnp","@yarnpkg/plugin-pnpm","@yarnpkg/plugin-stage","@yarnpkg/plugin-typescript","@yarnpkg/plugin-version","@yarnpkg/plugin-workspace-tools"])});function rve({cwd:t,pluginConfiguration:e}){let r=new as({binaryLabel:"Yarn Package Manager",binaryName:"yarn",binaryVersion:tn??""});return Object.assign(r,{defaultContext:{...as.defaultContext,cwd:t,plugins:e,quiet:!1,stdin:process.stdin,stdout:process.stdout,stderr:process.stderr}})}function ePt(t){if(je.parseOptionalBoolean(process.env.YARN_IGNORE_NODE))return!0;let r=process.versions.node,o=">=18.12.0";if(kr.satisfiesWithPrereleases(r,o))return!0;let a=new it(`This tool requires a Node version compatible with ${o} (got ${r}). Upgrade Node, or set \`YARN_IGNORE_NODE=1\` in your environment.`);return as.defaultContext.stdout.write(t.error(a)),!1}async function nve({selfPath:t,pluginConfiguration:e}){return await Ke.find(ue.toPortablePath(process.cwd()),e,{strict:!1,usePathCheck:t})}function tPt(t,e,{yarnPath:r}){if(!oe.existsSync(r))return t.error(new Error(`The "yarn-path" option has been set, but the specified location doesn't exist (${r}).`)),1;process.on("SIGINT",()=>{});let o={stdio:"inherit",env:{...process.env,YARN_IGNORE_PATH:"1"}};try{(0,eve.execFileSync)(process.execPath,[ue.fromPortablePath(r),...e],o)}catch(a){return a.status??1}return 0}function rPt(t,e){let r=null,o=e;return e.length>=2&&e[0]==="--cwd"?(r=ue.toPortablePath(e[1]),o=e.slice(2)):e.length>=1&&e[0].startsWith("--cwd=")?(r=ue.toPortablePath(e[0].slice(6)),o=e.slice(1)):e[0]==="add"&&e[e.length-2]==="--cwd"&&(r=ue.toPortablePath(e[e.length-1]),o=e.slice(0,e.length-2)),t.defaultContext.cwd=r!==null?V.resolve(r):V.cwd(),o}function nPt(t,{configuration:e}){if(!e.get("enableTelemetry")||tve.isCI||!process.stdout.isTTY)return;Ke.telemetry=new lC(e,"puba9cdc10ec5790a2cf4969dd413a47270");let o=/^@yarnpkg\/plugin-(.*)$/;for(let a of e.plugins.keys())cC.has(a.match(o)?.[1]??"")&&Ke.telemetry?.reportPluginName(a);t.binaryVersion&&Ke.telemetry.reportVersion(t.binaryVersion)}function ive(t,{configuration:e}){for(let r of e.plugins.values())for(let o of r.commands||[])t.register(o)}async function iPt(t,e,{selfPath:r,pluginConfiguration:o}){if(!ePt(t))return 1;let a=await nve({selfPath:r,pluginConfiguration:o}),n=a.get("yarnPath"),u=a.get("ignorePath");if(n&&!u)return tPt(t,e,{yarnPath:n});delete process.env.YARN_IGNORE_PATH;let A=rPt(t,e);nPt(t,{configuration:a}),ive(t,{configuration:a});let p=t.process(A,t.defaultContext);return p.help||Ke.telemetry?.reportCommandName(p.path.join(" ")),await t.run(p,t.defaultContext)}async function rhe({cwd:t=V.cwd(),pluginConfiguration:e=AC()}={}){let r=rve({cwd:t,pluginConfiguration:e}),o=await nve({pluginConfiguration:e,selfPath:null});return ive(r,{configuration:o}),r}async function sk(t,{cwd:e=V.cwd(),selfPath:r,pluginConfiguration:o}){let a=rve({cwd:e,pluginConfiguration:o});try{process.exitCode=await iPt(a,t,{selfPath:r,pluginConfiguration:o})}catch(n){as.defaultContext.stdout.write(a.error(n)),process.exitCode=1}finally{await oe.rmtempPromise()}}sk(process.argv.slice(2),{cwd:V.cwd(),selfPath:ue.toPortablePath(ue.resolve(process.argv[1])),pluginConfiguration:AC()});})(); +/* +object-assign +(c) Sindre Sorhus +@license MIT +*/ +/*! + * buildToken + * Builds OAuth token prefix (helper function) + * + * @name buildToken + * @function + * @param {GitUrl} obj The parsed Git url object. + * @return {String} token prefix + */ +/*! + * fill-range + * + * Copyright (c) 2014-present, Jon Schlinkert. + * Licensed under the MIT License. + */ +/*! + * is-extglob + * + * Copyright (c) 2014-2016, Jon Schlinkert. + * Licensed under the MIT License. + */ +/*! + * is-glob + * + * Copyright (c) 2014-2017, Jon Schlinkert. + * Released under the MIT License. + */ +/*! + * is-number + * + * Copyright (c) 2014-present, Jon Schlinkert. + * Released under the MIT License. + */ +/*! + * is-windows + * + * Copyright © 2015-2018, Jon Schlinkert. + * Released under the MIT License. + */ +/*! + * to-regex-range + * + * Copyright (c) 2015-present, Jon Schlinkert. + * Released under the MIT License. + */ +/** + @license + Copyright (c) 2015, Rebecca Turner + + Permission to use, copy, modify, and/or distribute this software for any + purpose with or without fee is hereby granted, provided that the above + copyright notice and this permission notice appear in all copies. + + THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH + REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND + FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, + INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM + LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR + OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + PERFORMANCE OF THIS SOFTWARE. + */ +/** + @license + Copyright Joyent, Inc. and other Node contributors. + + 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. +*/ +/** + @license + Copyright Node.js contributors. All rights reserved. + + 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. +*/ +/** + @license + The MIT License (MIT) + + Copyright (c) 2014 Blake Embrey (hello@blakeembrey.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. +*/ +/** @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. + */ +/** @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. + */ diff --git a/.yarnrc.yml b/.yarnrc.yml new file mode 100644 index 00000000..ba871af4 --- /dev/null +++ b/.yarnrc.yml @@ -0,0 +1,7 @@ +compressionLevel: mixed + +enableGlobalCache: false + +nodeLinker: node-modules + +yarnPath: .yarn/releases/yarn-4.0.1.cjs diff --git a/LICENSE b/LICENSE index 81f990d6..b32169c3 100644 --- a/LICENSE +++ b/LICENSE @@ -1,6 +1,6 @@ MIT License -Copyright (c) 2020 +Copyright (c) 2023 QIWI Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal diff --git a/README.md b/README.md index 35481589..bd8850b8 100644 --- a/README.md +++ b/README.md @@ -1,364 +1,94 @@ -

+

+ - Tech-radar + + + + -

- -

-[📡 QIWI](https://qiwi.github.io/tech-radar/) • [Android](https://qiwi.github.io/tech-radar/android/) • [Backend](https://qiwi.github.io/tech-radar/backend/) • [iOS](https://qiwi.github.io/tech-radar/ios/) • [ISEC](https://qiwi.github.io/tech-radar/isec/) • [JS](https://qiwi.github.io/tech-radar/js/) • [OPS](https://qiwi.github.io/tech-radar/ops/) • [QA](https://qiwi.github.io/tech-radar/qa/) -

+## [📡 QIWI](https://qiwi.github.io/tech-radar/) • [Android](https://qiwi.github.io/tech-radar/android/) • [Backend](https://qiwi.github.io/tech-radar/backend/) • [iOS](https://qiwi.github.io/tech-radar/ios/) • [ISEC](https://qiwi.github.io/tech-radar/isec/) • [JS](https://qiwi.github.io/tech-radar/js/) • [OPS](https://qiwi.github.io/tech-radar/ops/) • [QA](https://qiwi.github.io/tech-radar/qa/) [![CI](https://github.com/qiwi/tech-radar/workflows/CI/badge.svg)](https://github.com/qiwi/tech-radar/actions) [![Maintainability](https://api.codeclimate.com/v1/badges/b04b40063c8974a8ca31/maintainability)](https://codeclimate.com/github/qiwi/tech-radar/maintainability) [![Test Coverage](https://api.codeclimate.com/v1/badges/b04b40063c8974a8ca31/test_coverage)](https://codeclimate.com/github/qiwi/tech-radar/test_coverage) [![npm (scoped)](https://img.shields.io/npm/v/@qiwi/tech-radar?color=09e)](https://www.npmjs.com/package/@qiwi/tech-radar) -Fully automated tech-radar generator. Based on [zalando/tech-radar](https://github.com/zalando/tech-radar). Boosted with [11ty](https://github.com/11ty/eleventy/) +Fully automated tech-radar generator. +
## Purpose -[Zalando's answer](https://opensource.zalando.com/tech-radar/): -> The Tech Radar is a tool to inspire and support engineering teams at Zalando to pick the best technologies for new projects; it provides a platform to share knowledge and experience in technologies, to reflect on technology decisions and continuously evolve our technology landscape. Based on the pioneering work of ThoughtWorks, our Tech Radar sets out the changes in technologies that are interesting in software development — changes that we think our engineering teams should pay attention to and consider using in their projects. - -We've just _slightly_ modified [the original implementation](https://github.com/zalando/tech-radar) for our bloody enterprise requirements. -## Table of contents -- [Getting started](#getting-started) - - [Key features](#key-features) - - [Requirements](#requirements) - - [Install](#install) - - [Usage](#usage) - - [CLI](#cli) - - [JS API](#js-api) - - [Input-examples](#input-examples) - - [CI/CD](#cicd) - - [Customization](#customization) -- [Contributing](#contributing) - - [Add new data](#add-new-radar-data) - - [Enhance the generator](#enhance-the-generator) -- [Alternatives](#alternatives) -- [License](#license) - -## Key features -* Builds radars by `csv`, `json` or `yaml` data -* Renders a separate description page for each radar entry -* Compares radars of the same scope with each other and shows the movement of points -* Assembles all the radars refs on the main navigation page -* Redirects scope urls to the latest version of their radars -* CLI / JS / TS API - -## Requirements -* Node.js >= 14.13 -* macOS / linux - -## Install - -```shell -# yarn -yarn add @qiwi/tech-radar +[Zalando's answer](https://opensource.zalando.com/tech-radar/): -# npm -npm i @qiwi/tech-radar -``` +> The Tech Radar is a tool to inspire and support engineering teams at Zalando to pick the best technologies for new +> projects; it provides a platform to share knowledge and experience in technologies, to reflect on technology decisions +> and continuously evolve our technology landscape. Based on the pioneering work of ThoughtWorks, our Tech Radar sets +> out +> the changes in technologies that are interesting in software development — changes that we think our engineering teams +> should pay attention to and consider using in their projects. ## Usage + ### CLI -```shell -# via local dep -techradar --input "/path/to/files/*.{json, csv, yml}" --output /radar -# through npx -npx @qiwi/tech-radar --input "/path/to/files/*.{json, csv, yml}" --output /radar ``` - -| Option | Description | Default | -|-------------|-------------------------------------------------------------------------------------------------------------------|--------------------------------------------------------------| -| cwd | Current working dir | `process.cwd()` | -| input | [glob pattern](https://github.com/mrmlnc/fast-glob) to find radar data: csv/json/yml | `/data/**/*.{json,csv,yml}` | -| output | Output directory | `/radar` | -| autoscope | identify same-scoped files as subversions of a single radar | `false` | -| base-prefix | base context path for web statics | `tech-radar` | -| nav-page | create navigation page | `false` | -| nav-title | navigation page title | `📡 Tech radars` | -| nav-footer | navigation page footer | | -| temp | temporary assets dir | [`tempy.directory()`](https://github.com/sindresorhus/tempy) | -| templates | custom `11ty/nunjucks` compatible templates directory. Its contents will be merged into the default templates dir | - -### JS API -```js -import {run} from '@qiwi/tech-radar' - -await run({ - input : 'data/*.{csv,json,yml}', - output : 'dist', - basePrefix: 'your project', - autoscope: false -}) +npx @qiwi/tech-radar -i input -o output ``` -[JSDoc reference](https://qiwi.github.io/tech-radar/docs) -### Input examples -
- json +| Option | Description | +|--------|---------------------------------------------------------------------| +| input | Input directory containing radar.json and other stuff (favicon.ico) | +| output | Output directory | -```json -{ - "meta":{ - "title": "tech radar js", - "date": "2021-06-12" - }, - "data":[ - { - "name": "TypeScript", - "quadrant": "languages-and-frameworks", - "ring": "Adopt", - "description": "Статически типизированный ЖС", - "moved": "1" - }, - { - "name": "Nodejs", - "quadrant": "Platforms", - "ring": "Adopt", - "description": "", - "moved": "" - }, - { - "name": "codeclimate", - "quadrant": "tools", - "ring": "Trial", - "description": "Статический анализатор кода", - "moved": "0" - }, - { - "name": "Гексагональная архитектура", - "quadrant": "Techniques", - "ring": "Assess", - "description": "Унификации контракта интерфейсов различных слоев приложений", - "moved": "-1" - } - ], - "quadrantAliases": { - "q1": "languages-and-frameworks", - "q2": "platforms", - "q3": "tools", - "q4": "techniques" - }, - "quadrantTitles": { - "q1": "Languages and frameworks", - "q2": "Platforms", - "q3": "Tools", - "q4" :"Techniques" - } -} -``` -
-
- yaml +## Examples -```yaml -meta: - title: tech radar js - date: "2021-06-11" -data: - - - name: TypeScript - quadrant: languages-and-frameworks - ring: Adopt - description: Статически типизированный ЖС - moved: 1 - - - name: Nodejs - quadrant: Platforms - ring: Adopt - description: - moved: - - - name: codeclimate - quadrant: tools - ring: Trial - description: Статический анализатор кода - moved: 0 - - - name: Гексагональная архитектура - quadrant: Techniques - ring: Assess - description: Унификации контракта интерфейсов различных слоев приложений - moved: -1 -quadrantAliases: - q1: - - languages-and-frameworks - - lnf - - lang - - framework - q2: platforms - q3: tools - q4: techniques -quadrantTitles: - q1: Languages and frameworks - q2: Platforms - q3: Tools - q4: Techniques -``` +- [Single radar](https://raw.githubusercontent.com/qiwi/tech-radar/no-zalando/src/main/radar/radar.js.json) +- [Separated radars](https://raw.githubusercontent.com/qiwi/tech-radar/no-zalando/src/main/radar/radar.json) -
-
- csv +## Customization 🚧 -``` -title -tech radar js -=== -date -2021-06-18 -=== -name, quadrant, ring, description, moved -TypeScript, language, Adopt, "Статически, типизированный ЖС", 1 -Nodejs, Platforms, Adopt, , -codeclimate, tools, Trial, Статический анализатор кода, 0 -Гексагональная архитектура, Techniques, Assess, Унификации контракта интерфейсов различных слоев приложений, -1 -=== -quadrant, alias -q1, language -q1, Languages-and-frameworks -q2, Platforms -q3, Tools -q4, Techniques -=== -quadrant, title -q1, Languages and frameworks -q2, Platforms -q3, Tools -q4, Techniques -``` -
+- Sector colors +- Status size and thick +- Almost unlimited number of sectors, statuses and items -### CI/CD -Follow [gh-action usage example](https://github.com/qiwi/tech-radar/blob/master/.github/workflows/ci.yaml): -
- release_radar action +## CI/CD ```yaml - release_radar: - name: Publish radar to gh-pages - # https://github.community/t/trigger-job-on-tag-push-only/18076 - if: github.event_name == 'push' && github.ref == 'refs/heads/master' +name: Release +on: + push: + branches: + - master +jobs: + release: + name: Release runs-on: ubuntu-latest - needs: test steps: - - name: Checkuout - uses: actions/checkout@v2 - - - name: Setup NodeJS - uses: actions/setup-node@v2 - with: - node-version: 16 - - - name: Install deps - run: yarn - - - name: Generate - run: yarn generate - - - name: Publish gh-pages + - name: Checkout + uses: actions/checkout@v4 + - name: Setup + uses: actions/setup-node@v3 + - name: Build + run: npx @qiwi/tech-radar -i input -o output + - name: Publish uses: peaceiris/actions-gh-pages@v3 with: github_token: ${{ secrets.GITHUB_TOKEN }} - publish_dir: ./dist + publish_dir: ./output commit_message: "docs: update tech-radar static" allow_empty_commit: true enable_jekyll: false ``` -
-
- generator script - -```json -"scripts": { - "generate": "node ./src/main/js/cli.mjs --input \"data/**/*.{csv,json,yml}\" --output dist --base-prefix tech-radar --autoscope true --nav-page true && touch dist/.nojekyll" -}, -``` -
- -## Customization -### Group labels -Every radar document provides its own definition of what each `quadrant` does represent. Change if necessary. -```csv -quadrant, title -q1, Languages and frameworks -q2, Platforms -q3, Tools -q4, Techniques -``` - -### Ring colors -The easiest way to tweak up the look of your radar is by adding an alternative color scheme. `renderSettings` option is exactly for that: -```json -{ - "svg_id": "radar", - "width": 1450, - "height": 1100, - "colors": { - "background": "#fff", - "grid": "#bbb", - "inactive": "#ddd" - }, - "rings": [ - { "name": "ADOPT", "color": "#93c47d", "id": "adopt" }, - { "name": "TRIAL", "color": "#93d2c2", "id": "trial" }, - { "name": "ASSESS", "color": "#fbdb84", "id": "assess" }, - { "name": "HOLD", "color": "#efafa9", "id": "hold" } - ], - "print_layout": true -} -``` - -### Templates -For advanced view modification, you can use your own templates. Pass `template` option to navigate the dir, where your own custom `.njk` files are placed. Expected structure: -``` -assets - favicon.ico - radar.css - radar.js -_data/ - settings.json -_includes - footer.njk -_layouts - entries.njk - page.njk - radar.njk - redirect.njk - root.njk -``` - -## Contributing -Feel free to open new issues: bug reports, feature requests or questions. -You're always welcome to suggest a PR. Just fork this repo, write some code, add some tests and push your changes. -Any feedback is appreciated. - -### Update the radar data -1. Clone the repo: `git clone git@github.com:qiwi/tech-radar.git` -2. Install deps: `yarn install` -3. Place a new radar data file to `data//.{csv|json|yaml}` -4. Fill it as shown in [examples](#input-examples) / [its siblings](https://github.com/qiwi/tech-radar/tree/master/data) -5. Run `yarn generate && yarn preview` -6. Follow [http://localhost:3000/](http://localhost:3000/). Assess the result -7. Push commit and create a pull request - -### Enhance the generator -1. Clone the repo: `git clone git@github.com:qiwi/tech-radar.git` -2. Install deps: `yarn install` -3. Make some changes in `src/main/js` -4. Put some tests to `src/test/js` -5. Run `yarn test` -6. Repeat if necessary steps 1 to 3 -7. Push commit and create a pull request ## Alternatives + +* [https://github.com/aoepeople/aoe_technology_radar](https://github.com/aoepeople/aoe_technology_radar) * [https://github.com/thoughtworks/build-your-own-radar](https://github.com/thoughtworks/build-your-own-radar) * [https://github.com/zalando/tech-radar](https://github.com/zalando/tech-radar) * [https://www.npmjs.com/package/@backstage/plugin-tech-radar](https://www.npmjs.com/package/@backstage/plugin-tech-radar) ## License + [MIT](./LICENSE) diff --git a/dark.png b/dark.png new file mode 100644 index 0000000000000000000000000000000000000000..3674fcfd1e4f2d823f6daed38b28426980a5c2ea GIT binary patch literal 288932 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%0AW@-C7bcyfqs6SW{=2&E9iYB% zx&4?6LP0Pvl2mkl+Pw1)Yp#0#UEFPLbA1(zV1>XS>GoG`iu-*2k_c9bt?i%lEB?Z0 ze$ob~_bpscK}N|DU#UU@SM3Z8o6VKCQ0XJp6v&n;%> zI2$3khuP8_O?)njk=V`bJV0Guyr1XMxgpONmgZv3DHSB#RMfy=(K&kbVm4gT%FKk` zZ7N03rr~LR$e20Y&*DdqsKk^7XiKQ~6HWEg(CUL*%bOMdR8nIkrKYcS!aschO!?k| zD=0u#g`x)@9KO8X&l~>iY~^kx)na|QZ?n`GLLjAffqMeZk`lsN^W$vI>MjKZChx!* zdFy#AV(&7{Vu{nB)>yJ zKw7=RSU<+?Dfh~&&iHHqM-!0-zWs)2tJ?xmDp*}3mZigfd~3<)V&vvt%d-CfpJZ$8 z&dL7)fQrA zM+UQv;5OJy1N_s8t?o&O|B9o7G!@L9_rBLSAYF?NBB^0FIUVLeuri*^^5R{MHgjGX z)$YG!`%_&S`rAUOdho;RP5bZ6+``yRpS1q(?ir+R>ycCM6A*CkoJzw@=#QFeo|eVu z{St@D=4tb%JIqwe`!iontv#w0&cpepTB5Y!BjtAp;%ibW$RyrBW1Rg^ih$@TCJr$$ z8ug^$1>~)ZV-FaX$G5eAtuuaXPRe3*eg8C|EsV!C_7RWaFu{S5lcK(~_GPR^t-pYF zAvuJOy?>Pj!TC>A5L<}N@(DRu3E`g4f-`WhtT9s3HCR@GU>+6pcN5C4-ZlZ-37&ow z`Uve#S@zhrX53DSPs3`dH&xuR!_1J^T>cxb@DaT4;CtW#pU=X9sV|hR)^9yda&Y7? zhU4tzmcH+-r{pN+0JPry#t$yPZMo7`{rpojPykE!9tBNKIOQX6$xn1`HFzk@21t*N z79#I|i9@mA%5VQglFk@N*XJk5Zcko;&t@5|Az3@oGuB$jYwp`us_JglRr$Izx)P9D zOlGA@?I&(-Gtd_pm#xR0n_6u?lkWbkbKn+^`m8d1`KN5LnHSowBZKL=8gi2FcSLD? zk_?*6e@(BZY{x|?yk!@xtVx!^+76 zkE|eV<$M=6ohM1(uI+x0rXP2KTHedKZp|AEy_NEU)SKi;20$caV~xUd4=T+|-QP#} z)w0gnk8yl=8<4E5%2dqLb9{EB+wO9f7}hSWYfkr`vC^Q%vnH>Jo75A=GV%f{qh7TfD7%42qe6vcSF#Gygs}AMt|m^F5Qx7byKUrBRRhjK4%0@^+A{wDeNux zhiS;-emfM#x;Jw+mKh%GlxQ(B_Amh^F{Y@5Y4gL3`z630V`&KBaTMG;Uiw6{lo z)9_zy0%=1-p`){L#QNIOuJemZ39ehF_(D({aH=QpvE!aWXt-h@A1I*j?rVd}uKc{! zouan6Gl0d=%+Hcu-eK3vxw^>&hS`(8dh;8%=PQLpl?lQfjYHOl%Q1n3zNIZEDet>JA?o|6&?XNtN=WPZo!>=TCR;Q^Np8`^_p8~4dpkGJ z!10~A`I={!ZL=b2qx}MVJmlyQ^(PuNcyG6Khg!r@mHAeI4{)v?8O+o#K+Zhq&}hlz zoZS~QjLxPvi?c`}Y7<)At8!Y<%G$KP%=K%*kut^M!i><(nX{mM7jeo;cqVdU#$ zOF(c3u#Q@5Bq!R7X&ZOX$D?Ab(JSaz{c8l^w)vtoS8X6<@i2wCpOK42)vmRD(4Oy+ z`FoshK`Ez*IAT&SL9CGRZRgIDf#MVffWn7w-GF1`{(g1D&?q83i? zeH<Bh6S|O;tZI`+fdjVbin2C+139;?DJF!yO7ZvVj1G-E)%OCooZEv~^ikrTZ`&Nx)y} zSo2)=Z3nX&o{uf=ixIfh^=ybTNH?4?@fH%k3xWE8|NzcAY;`bdtJ$MueQo}Oon z(#(XFS!QZ^%Z2~(!daUO#Rra8nK2Bzk(1s4mrwWk8(VU{cgF{`FLe_~08iX!@;b7& zvWze2*cQ(`#qX4*6N_$)eI3UoYHH_PI}7G8IjFE6&9=H|xPR^Susbu&BHf&L*!wvW z{M?7H^Pe$7rwxHWgYku`58W)@9o1DVb>~RLy|cDhI!B3VIrpT`Edd5KcWB6&G+_CN zUV9+_4S4=hifW<;*`C!FaB5>CzGsxPwbUGRG8%MzHo@2kn;SOwtsgBn&WC(h4(NA>=^;{%jkh0 zj@3%Hm-V^}%Ed9)wAPujXMnAVr~hpD>oUXyS%6PMnO{&T;n^uI9Xa#ACkI+2k~A>% z2eQtEZzd$)AwTyxnYS3AzmxGDQ-1Hje(pto(!>4AJ30KywnTiUl;<>gZFHXoi{ai21*Icbb6 zs$DC}Kn2-1TX0(gi|%6gu@B$We(tk9k&~juc!qs!pr&&cr&ImM4u0)D*(g2w^^P-et*31^j%BwG#=FG^%~Z{Q7SURFQBQ^r7gA5qa_iA zy8{>#9+|NXkV~}^zD0XnbUk?)FpMp(5xvH@f~ZiC(om%n+vKeXJU5n*y%um)06Hz> zwbe}!N-zxP0eEr47CORo-7_qr4@@%#mp>3mJJmv6k#sCwA+eVlVsn|dT5tR3c}hNk z;L$(jxTCEc;zAADBBvzJuUiD4o9A8 z#lH1S#a6yhZrpV-uii$ugUw@ZN;KtGn|zOY%1`FXo_>ktH6X*RF65{|{&^n##T3zR zz>>|7Z+eDjIkSNbt&VOvyUd2rG&Win;p9=4>ju;ovHl2l=}{$Fey^%BUqU?rn|Ky($JCwy` zNNG>@tt6IDd{%Lh#S!MVsPR6`K%c1M&)n~?l^c&7rK=1Ufz+GE$WYol; zd^~7??x3M}Vk7@bRc%G(=M|ty@skF863x9+bqaGO^hjWlI69+xCkvqS=wU@|AaV+> zCUbu-{^E*BB{>fN&Qv687}I@mXTy*tgYm+~u;)cJ?p(uDtg>1;j`R{7Mj~ArUO?hY z?CS(GVnv#nH3D0h zB54_pf#`2*-sJxh28yWzKHj0>Mz6M<>Ed$i%t4Y|BPpLL2mW*+o?fVnajD+vb#-5T zY^0vXzqN*vp{RNbAEE1Y_FJuZLN;bw=NKKhydtwVPA=P5L46@|gIZ@};9qE3DVr0I z3UINleMuIYs~Ww+sPW8~tD7R*V9rv*Yf#L9^k!~56`_<7_=k`weM5-s8GrMvWv@YQ^=3t^*Px$1tUhiMx6}<09yuu``k? zIk$Zg`NI6=4-r``N^flycw!W}PQl^2C{wf^yx>LUMi5t>eVNzbY*brA6+2}gN`(3HL|c$`ji_=xPuNBH!;DH|uEfrjQ8_)q20$TK{u|={ z-xMGh?P)eR@aP#mY?{EQxn;^)V|pq$^TI9PtE0rob>$B!v%WUWNaXm{1O<0TP|tVj zc68`~TIh}#385kc^R$#C3?P|dXt6BZvt(f>*Wvh`gWraXVh$nYzF3;$DJ9J4`AT$- zg5ZREa39Q`&&-`${a%`}fneNWmv4B>R^gkT z`j^(>d%3}AhS(bfvJ3Q!j-!ynB|+!iqy`EJiExQcu5l@nNBXo!XiGD4t=T=Ga?hqB z+*M`OZ{c_rx3^!Z{v=8GTcqNHh}}B9j8(kOHg6qTq@N<1q1@`78xk;hkz%dtm0~vJ z)iHa34?*;{Bd=kTVu5Ve6mc=TQ4K`gxaP3ZjkWqpOE&h4O_+0)2c!~UCL@m6-V9C{ zP;R%g3}x@RL~7*92znNmMWmwq5RY5yZhZi6O59V}JRj=$?r}+b7ijfH*H+p+Y4ov+ z9ulT0;ItOjmuMuJwK(nJr0=lc(g=WpjXQ#UM_EyzcsyrNsbn_w%yvYe1nrp|oiu8l zE3RC9pz>w+E)#5E8^(0!+)rR51aqN}(@ize-O(m8M{d zXO+3G{Dadp)}pYAwyC-amfpzTXE0S zD|WC%y~j|rPY>5Ni45r8b8g$3%|!w&ZW-HroeWi*t0{?HkE@Y50=dm8kmIwbigEG} z%~(iXp%#&hJ#p+~!iD^#XwWGJz@w*XoTOWc)PDU;c_i3zO!P1P3Vwm;l$=JDtXNlN zTu(mXi=N>NjyG{ezL1WwlcU6BTW%?3kDYX;(yI9@7Z`BWeM16?eB zw(6rv`j@JuHwVKOcAv8Aw#S%AxUJdU9lq&lb=p-b1AG6DLH6dP z5s<&9uY@=jky-!6!~zf zeAvn=7oudmei#!o*&^vN^&qzi*M7&$#F5JBt#d9@()DN+IVXqUd@@(AmHQ@EydB3u zoIp!ZG=_r_k1Du8543)O%ioOaw=v;fb^khN`M4%z0vCRaQKt*FrylY@1aD4O5&!#|EkpXTjoTrk7u8_Sil&vh8H*EO}3D{ zUz<$BpUeG2kQi-|@ozGmCEa{|_=AGv4Rk&j6Wg5G4QQDR6m#)~`%;_&2H&@#K1r_mADL2hM_-GDA8W? z@dBUSpGkRe>(|I5Azu7?(beKayGbelKFPjg4}KxDvUXM&y{D^uzYZG+%bs{OX5^8- zZ&%%`GS0Fn6c%I$WLz0*z#n!4%2TnrM?Dn@v#-93#0;a}1eL!GsXXb8H|zxZxK*3m zCE=S(-<(fcorhz;3;X3fF<0C}LOCjX4s47pNq1Bz%E2K|^kRkRwEugb zy0?42Sl4M8S(e6#pxgXo{P=LA#`P;xa^HB0@s@3!19mYf-2^J*+2ie0{hzZ+l%Ys>tFzd8PXNVa_iKz(I@j51=9B{0TwU ztqe{v{l7Z(@S>Yi!>+*#_p0*M5NNoVEWktK5fQb&`Thgl!O{s}i7S}WvSQh#FI=e8D)9s{#VGq?X{<;Fqw=m8TrjQF7*?1Vbkmx@=1}ktbarCkz+!@ifmOwbn;G z#Hg7zeVkD$0M0^P&dmIXG?zruTJIk*moqZ_Q*WXk*K2Cb`uf!$!>yOybj~ue6cZH7 zxN~9n2I$AY(|>-IuqG+a@b#x3cS3iM41V!13@(NWQ-U5#l)dOHuQQgA302rJX;JNbN$01vXG?Mv_iYrO0&1dU0kEP7zxj(ciXDu?!@MPOngc z`nBGqc?P#>1o?`A3P*O}15c>~KC{hUHt#If8rPJNp`VnL#Q^&D$u==KqUyHYtAj0< zQwEs49;CAJlN;fi2|}{rb-Q@FHtvaz&xGIeRmYNBp_`D?%y&om*2u;~J1|r#r1y_;%;t2m|XUv%%8>EdxKfkjY z`T0KN{{Y6;+r1X36Pq5mJz!W7f4xpF8bskLTtvTNXcwDq6Vl(Y{lrlyMdiNb(CEPc zr$>j8q>d!VENr$ilWPzl^UmUwM`0@tx z^64bc8yT&)(W;cT@^SW((G6&a&QU(g;>=)w`7|-k=PGk#{agPj7>In~rV@YG(-$jH zo^)P+O_m0vn^AN>S1p5Jg~vRn!B*Z|aQ1hI8e6X79#0}S3N^PTd@ z@u4EVXSOD>1Mf;&v=nF$|7fiaQ@%&FbDP@e<+o03EPla_2CuF?SaVC8ySgvYaz(EL z{njr;|oD$3>U?9{U}AU8gs2!iqA62LdKD>(h86m zzrnrCaU_|yvKvT^2HeS@;cFO1n5HM5ec&Q3)FR^~+D<6kYY{X!HhFe6mqw z;h#9xe>uneiN(NCk#$BAIbChaLN}kL(~q`^Dk7i}&&S&!mP9ZU0r3Sm{98-3GnwJ>gZtOt=6@s2>fEvR)Z?`qdW zG=v@!MauO;DZ4+z@geE9fz-&56kD=C!u_OwGJ1fPHmcCqft?T?dC{x8u|T!*Vcf?6b^%0q zZF5iEM~Vw9Ss}fR`cW`BA-G*SII(y|uNEQVBao&$j7b zRo_d8n6VHJ$}!ausZbVW6cF$;W!1GBA91f$FSYgX&evnZ#bYxtWaC)I_v7c4f10Kp zir5T_THz%{8sArqNq#yL)Dk{XUdD>EzSPQJsJBrj2tmr40nA9=g_AySrTN6k`vavO zlH%O%5g=Mp*pRfJRJOzB{FvJ}5mPXgmvb`7WrKIgBT*7c>!B{}VM>v=!h4sa8a^x` za2`GrdKgZbzz=mq_p(d@nA%H5&JFDvep=Au7IqnU;+lt(OUEc#8{aeH*i zwPfd#I#P;-=**E6saJIz23-&+N?Qc+$INl z-;q)|uvL83Bhq&V*j|fp5v9uts;}@wC)z4~=JKbjXQcQrQx0c>zv>Rxf#uchSC!+$ z>EHb*9PjD_No-c(C7%3SG3Y#SdYsl~kO2KvQa}Utv{^R674TW5QF+Q9e8wtx`$b!G z=waU&DSygrkM0uOYw8czjgWLv@K4?$yR9HOymFIggzQ=-IZdT(Oo&`uFsuW#FZq8tDRq}u!`l{0O52MgQa9aCI-m}cj*VX#ucWg59^kD<9WlU_jxtmu06+3RQ;!V2u2xs7mezaBBp4^ zU*&wPjC0!Ijk>zi`)5q)Pqeqzk-LXcKryN4#2~-C(?j09&75LkoDfB(7pVYuDwS{7 zsyHS7$DB@!@S(oBFc>0N;p#g`KzTr;oF3)pWyEvts&IZD*Z74$pBbL&`_IHFFtWpm zU%XY+ql^(l+~=iX9y&Ql;^)6zv#FIPR6;m-FWq255g`6z;>gaqd`q+9CkU^eY;l8v@VD}?=uTD>cq;=63Pn%}qc`lW2`D`if8rtGWp+*vHU9)irwv;CH(yP#H6MKYH zY_6jSJql$VbF|iaV*AZqbO$lu7v25}>>)E6$O2k)1J9L^QvLaD5fTX0^DY>m-2YO= za1HmwJEVP`ds7*G|JbLxOu>hyiiHSbL`cea_UnEP(0=7xF0PeUm;<>!6-Qx9S_X<{ zL&%zFf1jznQ4{6D5wOwlN6aomL`c{@9!cw!F)x$u{dwZZ(T7VYEu{Em%&@qPYQGZ!dFoo?O~{HQSmr=PX84w)<}DQR zC(Z$p%2F_Z*cZs$erQu~^OLhZiC|Mn7Ge=J1ulzXA+d$z=FHP1Whj5mJL&20aE|zxha=9=tB$;KDl zh5r`pbGcpgW?MrZ*jbU(hGE|PDX_{6&F94qlPq*zs=t>pF*XfkfUQ9p{w(kFFF&;QSa(u~jNGE@{N_;$iE*@EOg@^cf{lQXoZW`2|7TPS(p`pvYWRs$A9d zTEo3#o)3RC&WA4c(^(QfFA`Y3<7k>Hbq4{{^>x=G)oKu7Wb+s^;r?y3vocy6bhaM9*tI z87BUC=~tR@`n;`%$AkWKE%^S`kILd1n;M(0iTD{H-r_;C>6d@?Qa;m3U5+>Y?_j=w zZQ@n&3G=8u>j|=L?|udbEa`TVPrq^`C|#fNcAK#CduAU-pF3?OcI2WaOp&hSu~i+~ zsT<|$hvWEi9R8iEYA*ZVfUomPUAdE&IloLp*Pg*=8@9m7$jjqUR6TSyxL(vZ^bA*2 z+z(N84!fMw`Cj0J;-(yi-viPcOgKqkgz4J|oPU&skiL;5nIhF{KX+#Ku=`>T{*e;& z0~JErz44;c{*7>mP@=8xW||2PZfb4T)8z*hD2>pn+(3KxC!7*x=_K7CMghtGi(hP! zyLp$(t%M17b6-(Q~yGkjPHR_9b`knl|HtYMfk43qjtC9#r=RPel_wp;}0ZZBj z11l(P$zq$U9lgF!8^l}qS9ZG8bU%Ci`xR$vgUj69RSauI@_U|c?pFY&is$Qxll0G2 z4LM@qdUVHaZ?C6qrRxn}3n%7=`kpsLx^#$oV#T;zi+WWtXy0q|B8xInY<@d{2aHC| zuM5PibG?PRfB6_?5tb_7T6Z~V>XM~fV6(4UH!sXvE(9|AF#taFmiY0esZ;*>kex`h z&pozw-mqq)#FB_3$ys#s`DI7HeDTu$P{XOFMSAA(z*+`CM%k3QIz8Cy3-8j})^z&v z;fb!4ne_L1qy8wfug#3nWCQ~t#YF&6HIe`g7%p@oGIC7|xI1TR0)pqDCI&~VdFNPY z!1VZ7Gz2L# zCph^!Oiv$-iLT~%P5(htF<_Nfw~C(A&h6(t$y8w#njWX^WtVqn*pP}vYPuza9s?t# zU7y}JbfO^^J9RxFb6M0OM`M509}CEDGrAl4mlUBT;ofl?E#dUc-0?j>DjG+>3x$$f@eBJ9qD~?6lJH9RQ(cn7$c_MUFTlEEp(Gi`a=B9 z`{UD@;ND$}8M4f#z*lqz1AP&!d7~uw&Oy5Fr$x_wfMh%VXZ9E88hdB#>qAn$?=ooI z4x87luk%#c6-KVr`};l5Is8IXD|lQr72?PiEBA-O_(?NouUb?@b)EQ)b2A^mB92P; zGCiuw%#Wlnb1HO74g~kne!ch4@RU9_c&DX?xnWc?I#eQr@PN1*Wd5^51+x-DzJ4bH zSC644jM`~U-4t7xC!BKIru2KxCr8^Drj&bBy^Ri7?%Q;80(fKej5*W_}DiLek@`fjZLF~p1R%khflDcS-Rst*2f8D_b7 z#SJdgNV`reI;Jy!)qHXQQ*+2Y>DW>_ zIu&(3h}d|>N=k5AhN#qw(8XZ0R8gV*ebMV-UfhwdZT9&Uc7H~B`qmjO=c`q3*7#Ou zd`_Hk);P49m70=J`G=^nTaqJzEdL84Y*0hhN-KMIP$0vmSXJCnAg%*|&vuA;q_ z%fqTqw(=TB&dbWIdBA)$n?g`esc*m4Z0V}2vZr0GlJ%)7uLX#ROAQqk9){Ewgqeh-+`id6UR1y zbn-iLqvLqChYsY@86@PVnIlxHo+gL=u0pV#j8=KbA z>-Yb!&KzI^Mf*6-VG167Hv`}u0yz*r$Cs3;s+g}WhM=-7;rddx*MLG0`MIB4Bw@Kq z8ZGHUu)|}3Jf_hR=}9kL0A7ZCvAKEbls6OW7<}Rp5W}31pItKV4%UxI_NU%(z2ToL z{+%VPhlG1qGYE|YLlJY*yvqPFCjU%CQ_?g(w9xc}_q@K4R7ob#DdEhaQ~GDRS9ANO z4C_Ly=8<{Kb{wW)N0d9r*4K!XnvfFMc~T}g{Mji*^sYNTVeJhF9~LYSoi-G<<+yCJ z@Ci6R`3j6(p%FJK4<8BvibO?OyyRLWZ912X8MvWMi~fe^ESP)ov{%sQ@6h} zMPn1(`T?r3#kWz^n8$0F;Sg)y|0sE0ZuHal_jgI06rd*Xz0I{RrBqjzz$ zy234+-&&S5LzkHLSZyWz{4K)I{0^;nC+`KaE=F``t$YW&QR^xSCdX8~in9*3>96y( z`E7`lrE(dU8g#jwFWR7ae~SJi^=M|RA%H$Q;>#uRg-whlU5#0lo_!KOt#&WcH7h+M z9{S=r=b?bKR>MY*Q&{OXjvlVwRVMG|!rJ_q(^pu0efJKw#^hQEby)Oo1_TjVV=EFr z>tvr7j1NuW6Y>n8$$|KeBZm{d;6A4rrXdk)-s?i={+Pmj3|mo0zx@K2#FVKPIJ z+K=Nks;ZP{_pHyEtZ#!#BFF#Swp$_r<;Hdig~^9ndz$*&hS7sRU2eL4RD~jB*V+<3 zcYK;-u?+iBPMgGT^bO>=JRKPCAMkODvaB&m%V^7ebUEAFj7}(xMF}M%{$$xYG&!Fp z(1wnCM(bj1ZU%lrO@iOs!sH@8O~yfWrmN8fz@hR_P>!;a41<_f$(h+!i6Bx+8n)uT zzJAAscdW71HZ4JrRO+maJpw)wVj*bpjNCofWjYu^tlG6!zh)|N#^3jRS8 zHoJ+>z75!`mQT^l9c%bpn33RB6C}R%KWUeFg)`KF@laYU9WQNLX@p7E2avq|L)r-d zBpDG4z)x`M7JYTvWBw9^j@cDi)wrvhWX?yE<|Xz!^q))+dEAcYmpg_Es$F*$O@x_7~(0cem$N ziuIiQ;giBG1MkiscApR8-hPUDWAhY-WZu4;#D`7)G*6>U345E-R)>}!wEl!?xzLQsDq_p-t{Yv2j1)|4DdQAYt1{WP?^)y@@ zUG7m*PC)wmwwzv9LH(2c6_Tagbtf`D3*SxuS32T& ztzkSpU#?-}jG|RI1}7f6nN#GL*9~X+2XF*c{Ta@xN7FV43g7_LJ zqs54Cqd{twdTO`mwQ4(esv9+oxKc;4vA;8a`bZ_6ty)~kIuk3N@VwyI zm)l>JdrI=w=UX=6t6*{b?uIGvW=eU_n6 z+GdYq=_$v3r>*%^3VF!W@rxAb4=FO9UAK*oHe{|mb~7}Q4_kU7LLwt((Z>af zH)?&9ft|p&ehD1i>bjYyZzO63q{vb%YGd=3s5!Yk7Du18eAN}a^eGmWUv1el;iQ+A zmS34=W&=Q@AZFAnC?X^BF_oLralWDJ0$tz#yXYKDKF{jaSuT^?=yN$q&?PC`Ob7h+ z65#rU{r5)FU^GABrYh#VR-RGCONgr@4K`zcsX>Y-GKdxKZO7btO%JFKq!(~ zZyZ}vP&Trd@Orqb=^sEBU%RoZq$}wRWY=1GP}HySylp_;qtADS}{V4!!OFBoCHE zDO2_`_ov*}!guSbXY4`mD(Kfh9d9akPe~P-rI)FC29^cMw>x@*-^M*qrCs~|Io<+? zwNkhi`FPoHsi`JTd%U{scg|$GjZqB{2N3YfaZ018qaPZuVdsK_0uQ$JHf%b!=B*brf`NtVY7X3^8c$FMaZdFo661l$7%LNkAbIft^;6>viWUPaPO^z z92|LufLdxQLVl3H0sXt$t^2%0`1RyeJoIu^ZSHSUn)3Mf?CC$g6VXm<+~Lm^zn%`o zso-9x_O8n`o{kJQ`;f0Y$h|+>oYo<%+Y%lbw65Lb@U#gY%%@3Wu=Skcc#W~168ud! z={JtoaZzkATfi~Rt)RZ4>7`dr+3*PpYtLRBs9>TAar6vWqQ;c}LG;245@?{Sc*$(u zw++m$+SWDloL?pj`xPWv~S(Cdl^TD!& z3yz#v-c94KYVp9&87;4WBf)7noBGG~DB2po3{4gTYt3WJ8`g0uuJ4j4TBGyAuMYnA z*%R@9`liEte{!eNavSPhQau3*$B$b@te+ARnEX?9=ja*=ST;XB8_*X*9Cd6?8)Ado zkSD%8Oe6tvu^`XjJr8APH=6`W7-iD1CC_}1fl}k~RoQG+>;pwR0w(A$Sx)$hL_5eO zrNvVY56d{qcnW0DP}t&;f|HU!=AMRMt*52^3Oe3Lt#J3~xbX>vYAS6;_`xap609LJ zY&uaoa3`I&B`ErLR(IqJjsVghbi0;6e$YnxE}sf<*>twQo$@VdVQ=#tn(f*pmdzYD zd-_~o!p<{!ym~PKBfod@AudltCB-{SiB&G90sp1H@K$0wl!Xc@~6%iN}rO_m8S4GX{j_f z1z@QMSFYD9>UMmLT%1~JH&&lJl)Msu%D??x+nPsl_myYJoyYk!TB9BR4syy&-ZtZl zCBAUp4ZWmAb0%!;^vh!}x|cWegI@M@rWy{q(v&~TN!qEkc1c<)BwERxl7xOom@A=9 z`f@`5MO4>su1EyE+kU^UHi-&YgARtBa%~SCqku{RRSLfE8VR!70!Aai#6ZH&R;50~ zg9`HO29Ayn{RgU@mZty?sL4~CvfdxG`rrIk5jN!pRjF0-4sa||^bK&YL+cVmb@-kV zvfdE1x>ws&E{Rr0n*~q6Mjm;F+}|l3$jO|BjLQ5&)VB>58B20hV={ucZO_Myr)z+8 z1Bi1otv8U2q(LD-uH?1u*3b(!(W$^E+-@4ze^Umbz-FzQ^JqS$LWiG5_qaZ&OBU^! zr7W};!_QufE0cvGw4(wB)*Yd>6~@*z6TRH81+cx1l7CfudAo1)D}GE{WI_;Y_V!;T zAW3aU;_ipuv&mB&fogca&N%5hJItC5oFnT)9yZ!2@pOT2o3C>S> zibb0gK-Obtg!LeQTm&!{DO3QXxs|tbsf*GGHJo#F+|Cc&dz;@6Ic}4^ye)`b{G;5UGQxj@K&oTd1TP$*Sp5~&fl6gdeLXwMI#B2KmS*8g zIc-QW)yX^d&fN3EEa?|a+YL_8)BVqzjs0kocBNd(h6DXKmfWKBh-kyGwo3mj{2;%M zr!q7CwN|<`tt^0#Cr2EurSb6n_|SdV;=4oRwFGDw={KU8_6KCFb@BAzqEk(MSLFeZ zhhJa*1{s=7F@qbTnG5Jzp|;a_U(T1c2T45$tAFe7(+1BUdmDs!c;VO^4hfb`xLcsD zR2uq0Q`-MEB>mj=eO1A%Z_~yGPR8lo?n-0)$S6no-~WF!eRnw9VfS}pl^V6xuBxJn zTD5Cctx`2>gwmpBtPneDb(uw|t+t{z5u`@#J%SKXTa46R<<0YZpXdMlk?Xp@_c`}D zpVfrDi#y^5%SNl(m(cRIu4Og)Kx-GTRCs4zETjKK2|j=Ni(l^aB{wn1NU?4EaPD?* z>ij18HX}iy2d(kR$d(T2^`*-5^rtVNySh!{`RroXt8yM_yKi&zTfDXRl6~=*FhBwS z$_4gZ_ty`)M9SlGV^3(Qh;~GS(MhTiM0Cb z!`U}$6&U|-U#)sdt<`6S91hgwnq&?P3Jd$SmA@Yu@rhQ%5{ zEo%*8Ss=f_hzz^1oexrGZw+3#juA`HugGW+1=i}x2~BJ6T9_2T zEuHl`^lH%~eO~Jw<=@5y$Fa4kHH|72buWY*#R|jglV9MFPtQ_Nr^7-TPvVsBqi;f7 zr^4Ms2j2nq>Z?@T2Dk$hEwtdNyFN=B=NSUD$o$=x%7>7zXrED9ycB6wluc7X`LTQ6 zXr8N0z-Tw&CT^-yY-R2>A+o!WJdcK}3cu{fH0%*IcKegP-`TfL^j&0K!{5w*Yee_0 zFVOOE76IvkHm?(&gI}NnYHsYzrh}NTDUn{%EI~~pd=Z|kNG@ITG{FBX*%j3n3AHsi& znMp!ehFF6<1h==>WMi*>C#8}vT(lp2IONz3nO7@2hU$0FjzbWtoL{i_z_qW(B>QQec^F5-yGq<%5%IICV zGNjn0bnac4r++6XOMKf?W8~)AVAh4GO@~oa^f%nO2D;#}H}vHR(bx$4p^@X&OLdJc z!M#PWfk#dTzy{y+T(}56KCyh{9YeH&s?jKN->UN|mfb^HZJYo;K_^4p7ShOVPyig@ z^_}Dxxk!(y80+`9)=%v*if!`Ak@VkDzt!j!gUC>fUjT-6*e&}IpGNwe0Ykvxz32n> zT~<_vH^0CPi(2-3P`Lt^T~hQi^y6aJJKFYt^B;|H3oXG!k(cN{-tEC?=ezNT%^L?l z0*1Gws1P4tvhH&-oh*{oS7&6jG?73rj9yTgY*~7ANTR+~ z3v7t8;+hZ{&up5gGf43KWJF}J-``4h*Wv+!^J{N$FLpJxlHHVl9=QdnK_&VIN8QCi zhQ&oFmTtdmVIdSf3qXb8kn$td2G@Hhn*+;wSpcXh41S_txH*y_&ctb!CK#FrfQFrk z`t)Rozlvd7EM@XEzAldspLp*Jw-quEdo#s<(5n+2_aV)CQlLvs57&Ao^}@oCwx56g zzLPDg;yQEd*~SXRsK_&G$|rAR;jh^+&baz&1Pw9()OfT=rx$$yBwz`BJwh+;5zZT! z>+0uMW5dnsOlMO~Inij6Yi4b0DH2>EByJY68T@~9i)8sN4_P$w^7ViB?&MB~@AZA2 zTOC*gtS1?fwdHkkhKuX@2I>?y4)~Qg;5gl=i$DEhYrhtW=PhiUy;YIzOiU@hGJ2p) z_VIS8@~PzExr5jaj{MHxos}h_7$FLQy*rK<|9(sL{OJ75Rx8PEsk{Y)FAa*yWIC4^ z>vq@nkJKGLF^$}db>QH2`)={eXnEjICIG1jr+eA9wV2Q@Gqudur?elCLh9Z`!`IM| z{2c=)b$=N`iH~co{$%fyScESESo0zPULka6O&_xjh z%c>U!B6>u(q@KD`SHwuPkRj=#q@K$z>~InP6*}|gFE;KZW8qVU%^kAStzo8G=&V5l zO|Zt_^~7=_r4$~yc<(8t)(}|mUW|0DY9XpSB0e&gL}ELzF#-LV1yCLHc*z<8sd~-n znMV4Z;yHD%#Os;_@q_7yQZKGL;Dg5Ow_TJE25!?X6>>ped|mlV(UYyz6Ku8qGCOAW zMDqj59s1!T!;sn(> z#0C&|4H+s2_v%}67n(A(XB)Tk%qU{vb#jq7+`!znE zTPEzHdtj(-m7f*L@O|SC^XGzvMQxJDNKQ6k|E+hvH!K|iE2%34`wZZ#4-@yK{|y_n z6GERvbdF@--LZJ=roka8l=PL2KDW>PoC|l{%5sOE>A~f%1LBXc*%6aDPUkr}ZIf;LsV|+rIo!`dN8cG(h9+T78vM<=RLsZZioD%#D8R7c)s*Z53LAd%WA@&2M!)( z;sd97ZhI#dVLriK^-3S#$J|wp1Bn+XBi&7h<< zeZQ#tx-Ti5jUo)Vi2M*{JsWt=$B_z+G!ZgeipSLMS=(ecHoLdD`nxdz?G{?OI*es+ zhP(({Moj3j-r7>mwReG5*k93urK&a;gcim3Ju}8QB7P@vy6nBVpH|+x25K8rsXglr z_Ktt?JlB;0|2qu2f~UNMN1^nbnCFdlFT)44 z-cU98Ve8Cuz3M+in-efCj|{k|b{F=rO%`ixb~jRt#dr|w_|E4vkYdL7meA4h4sdYR z68=S~=(n+XH&(DMxbk1u^8e;n|6{Opj}zUuOxQE9{>tDq(m+8EV zW*Ur2mPCxs-E*RlmEzGNd&B zP}}`u9Z_!UgRvas;8 zOj?CMSkA9OLyEK;b~h2iTkp)+?o3kI7%fa6El}-5z{8tFoBg65%dTK-X0Cn?xwGhr zprcD;6=gP$dG%~n_VKz6hiIMv?*1w*<=OMP)W<$%B9prXjVW^qnLo3^FMRq{{4qPT zNt30Mt1`-karQ&>da3_@V4m+icYWscg2<2DDl74@*%LAMZ{1=W$B=I^3`m;J7OPIw z`nYGb&pZq`8*uC^w~ehkJn|px`d*dJ9ul#uNGij8ttHUsBc#ZirA4m3;A~r`q!KTS zl{nxH?CVx z@7$j++guJoeVADKM&&6UhoE|+9rm48Ww-0R$@+*&LGImecdI1!&)=ZKpwGT;S~p|A zES|mnALv@Eh)$>OxkoVgE}+0G;`{Um<0x%cuGJ5wAsH($4Cq$~9OzvaDMf1o&P57@2D;{x2f z)3sGmA!fF?$@02917577?4rXV#JUqB0A_QwOubRTG%$!{Yj;~~J)F`$unp)L48^fX zwfg^D1Di4pYq;UxoIFrGnfsPHm3S=Rx_1Hr7rG8!q8Fv4RQBuAv+Gqb_f0teG^D%>a~|EP*-67lR>bTmwb7N} zH5=;CEG=Y&eVO}BYjvuuP>eZP;(Oy0j=yH4BD(Li|E zKyj3^;tk=Kp^{EW`>WL+Yt7y_Z93|$zZ6n5%Z>A`ec1~O1`w%Dberca zlWKfc=Ee|<@G2AId9zn?;NV?Mst1@D*05kxS}-9}Nq)|eIAEjo$2ImV*&;g$bSali zwY(s6{=vS-iy)`mlI7%aZZ9L68t(<+rLDE`++4K|H7z5KS1uoLGKIHmwo)VINYoNj zBcEnHf#?tHmqEsKrLN!DN*n;Ab(z?Oh7o%L)X0x}IRT|Uw{mUPEwXbaY7{2hf+Nze z_pNr7urjs4PbNiYq0Mq2F(!yAI$j$QS9)HIf5!)ifpELiuS+EY_hw>p25~9j<_&p_ zI=CI}I<#tjEHzHlKiDFeDND@*cer*p#(#lM>fm?G|Mos$H!JtbOsQ|A;t+KNf7zcc zUEEZzD{n+JEaUy+9I9N=g94kg(3}lBL011#AWA#(IS4NAN(E>&IkL4Yn#(DjPBATL zCsYs&M-Z2KtrX@aq}a2`(4=psX;}Kpr=|lO>x8<!UrfOVWQ&TywC0d8l(2dDc~mbUX_&mc4o3Eq*$4uypSmeW9xxc92;3q&P3 z3S*=~ct+stZK$?HWoUrCg6elHNx+n-V9+S~CabOa`%#LAS<50>HdM%{QAJ^#D4nf# z>CCUGaqfm0gZJ)<(sIndBK6|$6h39xsF8joU^0-BoPh6Eg}-n6^r_AEApm@lG*yUF zyuh-x#h?asS7;S~NnTrHNuY}6?o=@U=@?#rhq8XYgmY^&5TtT<^Sm1(_EPZ3&!o!d z*V2x4{p@q(-#3oi(^^a@E7IU*5Tc=P$E0yV`|w_m@)(dzu<}-(H;z_=bKiCRmIDgY z>KxDBde!#7aVbl*d@yD$_NBJQO3f)ic z2Yy1hN1X91Jm>Q>ZjQJAKy)q4-K!V?BfS{O#skUX#>c0>>8gmpp@pb3q; z1;6SOC2{WN_{s`9ac$U3)pKQbzJ$@^1nMGD_i-f@%f-P z%Bre%fG%!h-g=!)p@pbQ*%00K9TOH*aG^ym&NckL{MUVBsC1V9h_ot_nw*OvGr5Ej zrvT8SYX7^8K|^u>Y}pAN;m=9H;YOpf>?|Q{kIE;W7QXT~JO^nF=7IYS~$Ee72Xn z*{5LIq+PogG&b0LEg&UD8ij2Ye13p?J|`H>bVEYNnZC@p(4Z1?#Y2h0RNKEHLjVb( zE2SGjiz-F|g0RM*WihGil*XL^jsx8l9d2^n<;Lc`qfE(f=Ww;~;w zPmVR&P$#+1{Q8k+mtm3~>6hpX$=mOlsA1!|HfHn%zQ7h`<@iYZ6TAZQpv|3}K^53e%PqKhC;UcE;d?LNc4SXEXR`!J;}n zhtYs9h5~YG5-Vn;AV05dAsTMAAG;O^Qf7sa+;UR}&nSSx&>Nqj4af=o_H*R1jMU$L z#lwA;su9FLstE=EMCD^jHw%v72k*)ZcAZV0xR5+E7h>K2@n))s($@zUf*x%9r-KOZ z4U;7*0LFU)iX!3Dh{o-Kek;Hp?O)hI0@`^3?6zw z!hX%u%AKvp72O8ls}2`#iPl#nzTBrI(4Z48*-rQ(<9}Owi1z}c&)%QEBsfts`rm*) zgJJ(@K3spD(M%L$mRBMG2?kpbnW;O-bYlvv-9H@^|&&d$4-&^wqduvZH3j!y;z*D>$qId+X== zAHCgC_daayeA?14DD1j$&;z)z@GauFwv>`kihg*0GQ@}Ftd~9D;-`5Gbw8Go_xa{e z58YJm!A@KqSGE-0l@lEb2Ywcra0jS_`{S=@pzR*dY7Yo`@=>VrLQFnWBWNsJulq$P za+%XsOMMkJU?2|M3qKef?c@Ak#W6=eEb3`xg%Yvh)!cIKg>yA?f0Sktw|pFafW72W zg8~V7`elJVJe(p1Amp}PVD3Y6$B4s5dftTGT9oV7a6~xUcdq${*M1b&6Z~oA=9=^$ z4<{-tM2Fa$s`l6O$P?NF>{+{0xAvx!o?O-VXk?4Ifn}~omfZUo`0IX-?D5R$iZ|q0 ze}}K;H*H$iKMNRzM5{GYLLtg^5L3A}M5t`BI`{bgj?fe~;kUcQ*puZntbMVpH?$k_ zo#XUoqbxa+MGdXn^tfYIlnIi6AQesCg7M3;=>k2-MirLVxwN8>}+`tH^9;f4cz1KVy8-g(}etGy|j21rwiL4ec>N@Zu8n5H1S+?7wRb z@k+~g*{>ew!5X#gidjg({Zk=fuoG%dc*b=WaIb>tD-e789sjB4W)zHiW6W9fh;%RB z<5eo@Uev`9==1N*V41OFMw%0C&#+(;c1$R$2JG)f=c(0xI9 z)?U=odAU@bRk%d+uZW7G={UYR0-;93Z!)3?pUa&$J zoIXrsLjSokG&#R?+gcdOC708;mL@7?eM|v3`s+=YH_)mTOlZ+^g{{~6_ ztt_qN7Zx@hANfCYp124fsTAIf&l-ufeyzQ(rU`^z9A_<$P@@!s&nl+Jiiv0Nvbo87 za@ES19AyPxwgMnYf~lbX-1R6TX;uI=F#37tY0KxiBBn+MbR{Gsex;I)td%9pCT^3Q zaLn5>Nt5aC@W1Kt@DuskYzp;eVZEdi+f8c@bm`RI_5+-I!zTr7q;JnqmO|W)6duk% zxXZ)NT|i+aO3Ump?wLep4Q#0AiD9E!KRBQ3=3!=Fgk>7(Ac~2nE)V!III#~b3N^@5;EYb)&2adJ!aof>Hl&9Tdm^aD z0~LAiVKL~D?h;YC{Yn7Gs^dQ&pv4=mdIv~1d-CmEYhzWq3-99j`EcLLad#p|s=|l0 z=_duPqkw#iH zMso9dqNm`Vn(XP1A||eNzQ{lY&tsjNeXl)vksAsm!L3y(BE}DVY(7b%A^C;?P_-!j z9Z?wo8midX_7qIQCSlyin0)_T%#DlV*=n2{v9ye{qf~ zDkR6d5$+~b@kN1H+q<5`VT$ZHp2;r^^JZK)obdx@Px){MHRs<*Y*2e8N&D6~T? zOj)L4IUs`MC`4$|w}6G{$7BHOKc~}V*rKLZQ*!M5D$7n-wA;m*jD49z>(?9Dtzj|o z?{Sg|yRTh=m1fwno`eh-hy-ghA^pf@P3cq@f(u#G(#Ow7O@+%QP~6W8%$o00Xr#L* zB40(WenyjxtR7|QDFL)zj1+oLEGlR16L&}wN#2p5woN5XWp3n#<*j{y|4lnJ(Bv6! zZ^}+V)?yz?6>Odaw=>XhN32SA(J!zG04$0A?@bnWYgF z^@hNI_i4;LqV3gwR8i6!!$prbqCE^K5p%Q3|8fVo<>C%fXy%3lVg~uyQO4R4kw98H z^6}i4H<1R9hil1vTdCijBoYduf}4GoxNd!d)rq@Xs-68fnesFj+MF@a5e;8Ur9=gF zA|*K7)#-ru!%sxmBiHz7_ZyF{%?$g_fLD+1cI8aoE?g29pK-c!Y8a89Z7VTWXs>^3 zalS9^6?_&gM1{()Od+XaMWs#`^I!(tW9LA|^K_zzMRStz4f&Y1w);)4zu(#i7GnzI zmtqytlkcx@r}k|3$4x?hBxZ;dDsJe�JzvY<}jmO*0Z$Ve{pC^jxxbA0*#1kc&BW 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

M6x}({&vq-PglG_jvGZ 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 EAGCQpsQ>@~ literal 0 HcmV?d00001 diff --git a/data/android/2022-01.csv b/data/android/2022-01.csv deleted file mode 100644 index a42fec4f..00000000 --- a/data/android/2022-01.csv +++ /dev/null @@ -1,48 +0,0 @@ -title -QIWI Android Tech Radar -=== -date -2022-01-12 -=== -quadrant, alias -q1, languages-and-frameworks -q1, Language -q2, Platforms -q3, tools -q4, tech -q4, techniques -=== -quadrant, title -q1, Languages and frameworks -q2, Platforms -q3, Tools -q4, Techniques -=== -name, quadrant, ring, description -Continuous delivery, tech, adopt, -Continuous integration, tech, adopt, -UI tests, tech, adopt, -Unit tests, tech, adopt, -MVI, tech, adopt, -SOLID, tech, adopt, -Feature flags, tech, adopt, -Trunk based development,tech, adopt, -Appium, Tools, ADOPT, -Kubernetes, Tools, ADOPT, -Tekton, Tools, ADOPT, -Device farm, Tools, ADOPT, -Github, Tools, ADOPT, -Kibana, Tools, ADOPT, -Grafana, Tools, ADOPT, -Firebase Crashlytics, Platforms, ADOPT, -Firebase Remote Config, Platforms, ADOPT, -Kotlin Multiplatform, Platforms, ADOPT, -Java, Language, HOLD, -RxJava, Language, HOLD, -Kotlin, Language, ADOPT, -Kotlin Multiplatform, Language, ADOPT, -Kotlin Coroutines, Language, ADOPT, -Ktor, Language, ADOPT, -SQLDelight, Language, ADOPT, -Dart (Flutter), Language, ASSESS, -Jetpack compose, Language, ASSESS, \ No newline at end of file diff --git a/data/backend/2021-07.csv b/data/backend/2021-07.csv deleted file mode 100644 index bc6c2bff..00000000 --- a/data/backend/2021-07.csv +++ /dev/null @@ -1,49 +0,0 @@ -title -QIWI Backend Tech Radar -=== -date -2021-07-16 -=== -quadrant, alias -q1, langlib -q2, data -q3, infra -q4, techtools -=== -quadrant, title -q1, Languages and frameworks -q2, Data management -q3, Infrastructure -q4, Tools and Techniques -=== -name, quadrant, ring, description -Java 8, langlib, Adopt, Обычная Java -Java 11, langlib, Adopt, Актуальная LTS Java -Java 16, langlib, Trial, Следующая LTS Java -Kotlin, langlib, Adopt, Как Java только Kotlin -Scala, langlib, Hold, Scala -Groovy, langlib, Hold, Groovy -Spring, langlib, Adopt, СI движок и комбайн -Spring Boot, langlib, Adopt, Инcтрумент для запуска комбайна -Thrfit, langlib, Adopt, Бинарный протокол и реализация клиента-сервера -resilience4j, langlib, Trial, Implemeneation of Circuit breaker pattern -Arrow, langlib, Access, Функциональщина для Java/Kotlin -logback, langlib, Adopt, Библиотека-фасал для логирования -log4j, langlib, Hold, Библиотека для логирования - -Oracle, data, Adopt, Одна из основных баз данных -PostgreSQL, data, Adopt, Основная база данных -CockroachDB, data, Access, Распределенная SQL база данных -Kafka, data, Trial, Распределенная шина для поточно обработки данных -Cassandra, data, Adopt, Масштабируемая распределенная база данных -Liquibase, data, Trial, Инструмент для миграций - -Общие API-модели, techtools, Adopt, Переиспользуем API-модели между сервером и клиентами -Микросервисы, techtools, Adopt, Позволяет разрабатывать приложения разными командами более независимо -Trunk-based development, techtools, Adopt, Фиче-флаги вместо фич-бранчей - -Kubernetes, infra, Adopt, Основная платформа для запуска приложений -Docker, infra, Adopt, Контейренизация -TeamCity, infra, Adopt, CI/CD инструмент -Tekton, infra, Access, Легковесный CI инструмент -ArgoCD, infra, Trial, CD и IaC для Kubernetes diff --git a/data/backend/2022-01.csv b/data/backend/2022-01.csv deleted file mode 100644 index 15f334c9..00000000 --- a/data/backend/2022-01.csv +++ /dev/null @@ -1,77 +0,0 @@ -title -QIWI Backend Tech Radar -=== -date -2022-01-15 -=== -quadrant, alias -q1, langlib -q2, data -q3, infra -q4, techtools -=== -quadrant, title -q1, Languages and frameworks -q2, Data management -q3, Infrastructure -q4, Tools and Techniques -=== -name, quadrant, ring, description -1С:Предприятие 8.3, langlib, Adopt, Платформа разработки внутренних приложений -Java 8, langlib, Hold, Обычная Java -Java 11, langlib, Adopt, Актуальная LTS Java -Java 17, langlib, Trial, Следующая LTS Java -Kotlin, langlib, Adopt, Как Java только Kotlin -Scala, langlib, Hold, Scala -Groovy, langlib, Hold, Groovy -GoLang, langlib, Assess, Системный язык программирования -Python 3, langlib, Adopt, Python -Flask, langlib, Adopt, -FastApi, langlib, Trial, -Spring 5, langlib, Adopt, Application Framework -Spring Boot, langlib, Adopt, Инструмент для запуска комбайна -Thrift, langlib, Adopt, RPC фреймворк для взаимодействия между микросервисами -Resilience4j, langlib, Assess, Implementation of Circuit-Breaker pattern -Logback, langlib, Adopt, Библиотека для логирования -Log4j, langlib, Hold, Библиотека для логирования -.NET Core 6 LTS, langlib, Adopt, .NET -.NET Core 5, langlib, Hold, .NET -ASP.NET, langlib, Adopt, Web-фреймворк -MSTest2, langlib, Adopt, Фреймворк для тестов .NET -App.Metrics, langlib, Adopt, Измерение и отправка метрик .NET -Dapper, langlib, Adopt, Легковесный ORM -Serilog, langlib, Adopt, Библиотека для логирования -MediatR, langlib, Adopt, Медиатор .NET - -OracleDB, data, Adopt, Одна из основных баз данных -MsSQL, data, Adopt, SQL база данных -PostgreSQL, data, Adopt, Основная база данных -Patroni, data, Adopt, PostgreSQL в кластере -CockroachDB, data, Assess, Распределенная SQL-база данных -Clickhouse, data, Adopt, Колоночная база данных -Elasticsearch, data, Adopt, -Hazelcast, data, Assess, In-Memory распределенная база данных -MongoDB, data, Assess, Документоориентированная база данных -Kafka, data, Adopt, Распределенная шина для поточно обработки данных -Cassandra, data, Adopt, Масштабируемая распределенная база данных -Liquibase, data, Adopt, Инструмент для миграций - -Общие API-модели, techtools, Adopt, Переиспользуем API-модели между сервером и клиентами -Микросервисы, techtools, Adopt, Позволяет разрабатывать приложения разными командами более независимо -Trunk-Based Development, techtools, Adopt, Фиче-флаги вместо фич-бранчей -SonarQube, techtools, Adopt, - -Kubernetes, infra, Adopt, Основная платформа для запуска приложений -Consul, infra, Adopt, Сервис-дискавери -Vault, infra, Adopt, Хранилище секретов -Hiera, infra, Hold, Хранилище секретов -Puppet, infra, Adopt, Управление конфигурациями VM -Docker, infra, Adopt, Контейренизация -TeamCity, infra, Adopt, CI/CD инструмент -Tekton, infra, Assess, Легковесный CI инструмент -ArgoCD, infra, Trial, CD и IaC для Kubernetes -Grafana, infra, Adopt, -Kibana, infra, Adopt, -Zabbix, infra, Adopt, -Prometheus, infra, Adopt, -Zipkin, infra, Trial, diff --git a/data/backend/2023-10.csv b/data/backend/2023-10.csv deleted file mode 100644 index 272a28b0..00000000 --- a/data/backend/2023-10.csv +++ /dev/null @@ -1,113 +0,0 @@ -title -QIWI Backend Tech Radar -=== -date -2023-10-13 -=== -quadrant, alias -q1, langlib -q2, data -q3, infra -q4, techtools -=== -quadrant, title -q1, Languages and frameworks -q2, Data management -q3, Infrastructure -q4, Tools and Techniques -=== -name, quadrant, ring, description -Java 8, langlib, Hold, Обычная Java -Java 11, langlib, Hold, Устаревшшая LTS Java -Java 17, langlib, Adopt, Актуальная LTS Java -Java 21, langlib, Assess, Следующая LTS Java -Kotlin, langlib, Adopt, Как Java только Kotlin -Scala, langlib, Hold, Scala -Spring Boot 2, langlib, Hold, Spring boot -Spring Boot 3, langlib, Adopt, Spring boot поновее -Resilience4j, langlib, Adopt, Implementation of Circuit-Breaker pattern -Logback, langlib, Adopt, Библиотека для логирования для JVM -Log4j, langlib, Hold, Библиотека для логирования для JVM -JUnit 5, langlib, Adopt, Тест-фреймворк для JVM -JUnit 4, langlib, Hold, Тест-фреймворк для JVM -TestNG, langlib, Hold, Тест-фреймворк для JVM -Maven, langlib, Adopt, Инструмент сборки для JVM -Hibernate, langlib, Hold, ORM для JVM -GoLang, langlib, Adopt, Системный язык программирования -Chi, langlib, Adopt, Библиотека для роутинга GoLang -Python 3.12, langlib, Assess, Python -Python 3.11, langlib, Adopt, Python -Python 3.9, langlib, Adopt, Python -Python 3.8, langlib, Hold, Python -Python 3.7, langlib, Hold, Python -Flask, langlib, Hold, Бэкенд-фреймворк для Python -FastApi, langlib, Adopt, Бэкенд-фреймворк для Python -Django, langlib, Hold, Бэкенд-фреймворк для Python -SQLAlchemy, langlib, Adopt, ORM для Python -Celery, langlib, Adopt, Очередь задач для Python -Poetry, langlib, Adopt, Менеджер зависимостей для Python -Pytest, langlib, Adopt, Тест-фреймворк для Python -.NET 8, langlib, Assess, .NET следующая LTS -.NET 6, langlib, Adopt, .NET текущая LTS -.NET 5, langlib, Hold, .NET -ASP.NET, langlib, Adopt, Web-фреймворк для .NET -xUnit, langlib, Adopt, Фреймворк для тестов .NET (юнит тесты) -NUnit, langlib, Adopt, Фреймворк для тестов .NET (интеграционные тесты) -MSTest2, langlib, Hold, Фреймворк для тестов .NET (юнит тесты) -App.Metrics, langlib, Adopt, Измерение и отправка метрик .NET -Dapper, langlib, Adopt, Легковесный ORM для .NET -Serilog, langlib, Adopt, Библиотека для логирования для .NET -MediatR, langlib, Adopt, Медиатор .NET -Delphi 7, langlib, Hold, Легаси стек на старых проектах -Delphi 10.3, langlib, Hold, Легаси стек на старых проектах -1С:Предприятие 8.3, langlib, Adopt, Платформа разработки внутренних приложений -gRPC, langlib, Assess, RPC фреймворк для взаимодействия между микросервисами -Thrift, langlib, Adopt, RPC фреймворк для взаимодействия между микросервисами - -OracleDB, data, Hold, База данных для старых приложений -MSSQL 2014, data, Adopt, SQL база данных -MSSQL 2022, data, Assess, SQL база данных -PostgreSQL, data, Adopt, Основная база данных -Patroni, data, Adopt, PostgreSQL в кластере -CockroachDB, data, Trial, Распределенная SQL-база данных -Clickhouse, data, Adopt, Колоночная база данных -Elasticsearch, data, Adopt, -Hazelcast, data, Adopt, In-Memory распределенная база данных -MongoDB, data, Hold, Документоориентированная база данных -Kafka, data, Adopt, Распределенная шина для поточно обработки данных -Cassandra, data, Adopt, Масштабируемая распределенная база данных -Liquibase, data, Trial, Инструмент для миграций -Redis, data, Adopt, Key-value база данных -Couchbase, data, Adopt, Документоориентированная база данных -Nats, data, Assess, Брокер сообщений -RabbitMQ, data, Adopt, Брокер сообщений -MySQL, data, Hold, SQL база данных -Vertica, data, Adopt, Колоночная база данных - -Общие API-модели, techtools, Adopt, Переиспользуем API-модели между сервером и клиентами -Микросервисы, techtools, Adopt, Позволяет разрабатывать приложения разными командами более независимо -Trunk-Based Development, techtools, Adopt, Фиче-флаги вместо фич-бранчей -SonarQube, techtools, Adopt, -Allure, techtools, Trial, Отчёты по тестам -OpenAPI, techtools, Adopt, Стандарт описания АПИ -Camunda 7, techtools, Adopt, Платформа для моделирования и создания бизнес-процессов -Camunda 8, techtools, Assess, Платформа для моделирования и создания бизнес-процессов -Платформенный подход, techtools, Adopt, Общие платформы для разработки приложений под каждый стек -GitOps подход, techtools, Trial, Репозиторий отражает состояние production среды -Gerrit, techtools, Adopt, Система контроля версий -GitHub, techtools, Hold, Система контроля версий - -Kubernetes, infra, Adopt, Основная платформа для запуска приложений -Consul, infra, Adopt, Сервис-дискавери -Vault, infra, Adopt, Хранилище секретов -Hiera, infra, Hold, Хранилище секретов -Puppet, infra, Adopt, Управление конфигурациями VM -Docker, infra, Adopt, Контейнеризация -TeamCity, infra, Adopt, CI/CD инструмент -ArgoCD & ArgoRollout, infra, Trial, Инструменты для GitOps подхода -Grafana, infra, Adopt, -Kibana, infra, Adopt, -Zabbix, infra, Adopt, -Prometheus, infra, Adopt, -Sentry, infra, Assess, -Jaeger, infra, Adopt, Бэкенд трассировки diff --git a/data/ios/2021-06.csv b/data/ios/2021-06.csv deleted file mode 100644 index 5097d6a7..00000000 --- a/data/ios/2021-06.csv +++ /dev/null @@ -1,94 +0,0 @@ -title -QIWI iOS Tech Radar -=== -date -2021-06-21 -=== -quadrant, alias -q1, languages-and-frameworks -q1, Language -q2, Platforms -q3, tools -q4, tech -q4, techniques -=== -quadrant, title -q1, Languages and frameworks -q2, Platforms -q3, Tools -q4, Techniques -=== -name, quadrant, ring, description -Дизайн-система, tech, adopt, -Модульная архитектура, tech, adopt, -Continuous delivery, tech, adopt, "Каждый спринт отправляем сборки в стор, с помощью teamcity и прохождения автоматических автотестов" -Continuous integration, tech, adopt, "Каждый пулл реквест проверяется автоматическими чеками: swiftLint, unit tests, smoke ui tests" -MVVM, tech, adopt, Паттерн проектирования -REST, tech, adopt, REST (от англ. Representational State Transfer — «передача состояния представления») — архитектурный стиль взаимодействия компонентов распределённого приложения в сети. -SOA, tech, adopt, Service-oriented architecture -SOLID, tech, adopt, Мнемонический акроним для 5 основных принципов объектно-ориентированного программирования и проектирования. -UI tests, tech, adopt, Каждая фича покрывается UI тестами -Unit tests, tech, adopt, Каждая фича покрывается unit тестами -GraphQL, tech, ASSESS, A query language for APIs and a runtime for fulfilling those queries with your existing data -Redux, tech, ASSESS, Архитектурный паттерн -Composable architecture,tech, HOLD, Архитектурный паттерн -Appium, Tools, ADOPT, Tool for automation UI tests -Confluence, Tools, ADOPT, Wiki -Fastlane, Tools, ADOPT, "Тул для автоматизации CI/CD и других штук, которые гоняем в Team City" -Figma, Tools, ADOPT, "В ней дизайнеры накидыват интерфейсы, а мы затаскиваем их к себе в проект" -Github, Tools, ADOPT, Система контроля версий исползуемая в основном frontend'ового кода. -Intellij idea, Tools, ADOPT, IDE для разработки на Java/Kotlin -Jira, Tools, ADOPT, Bug tracker -Kaiten, Tools, ADOPT, Система управления задачами -Kibana, Tools, ADOPT, Визуализация логов -SwiftLint, Tools, ADOPT, Linter for Swift code -Tableau, Tools, ADOPT, Решение для построения дашбордов -TeamCity, Tools, ADOPT, Сервер для CI/CD -TestFlight, Tools, ADOPT, Share test builds for testers -Xcode, Tools, ADOPT, IDE для разработки под iOS -Grafana, Tools, TRIAL, Решение для построения дашбордов и мониторинга -Zeplin, Tools, HOLD, "An organized workspace to publish designs, where the entire team can collaborate" -Firebase Crashlytics, Platforms, ADOPT, Креш трекер -Firebase Remote Config, Platforms, ADOPT, "С его помощью делаем фича флаги, раскатываем фичи и проводим A/B тесты" -Google Maps, Platforms, ADOPT, Карта терминалов -Goluber, Platforms, TRIAL, лоток для логов -Yandex AppMetrica, Platforms, TRIAL, Analytics framework -CHIPageControl, Language, ADOPT, A set of cool animated page controls to replace boring UIPageControl -DeviceKit, Language, ADOPT, DeviceKit is a value-type replacement of UIDevice -FormattableTextView, Language, ADOPT, A framework which allows you to format user input according to your mask -InAppProvisioningUtils, Language, ADOPT, Библиотека для работы с Apple Pay в приложении. -KeychainAccess, Language, ADOPT, Keychain framework -Kingfisher, Language, ADOPT, "A powerful, pure-Swift library for downloading and caching images from the web" -MaterialTextView, Language, ADOPT, Реализация текстовых полей по Material Design -Python, Language, ADOPT, Язык программирования -QiwiButtons, Language, ADOPT, Customizable buttons for iOS apps. -SnapKit, Language, ADOPT, DSL to make Auto Layout easy on iOS -SnapshotTesting, Language, ADOPT, Delightful Swift snapshot testing. -Swagger, Language, ADOPT, Фреймворк описания API -Swift, Language, ADOPT, Язык программирования -Swift PM, Language, ADOPT, Менеджер зависимостей -Edna, Language, TRIAL, Фреймворк для чата с пользователями -Kotlin Multiplatform, Language, TRIAL, "Позволяет писать общий код логики для iOS, Android, JS на едином стеке Kotlin, но пока вдоступна только alfa-версия. На проде одна фича на платформе Android (поиск elasticsearch), в процессе оптимизация под iOs" -SwagGen, Language, TRIAL, "OpenAPI/Swagger 3.0 Parser and Swift code generator" -XCTAssertNoLeak, Language, TRIAL, Фреймворк для обнаружения утечек памяти -Alamofire, Language, ASSESS, An HTTP networking library written in Swift -Apollo GraphQL, Language, ASSESS, GraphQL framework for Swift -MetricKit, Language, ASSESS, "A framework which aggregates and analyzes per-device reports on exception and crash diagnostics, and on power and performance metrics." -ReactiveCocoa, Language, ASSESS, Фрейморк для реактивного программирования -SwiftUI, Language, ASSESS, UI framework -Swinject, Language, ASSESS, A lightweight dependency injection framework for Swift -Adjust, Language, HOLD, Marketing analytics framework -AFNetworking, Language, HOLD, Network layer framework -Carthage, Language, HOLD, Менеджер зависимостей -CocoaPods, Language, HOLD, Менеджер зависимостей -Combine, Language, HOLD, Reactive framework от Apple -Dwifft, Language, HOLD, "A small Swift library that tells you what the 'diff' is between two collections" -MBProgressHUD, Language, HOLD, Индикатор загрузки -Objective-C, Language, HOLD, Язык программирования -ReactiveObjc, Language, HOLD, "Objective-C фреймворк для реактивного программирования" -RxSwift, Language, HOLD, Swift фрейвморк для реактивного программирования -SDWebImage, Language, HOLD, Async image downloader with cache support -SwipeCellKit, Language, HOLD, "Swipeable UITableViewCell/UICollectionViewCell based on the stock Mail.app, implemented in Swift" -TTTAttributedLabel, Language, HOLD, "A drop-in replacement for UILabel that supports attributes, data detectors, links, and more" -Typhoon, Language, HOLD, Dependency Injection framework -YapDatabase, Language, HOLD, A collection/key/value store. diff --git a/data/isec/2022-07.csv b/data/isec/2022-07.csv deleted file mode 100644 index 78875db9..00000000 --- a/data/isec/2022-07.csv +++ /dev/null @@ -1,89 +0,0 @@ -title -QIWI ISEC ████████ Tech Radar -=== -date -2022-07-24 -=== -quadrant, alias -q1, monitor -q2, scanner -q3, infra -q4, techtools -=== -quadrant, title -q1, Monitoring -q2, Scanners & crawlers -q3, Infrastructure -q4, Tools and Techniques -=== -name, quadrant, ring, description -███████ , monitor, Adopt, ██████ █████████ -███████, monitor, Assess, ████ ██████████ -████ ██████████, monitor, Adopt, ███████ █████ ████████████ 3█ -███████  , monitor, Adopt, -██████████████, monitor, Trial, -████████████, monitor, Adopt, ████ ████ █ ██████ ███ ███ -██████, monitor, Hold, ██████████ ███ ███████████ -███████ v6, monitor, Adopt, -███, monitor, Hold, - - -████ ███, scanner, Adopt, ████ ██ ████████ ███ ██████ -██ █████ ██████████, scanner, Adopt, █████ ████ ██████ -███████████, scanner, Adopt, ████████ ████ ██████ -███████, scanner, Adopt, ██████████ █ ████████ -██████ █ ███, scanner, Assess, ██████████████-████ ██████ -██████████, scanner, Adopt, ██████████ ████ ██████ -█████████████, scanner, Adopt, -█████████, scanner, Assess, In-Memory ██████████████ ████ ██████ -███████, scanner, Assess, ████████████████████████ ████ ██████ - - -█████████, techtools, Adopt, -████████ , techtools, Adopt, -████████  , techtools, Adopt, -██████████, techtools, Adopt, -████████   , techtools, Adopt, -████████    , techtools, Adopt, -██████, techtools, Trial, -█████████ , techtools, Adopt, -████, techtools, Trial, -████2███, techtools, Adopt, -███ ████████ ███████, techtools, Trial, -█████████ ███████, techtools, Adopt, -███████, techtools, Adopt, -███████ ███████, techtools, Assess, -███████████, techtools, Trial, -██████████ ████, techtools, Adopt, -██████████ █████, techtools, Adopt, -██████████ ███, techtools, Adopt, -███, techtools, Hold, -████████, techtools, Adopt, -███████ ██████, techtools, Trial, -█████, techtools, Trial, -███ ████████, techtools, Adopt, -████, techtools, Adopt, -█████████ ███, techtools, Trial, -████████ ███ ████████, techtools, Adopt, -████████ ███ █████, techtools, Trial, -█████ ███, techtools, Access, -██████, techtools, Trial, -████, techtools, Adopt, -███████, techtools, Adopt, -██, techtools, Adopt, - -██████████, infra, Adopt, ████████ █████████ ███ ███████ ██████████ -██████, infra, Adopt, ██████-█████████ -█████, infra, Adopt, █████████ ████████ -█████, infra, Hold, █████████ ████████ -███████, infra, Adopt, ██████████ ██████████████ ██ -██████, infra, Adopt, ███████████████ -████████, infra, Adopt, █████ ██████████ -██████ , infra, Trial, █████ ██ ████████ ████████ -███████, infra, Adopt, -██████  , infra, Adopt, -███████, infra, Adopt, -██████████, infra, Adopt, -██████   , infra, Trial, -█████████████ ███████, infra, Adopt, -██████ ███████, infra, Adopt, diff --git a/data/js/2021-06.csv b/data/js/2021-06.csv deleted file mode 100644 index b5e35451..00000000 --- a/data/js/2021-06.csv +++ /dev/null @@ -1,45 +0,0 @@ -title -QIWI JS Tech Radar -=== -date -2021-06-21 -=== -quadrant, alias -q1, lang -q2, Platforms -q3, tools -q4, tech -=== -quadrant, title -q1, Languages and frameworks -q2, Platforms -q3, Tools -q4, Techniques -=== -name, quadrant, ring, description -TypeScript, lang, Adopt, Статически типизированный ЖС -JavaScript, lang, Adopt, ЖС -Flow, lang, Hold, Статически типизированный ЖС -Nestjs, lang, Trial, Spring для TS -React, lang, Adopt, -Redux, lang, Adopt, Стейт-менеджмент провайдер -Rematch, lang, Trial, Shortcut-flow абстракция над redux -lodash, lang, Adopt, Стандартная библиотека -express, lang, Hold, Мидвары поверх http-server -emotion, lang, Trial, CSSinJS -jest, lang, Adopt, Фреймворк для unit автотестов -cypress, lang, Assess, Фреймворк для e2e тестов -Nodejs, Platforms, Adopt, -Kuber, Platforms, Adopt, -Pijma, Platforms, Trial, -Yarn, Tools, Adopt, Пакетный менеджер вместо npm -semantic-relese, Tools, Trial, Движение к CD чтобы катать семантические релизы -Travis-ci, Tools, Trial, CI для OSS -eslint, Tools, Trial, Перекатываемся tslint deprecated скоро -flp, Tools, Assess, Провайдер клиентских событий -mocha, Tools, Hold, Либа для автотестов -codeclimate, Tools, Trial, Статический анализатор кода -Monorepo, Tech, Trial, Обобщение кодовой базы на уровне домена продукта -Trunk-based Development, Tech, Adopt, Фиче-флаги вместо фич-бранчей -Гексагональная архитектура, Tech, Assess, Унификации контракта интерфейсов различных слоев приложений -OSS, Tech, Trial, Публичная разработка diff --git a/data/js/2021-07.csv b/data/js/2021-07.csv deleted file mode 100644 index 7f7c9f9a..00000000 --- a/data/js/2021-07.csv +++ /dev/null @@ -1,46 +0,0 @@ -title -QIWI JS Tech Radar -=== -date -2021-07-15 -=== -quadrant, alias -q1, lang -q2, Platforms -q3, tools -q4, tech -=== -quadrant, title -q1, Languages and frameworks -q2, Platforms -q3, Tools -q4, Techniques -=== -name, quadrant, ring, description -TypeScript, lang, Adopt, "Язык программирования, позиционируемый как средство разработки веб-приложений, расширяющее возможности JavaScript посредством введения статической типизации на уровне компилятора (транспилятора)" -JavaScript, lang, Adopt, -Flow, lang, Hold, "Статический анализатор кода и набор синтаксических конструкций, для прямого указания типа переменной" -Nestjs, lang, Trial, Spring для TS -React, lang, Adopt, "Декларативная, эффективная и гибкая JavaScript библиотека для создания пользовательских интерфейсов." -Redux, lang, hold, Стейт-менеджмент провайдер -Rematch, lang, Trial, Shortcut-flow абстракция над redux -lodash, lang, Adopt, Стандартная библиотека -express, lang, Hold, Мидвары поверх http-server -emotion, lang, Trial, CSSinJS -jest, lang, Adopt, Фреймворк для unit автотестов -cypress, lang, Assess, Фреймворк для e2e тестов -Nodejs, Platforms, Adopt, -Kuber, Platforms, Adopt, -Pijma, Platforms, Trial, -Yarn, Tools, Adopt, Пакетный менеджер вместо npm -semantic-release, Tools, Trial, Движение к CD чтобы катать семантические релизы -Travis-ci, Tools, Trial, CI для OSS -eslint, Tools, Trial, "Инструмент, который позволяет проводить анализ качества вашего кода, написанного на любом выбранном стандарте JavaScript." -flp, Tools, Assess, Провайдер клиентских событий -mocha, Tools, Hold, Либа для автотестов -codeclimate, Tools, Trial, "Статический анализатор кода https://github.com/codeclimate/codeclimate" -Monorepo, Tech, adopt, Обобщение кодовой базы на уровне домена продукта -Trunk-basedDevelopment, Tech, Adopt, Фиче-флаги вместо фич-бранчей -Гексагональная архитектура, Tech, Assess, Унификации контракта интерфейсов различных слоев приложений -OSS, Tech, adopt, "Публичная разработка https://github.com/qiwi" -masker, tools, trial, "Composite data masking utility https://github.com/qiwi/masker" diff --git a/data/js/2022-07.csv b/data/js/2022-07.csv deleted file mode 100644 index ed77f336..00000000 --- a/data/js/2022-07.csv +++ /dev/null @@ -1,60 +0,0 @@ -title -QIWI JS Tech Radar -=== -date -2022-07-25 -=== -quadrant, alias -q1, lang -q2, Platforms -q3, tools -q4, tech -=== -quadrant, title -q1, "Languages, frameworks, libs" -q2, Platforms -q3, Tools -q4, Techniques -=== -name, quadrant, ring, description -TypeScript, lang, Adopt, "TypeScript is a typed superset of JavaScript that compiles to plain JavaScript." -es2015, lang, Adopt, es2015 -es2021, lang, Trial, es2021 -Flow, lang, Hold, "Статический анализатор кода и набор синтаксических конструкций, для прямого указания типа переменной" -Nest.js, lang, Adopt, Spring для TS -React, lang, Adopt, "Декларативная, эффективная и гибкая JavaScript библиотека для создания пользовательских интерфейсов." -React Native, lang, Assess, Разработка нативных приложений для Android и iOS на React -Vue, lang, Hold, VueJS -Redux, lang, Hold, Стейт-менеджмент провайдер -Rematch, lang, Adopt, Shortcut-flow абстракция над redux -lodash, lang, Adopt, Стандартная библиотека -express, lang, Hold, Мидлвары поверх http-server -emotion, lang, Adopt, CSS in JS -jest, lang, Adopt, Фреймворк для unit автотестов -uvu, lang, Trial, «Легкая» либа для автотестирования -mocha, lang, Hold, legacy либа для автотестов -cypress, lang, Adopt, Фреймворк для e2e тестов -Nodejs 16, Platforms, Adopt, Nodejs 16 -Nodejs 18, Platforms, Trial, Nodejs 18 -bun, Platforms, Assess, "https://bun.sh/" -Kubernetes, Platforms, Adopt, "https://kubernetes.io/" -Pijma, Platforms, Adopt, "QIWI UI Kit (react 16)" -Yarn classic, Platforms, Adopt, Пакетный менеджер вместо npm -Yarn 4, Platforms, trial, yarn 4 -semantic-release, Tools, Hold, "Движение к CD, раннер семантических релизов" -multi-semantic-release, Tools, Hold, Враппер semrel для совместимости с монорепами. Меняем на zx-bulk-release -zx-semrel, Tools, Trial, "Провайдер семантических релизов, совместимый с gerrit" -Travis-ci, Tools, Hold, "CI для OSS. GH победил. Выпиливаем. И Appveyor тоже" -eslint, Tools, Adopt, "Инструмент, который позволяет проводить анализ качества вашего кода, написанного на любом выбранном стандарте JavaScript." -flp, Tools, Adopt, Провайдер клиентских событий -codeclimate, Tools, Adopt, "Статический анализатор кода https://github.com/codeclimate/codeclimate" -React Styleguidist, Tools, Hold, "https://react-styleguidist.js.org/" -Storybook, Tools, Assess, "https://storybook.js.org/" -sonar, Tools, Trial, Статический анализатор кода -masker, tools, trial, "Composite data masking utility https://github.com/qiwi/masker" -zx, tools, trial, "Замена bash" -uniconfig, tools, hold, "Декларативные конфиги для приложений. Слишком сложно получилось, выпиливаем" -Monorepo, Tech, Adopt, Обобщение кодовой базы на уровне домена продукта -Trunk-basedDevelopment, Tech, Adopt, Фиче-флаги вместо фич-бранчей -Гексагональная архитектура, Tech, Assess, Унификации контракта интерфейсов различных слоев приложений -OSS, Tech, adopt, "Публичная разработка https://github.com/qiwi" diff --git a/data/js/2023-07.csv b/data/js/2023-07.csv deleted file mode 100644 index 2b10e1ac..00000000 --- a/data/js/2023-07.csv +++ /dev/null @@ -1,75 +0,0 @@ -title -QIWI JS Tech Radar -=== -date -2023-07-27 -=== -quadrant, alias -q1, lang -q2, Platforms -q3, tools -q4, tech -=== -quadrant, title -q1, "Languages, frameworks, libs" -q2, Platforms -q3, Tools -q4, Techniques -=== -name, quadrant, ring, description -TypeScript, lang, Adopt, "TypeScript is a typed superset of JavaScript that compiles to plain JavaScript." -es2015, lang, Adopt, es2015 -es2021, lang, Trial, es2021 -Nest.js, lang, Adopt, Spring для TS -React, lang, Adopt, "Декларативная, эффективная и гибкая JavaScript библиотека для создания пользовательских интерфейсов." -emotion, lang, Adopt, CSS in JS -jest, lang, Adopt, Фреймворк для unit автотестов -lodash, lang, Adopt, Стандартная библиотека -react-scripts, lang, Adopt, Create React apps with no build configuration. -react-router, lang, Adopt, Маршрутизация в React -testing-library, lang, Adopt, Либо для тестов React компонентов -playwright, lang, Adopt, Фреймворк для e2e тестов -vite, lang, Assess, Create React apps with no build configuration. -nodejs test runner, lang, Assess, Нативный тест-раннер ноды -React Native, lang, Assess, Разработка нативных приложений для Android и iOS на React -Vue, lang, Hold, VueJS -express, lang, Hold, Мидлвары поверх http-server -uvu, lang, Hold, «Легкая» либа для автотестирования -mocha, lang, Hold, legacy либа для автотестов -cypress, lang, Hold, Фреймворк для e2e тестов -Flow, lang, Hold, "Статический анализатор кода и набор синтаксических конструкций, для прямого указания типа переменной" -enzyme, lang, Hold, Либо для тестов React компонентов -antd, lang, Hold, ui компоненты -material-ui, lang, Hold, ui компоненты -tailwindcss, lang, Hold, CSS framework -react-bootstrap, lang, Hold, CSS framework -styled-components, lang, Hold, CSS in JS -radium, lang, Hold, inline styles on React elements -Nodejs 18, Platforms, Adopt, Nodejs 18 -Nodejs 20, Platforms, Trial, Nodejs 20 -Kubernetes, Platforms, Adopt, "https://kubernetes.io/" -Pijma, Platforms, Adopt, "QIWI UI Kit (react 18)" -Yarn classic, Platforms, Adopt, Пакетный менеджер вместо npm -Yarn 4, Platforms, Adopt, yarn 4 -qiwi/nestjs-enterprise, Platforms, Adopt, Платформа модулей для работы с Nest js https://github.com/qiwi/nestjs-enterprise -eslint, Tools, Adopt, "Инструмент, который позволяет проводить анализ качества вашего кода, написанного на любом выбранном стандарте JavaScript." -prettier, Tools, Adopt, Code Formatter -flp, Tools, Adopt, Провайдер клиентских событий -codeclimate, Tools, Adopt, "Статический анализатор кода https://github.com/codeclimate/codeclimate" -zx-bulk-release, Tools, Adopt, zx-based alternative for multi-semantic-release -GithubActions, Tools, Adopt, "GitHub Actions makes it easy to automate all your software workflows, now with world-class CI/CD" -Teamcity, Tools, Adopt, TeamCity — мощный инструмент непрерывной интеграции и развертывания для разработчиков и DevOps-инженеров -sonar, Tools, Adopt, Статический анализатор кода -zx-semrel, Tools, Trial, "Провайдер семантических релизов, совместимый с gerrit" -zx, tools, trial, "Замена bash" -Storybook, Tools, Assess, "https://storybook.js.org/" -semantic-release, Tools, Hold, "Движение к CD, раннер семантических релизов" -multi-semantic-release, Tools, Hold, Враппер semrel для совместимости с монорепами. Меняем на zx-bulk-release -Travis-ci, Tools, Hold, "CI для OSS. GH победил. Выпиливаем. И Appveyor тоже" -React Styleguidist, Tools, Hold, "https://react-styleguidist.js.org/" -tslint, Tools, Hold, линтер -stylelint, Tools, Hold, css линтер -standard, Tools, Hold, линтер -jshint, Tools, Hold, линтер -Monorepo, Tech, Adopt, Обобщение кодовой базы на уровне домена продукта -OSS, Tech, adopt, "Публичная разработка https://github.com/qiwi" diff --git a/data/js/2023-09.csv b/data/js/2023-09.csv deleted file mode 100644 index 4803ab2f..00000000 --- a/data/js/2023-09.csv +++ /dev/null @@ -1,76 +0,0 @@ -title -QIWI JS Tech Radar -=== -date -2023-09-21 -=== -quadrant, alias -q1, lang -q2, Platforms -q3, tools -q4, tech -=== -quadrant, title -q1, "Languages, frameworks, libs" -q2, Platforms -q3, Tools -q4, Techniques -=== -name, quadrant, ring, description -TypeScript, lang, Adopt, "TypeScript is a typed superset of JavaScript that compiles to plain JavaScript." -es2015, lang, Adopt, es2015 -es2021, lang, Trial, es2021 -Nest.js, lang, Adopt, Spring для TS -React, lang, Adopt, "Декларативная, эффективная и гибкая JavaScript библиотека для создания пользовательских интерфейсов." -emotion, lang, Adopt, CSS in JS -jest, lang, Adopt, Фреймворк для unit автотестов -lodash, lang, Adopt, Стандартная библиотека -react-scripts, lang, Adopt, Create React apps with no build configuration. -react-router, lang, Adopt, Маршрутизация в React -testing-library, lang, Adopt, Либо для тестов React компонентов -playwright, lang, Adopt, Фреймворк для e2e тестов -vite, lang, Assess, Create React apps with no build configuration. -nodejs test runner, lang, Assess, Нативный тест-раннер ноды -React Native, lang, Assess, Разработка нативных приложений для Android и iOS на React -Next.js , lang, Assess, Фреймворк для React-приложений -Vue, lang, Hold, VueJS -express, lang, Hold, Мидлвары поверх http-server -uvu, lang, Hold, «Легкая» либа для автотестирования -mocha, lang, Hold, legacy либа для автотестов -cypress, lang, Hold, Фреймворк для e2e тестов -Flow, lang, Hold, "Статический анализатор кода и набор синтаксических конструкций, для прямого указания типа переменной" -enzyme, lang, Hold, Либо для тестов React компонентов -antd, lang, Hold, ui компоненты -material-ui, lang, Hold, ui компоненты -tailwindcss, lang, Hold, CSS framework -react-bootstrap, lang, Hold, CSS framework -styled-components, lang, Hold, CSS in JS -radium, lang, Hold, inline styles on React elements -Nodejs 18, Platforms, Adopt, Nodejs 18 -Nodejs 20, Platforms, Trial, Nodejs 20 -Kubernetes, Platforms, Adopt, "https://kubernetes.io/" -Pijma, Platforms, Adopt, "QIWI UI Kit (react 18)" -Yarn classic, Platforms, Adopt, Пакетный менеджер вместо npm -Yarn 4, Platforms, Adopt, yarn 4 -qiwi/nestjs-enterprise, Platforms, Adopt, Платформа модулей для работы с Nest js https://github.com/qiwi/nestjs-enterprise -eslint, Tools, Adopt, "Инструмент, который позволяет проводить анализ качества вашего кода, написанного на любом выбранном стандарте JavaScript." -prettier, Tools, Adopt, Code Formatter -flp, Tools, Adopt, Провайдер клиентских событий -codeclimate, Tools, Adopt, "Статический анализатор кода https://github.com/codeclimate/codeclimate" -zx-bulk-release, Tools, Adopt, zx-based alternative for multi-semantic-release -GithubActions, Tools, Adopt, "GitHub Actions makes it easy to automate all your software workflows, now with world-class CI/CD" -Teamcity, Tools, Adopt, TeamCity — мощный инструмент непрерывной интеграции и развертывания для разработчиков и DevOps-инженеров -sonar, Tools, Adopt, Статический анализатор кода -zx-semrel, Tools, Trial, "Провайдер семантических релизов, совместимый с gerrit" -zx, tools, trial, "Замена bash" -Storybook, Tools, Assess, "https://storybook.js.org/" -semantic-release, Tools, Hold, "Движение к CD, раннер семантических релизов" -multi-semantic-release, Tools, Hold, Враппер semrel для совместимости с монорепами. Меняем на zx-bulk-release -Travis-ci, Tools, Hold, "CI для OSS. GH победил. Выпиливаем. И Appveyor тоже" -React Styleguidist, Tools, Hold, "https://react-styleguidist.js.org/" -tslint, Tools, Hold, линтер -stylelint, Tools, Hold, css линтер -standard, Tools, Hold, линтер -jshint, Tools, Hold, линтер -Monorepo, Tech, Adopt, Обобщение кодовой базы на уровне домена продукта -OSS, Tech, adopt, "Публичная разработка https://github.com/qiwi" diff --git a/data/js/2023-10-17.csv b/data/js/2023-10-17.csv deleted file mode 100644 index ccd7d398..00000000 --- a/data/js/2023-10-17.csv +++ /dev/null @@ -1,79 +0,0 @@ -title -QIWI JS Tech Radar -=== -date -2023-10-17 -=== -quadrant, alias -q1, lang -q2, Platforms -q3, tools -q4, tech -=== -quadrant, title -q1, "Languages, frameworks, libs" -q2, Platforms -q3, Tools -q4, Techniques -=== -name, quadrant, ring, description -TypeScript, lang, Adopt, "TypeScript is a typed superset of JavaScript that compiles to plain JavaScript." -es2015, lang, Adopt, es2015 -es2021, lang, Trial, es2021 -Nest.js, lang, Adopt, Spring для TS -React, lang, Adopt, "Декларативная, эффективная и гибкая JavaScript библиотека для создания пользовательских интерфейсов." -emotion, lang, Adopt, CSS in JS -jest, lang, Adopt, Фреймворк для unit автотестов -lodash, lang, Adopt, Стандартная библиотека -react-scripts, lang, Adopt, Create React apps with no build configuration. -react-router, lang, Adopt, Маршрутизация в React -testing-library, lang, Adopt, Либо для тестов React компонентов -playwright, lang, Adopt, Фреймворк для e2e тестов -vite, lang, Assess, Create React apps with no build configuration. -nodejs test runner, lang, Assess, Нативный тест-раннер ноды -React Native, lang, Assess, Разработка нативных приложений для Android и iOS на React -Next.js , lang, Assess, Фреймворк для React-приложений -Vue, lang, Hold, VueJS -express, lang, Hold, Мидлвары поверх http-server -uvu, lang, Hold, «Легкая» либа для автотестирования -mocha, lang, Hold, legacy либа для автотестов -cypress, lang, Hold, Фреймворк для e2e тестов -Flow, lang, Hold, "Статический анализатор кода и набор синтаксических конструкций, для прямого указания типа переменной" -enzyme, lang, Hold, Либо для тестов React компонентов -antd, lang, Hold, ui компоненты -material-ui, lang, Hold, ui компоненты -tailwindcss, lang, Hold, CSS framework -react-bootstrap, lang, Hold, CSS framework -styled-components, lang, Hold, CSS in JS -radium, lang, Hold, inline styles on React elements -Nodejs 18, Platforms, Adopt, Nodejs 18 -Nodejs 20, Platforms, Trial, Nodejs 20 -Kubernetes, Platforms, Adopt, "https://kubernetes.io/" -Pijma, Platforms, Adopt, "QIWI UI Kit (react 18)" -Yarn classic, Platforms, Adopt, Пакетный менеджер вместо npm -Yarn 4, Platforms, Adopt, yarn 4 -qiwi/nestjs-enterprise, Platforms, Adopt, Платформа модулей для работы с Nest js https://github.com/qiwi/nestjs-enterprise -eslint, Tools, Adopt, "Инструмент, который позволяет проводить анализ качества вашего кода, написанного на любом выбранном стандарте JavaScript." -prettier, Tools, Adopt, Code Formatter -flp, Tools, Adopt, Провайдер клиентских событий -codeclimate, Tools, Adopt, "Статический анализатор кода https://github.com/codeclimate/codeclimate" -zx-bulk-release, Tools, Adopt, zx-based alternative for multi-semantic-release -GithubActions, Tools, Adopt, "GitHub Actions makes it easy to automate all your software workflows, now with world-class CI/CD" -Teamcity, Tools, Adopt, TeamCity — мощный инструмент непрерывной интеграции и развертывания для разработчиков и DevOps-инженеров -sonar, Tools, Adopt, Статический анализатор кода -zx-semrel, Tools, Trial, "Провайдер семантических релизов, совместимый с gerrit" -zx, tools, trial, "Замена bash" -Storybook, Tools, Assess, "https://storybook.js.org/" -semantic-release, Tools, Hold, "Движение к CD, раннер семантических релизов" -multi-semantic-release, Tools, Hold, Враппер semrel для совместимости с монорепами. Меняем на zx-bulk-release -Travis-ci, Tools, Hold, "CI для OSS. GH победил. Выпиливаем. И Appveyor тоже" -React Styleguidist, Tools, Hold, "https://react-styleguidist.js.org/" -tslint, Tools, Hold, линтер -stylelint, Tools, Hold, css линтер -standard, Tools, Hold, линтер -jshint, Tools, Hold, линтер -Monorepo, Tech, Adopt, Обобщение кодовой базы на уровне домена продукта -OSS, Tech, adopt, "Публичная разработка https://github.com/qiwi" -Typeorm, lang, Assess, ORM -Sequelize, lang, Assess, ORM -Prisma, lang, Assess, ORM diff --git a/data/js/2023-10-23.csv b/data/js/2023-10-23.csv deleted file mode 100644 index e42d69a0..00000000 --- a/data/js/2023-10-23.csv +++ /dev/null @@ -1,85 +0,0 @@ -title -QIWI JS Tech Radar -=== -date -2023-10-23 -=== -quadrant, alias -q1, lang -q2, Platforms -q3, tools -q4, tech -=== -quadrant, title -q1, "Languages, frameworks, libs" -q2, Platforms -q3, Tools -q4, Techniques -=== -name, quadrant, ring, description -TypeScript, lang, Adopt, "TypeScript is a typed superset of JavaScript that compiles to plain JavaScript." -es2015, lang, Adopt, es2015 -es2021, lang, Trial, es2021 -Nest.js, lang, Adopt, Spring для TS -React, lang, Adopt, "Декларативная, эффективная и гибкая JavaScript библиотека для создания пользовательских интерфейсов." -emotion, lang, Adopt, CSS in JS -jest, lang, Adopt, Фреймворк для unit автотестов -lodash, lang, Adopt, Стандартная библиотека -react-scripts, lang, Adopt, Create React apps with no build configuration. -react-router, lang, Adopt, Маршрутизация в React -testing-library, lang, Adopt, Либо для тестов React компонентов -playwright, lang, Adopt, Фреймворк для e2e тестов -vite, lang, Assess, Create React apps with no build configuration. -nodejs test runner, lang, Assess, Нативный тест-раннер ноды -React Native, lang, Assess, Разработка нативных приложений для Android и iOS на React -Next.js , lang, Assess, Фреймворк для React-приложений -Vue, lang, Hold, VueJS -express, lang, Hold, Мидлвары поверх http-server -uvu, lang, Hold, «Легкая» либа для автотестирования -mocha, lang, Hold, legacy либа для автотестов -cypress, lang, Hold, Фреймворк для e2e тестов -Flow, lang, Hold, "Статический анализатор кода и набор синтаксических конструкций, для прямого указания типа переменной" -enzyme, lang, Hold, Либо для тестов React компонентов -antd, lang, Hold, ui компоненты -material-ui, lang, Hold, ui компоненты -tailwindcss, lang, Hold, CSS framework -react-bootstrap, lang, Hold, CSS framework -styled-components, lang, Hold, CSS in JS -radium, lang, Hold, inline styles on React elements -Nodejs 18, Platforms, Adopt, Nodejs 18 -Nodejs 20, Platforms, Trial, Nodejs 20 -Kubernetes, Platforms, Adopt, "https://kubernetes.io/" -Pijma, Platforms, Adopt, "QIWI UI Kit (react 18)" -Yarn classic, Platforms, Adopt, Пакетный менеджер вместо npm -Yarn 4, Platforms, Adopt, yarn 4 -qiwi/nestjs-enterprise, Platforms, Adopt, Платформа модулей для работы с Nest js https://github.com/qiwi/nestjs-enterprise -eslint, Tools, Adopt, "Инструмент, который позволяет проводить анализ качества вашего кода, написанного на любом выбранном стандарте JavaScript." -prettier, Tools, Adopt, Code Formatter -flp, Tools, Adopt, Провайдер клиентских событий -codeclimate, Tools, Adopt, "Статический анализатор кода https://github.com/codeclimate/codeclimate" -zx-bulk-release, Tools, Adopt, zx-based alternative for multi-semantic-release -GithubActions, Tools, Adopt, "GitHub Actions makes it easy to automate all your software workflows, now with world-class CI/CD" -Teamcity, Tools, Adopt, TeamCity — мощный инструмент непрерывной интеграции и развертывания для разработчиков и DevOps-инженеров -sonar, Tools, Adopt, Статический анализатор кода -zx-semrel, Tools, Trial, "Провайдер семантических релизов, совместимый с gerrit" -zx, tools, trial, "Замена bash" -Storybook, Tools, Assess, "https://storybook.js.org/" -semantic-release, Tools, Hold, "Движение к CD, раннер семантических релизов" -multi-semantic-release, Tools, Hold, Враппер semrel для совместимости с монорепами. Меняем на zx-bulk-release -Travis-ci, Tools, Hold, "CI для OSS. GH победил. Выпиливаем. И Appveyor тоже" -React Styleguidist, Tools, Hold, "https://react-styleguidist.js.org/" -tslint, Tools, Hold, линтер -stylelint, Tools, Hold, css линтер -standard, Tools, Hold, линтер -jshint, Tools, Hold, линтер -Monorepo, Tech, Adopt, Обобщение кодовой базы на уровне домена продукта -OSS, Tech, adopt, "Публичная разработка https://github.com/qiwi" -Typeorm, lang, Assess, ORM -Sequelize, lang, Assess, ORM -Prisma, lang, Assess, ORM -Redux, lang, Hold, State manager. Too much boilerplate. We use wrappers instead -Rematch, lang, Hold, Wrapper for redux. Hasn't been updated since 2021 -React-query, lang, Assess, State and query manager -Zustand, lang, Assess, State manager -@reduxjs/toolkit, lang, Assess, Official wrapper for redux -Mobx, lang, Assess, State manager diff --git a/data/ops/2022-07.csv b/data/ops/2022-07.csv deleted file mode 100644 index a56b4a8d..00000000 --- a/data/ops/2022-07.csv +++ /dev/null @@ -1,97 +0,0 @@ -title -QIWI OPS Tech Radar -=== -date -2022-07-01 -=== -quadrant, alias -q1, langlib -q2, data -q3, infra -q4, techtools -=== -quadrant, title -q1, Languages and frameworks -q2, Data management -q3, Infrastructure -q4, Tools and Techniques -=== -name, quadrant, ring, description -Java, langlib, Adopt, Обычная Java -GoLang, langlib, Assess, Системный язык программирования -Python 3, langlib, Adopt, Python -Flask, langlib, Adopt, -FastApi, langlib, Trial, -Logback, langlib, Adopt, Библиотека для логирования -Log4j, langlib, Hold, Библиотека для логирования -.NET Core 6 LTS, langlib, Adopt, .NET -.NET Core 5, langlib, Hold, .NET -ASP.NET, langlib, Adopt, Web-фреймворк -MSTest2, langlib, Adopt, Фреймворк для тестов .NET -App.Metrics, langlib, Adopt, Измерение и отправка метрик .NET -Lua, langlib, Adopt, - -OracleDB, data, Adopt, Одна из основных баз данных -MsSQL, data, Adopt, SQL база данных -PostgreSQL, data, Adopt, Основная база данных -Patroni, data, Adopt, PostgreSQL в кластере -CockroachDB, data, Assess, Распределенная SQL-база данных -Clickhouse, data, Adopt, Колоночная база данных -Elasticsearch, data, Adopt, -Hazelcast, data, Assess, In-Memory распределенная база данных -MongoDB, data, Assess, Документоориентированная база данных -Kafka, data, Adopt, Распределенная шина для поточно обработки данных -Cassandra, data, Adopt, Масштабируемая распределенная база данных -Victoriametrics, data, Adopt, - -SonarQube, techtools, Adopt, -Graphite, techtools, Adopt, -Asterisk, techtools, Adopt, -Freeswitch, techtools, Adopt, -Proxysql, techtools, Adopt, -Metabase, techtools, Adopt, -VueJS, techtools, Trial, -Librenms, techtools, Adopt, -Nats, techtools, Trial, -Stor2rrd, techtools, Adopt, -Ibm spectrum control, techtools, Trial, -Commvault Simpana, techtools, Adopt, -Graylog, techtools, Adopt, -Noction netflow, techtools, Assess, -SCCM, techtools, Adopt, -Azure ARC, techtools, Access, -ADFS, techtools, Adopt, -AzureAD, techtools, Adopt, -AD, techtools, Adopt, - -Kubernetes, infra, Adopt, Основная платформа для запуска приложений -Consul, infra, Adopt, Сервис-дискавери -Vault, infra, Adopt, Хранилище секретов -Hiera, infra, Hold, Хранилище секретов -Puppet, infra, Adopt, Управление конфигурациями VM -Docker, infra, Adopt, Контейренизация -TeamCity, infra, Adopt, CI/CD инструмент -ArgoCD, infra, Trial, CD и IaC для Kubernetes -Grafana, infra, Adopt, -Kibana, infra, Adopt, -Zabbix, infra, Adopt, -Prometheus, infra, Adopt, -Zipkin, infra, Trial, -Clickhouse, infra, Adopt, -Telegraf, infra, Adopt, -Jitsi, infra, Assess, -VMware, infra, Adopt, -Kamailio, infra, Trial, -Cisco Call Manager, infra, Hold, -Cisco Contact Center, infra, Hold, -Janus, infra, Trial, -Sentry, infra, Assess, -MS Teams, infra, Trial, -Apple Business Manager, infra, Trial, -Onedrive for business, infra, Adopt, -Sharepoint Online, infra, Trial, -Microsoft Teams, infra, Adopt, -Office 365, infra, Adopt, -Windows 365, infra, Access, -Exchange 2019, infra, Adopt, -Exchange 2016, infra, Hold, \ No newline at end of file diff --git a/data/qa/2021-12.csv b/data/qa/2021-12.csv deleted file mode 100644 index 0416c95a..00000000 --- a/data/qa/2021-12.csv +++ /dev/null @@ -1,65 +0,0 @@ -title -QIWI QA Tech Radar -=== -date -2021-12-16 -=== -quadrant, alias -q1, lang -q2, platforms -q3, tools -q4, tech -=== -quadrant, title -q1, Languages and frameworks -q2, Platforms and infrastructure -q3, Tools -q4, Techniques -=== -name, quadrant, ring, description -Java 8, lang, Adopt, Обычная Java -Kotlin, lang, Adopt, "Статически типизированный, объектно-ориентированный язык программирования, работающий поверх Java Virtual Machine" -Go, lang, Adopt, "Компилируемый многопоточный язык программирования, разработанный внутри компании Google" -jest, lang, Adopt, Фреймворк для unit автотестов -Cypress, lang, Assess, Фреймворк для e2e тестов -Groovy, lang, Adopt, "Объектно-ориентированный язык программирования, разработанный для платформы Java как дополнение к языку Java с возможностями Python, Ruby и Smalltalk." -Maven, lang, Assess, "Фреймворк для автоматизации сборки проектов на основе описания их структуры в файлах на языке POM, являющемся подмножеством XML" -Swagger, lang, Adopt, Фреймворк описания API -Spock, lang, Adopt, Фреймворк for Java and Groovy applications. -Kubernetes, platforms, Adopt, Основная платформа для запуска приложений -Docker, platforms, Adopt, Контейренизация -TeamCity, platforms, Adopt, CI/CD инструмент -Tekton, platforms, Access, Легковесный CI инструмент -SonarQube, platforms, TRIAL, Платформа с открытым исходным кодом для непрерывного анализа и измерения качества программного кода. -Moon, tools, Adopt, "Организация ручного и автоматизированного тестирования веб-приложений в настольных и мобильных браузерах на основе протокола Selenium WebDriver, работающее в кластере Kubernetes или Openshift" -Appium, tools, Adopt, Tool for automation UI tests -Selenium, tools, Adopt, Tool for automation UI tests -Confluence, tools, Adopt, Wiki -Github, tools, Adopt, Система контроля версий исползуемая в основном frontend'ового кода. -Gerrit, tools, Adopt, Система контроля версий. -Intellij idea, tools, Adopt, IDE для разработки на Java/Kotlin -Jira, tools, Adopt, Bug tracker -Kaiten, tools, Adopt, Система управления задачами -Kibana, tools, Adopt, Визуализация логов -TeamCity, tools, Adopt, Сервер для CI/CD -TestFlight, tools, Adopt, Share test builds for testers -Grafana, tools, Adopt, Решение для построения дашбордов и мониторинга -Testrail, tools, Adopt, Управление тест-кейсами для команд QA -Postman, tools, Adopt, Инструмент для тестирования API -Browserstack, tools, TRIAL, Облачная платформа для веб-тестирования и тестирования мобильных устройств -CodeNarc, tools, Adopt, инструмент статического анализа исходного кода Groovy -Fets, tools, Adopt, Bug tracker -Gatling, tools, Adopt, Инструмент для тестирования нагрузки и производительности с открытым исходным кодом -Gradle, tools, Adopt, Система автоматической сборки -Charles, tools, Adopt, "Кроссплатформенное приложение прокси-сервера отладки HTTP, написанное на Java" -Модульная архитектура, tech, Adopt, -Continuous delivery, tech, Adopt, "С помощью teamcity и прохождения автоматических автотестов" -Continuous integration, tech, Adopt, "Каждый пулл реквест проверяется автоматическими чеками" -Continuous deployment, tech, Adopt, подход -REST, tech, Adopt, Архитектурный стиль взаимодействия компонентов распределённого приложения в сети. -SOA, tech, Adopt, Service-oriented architecture -SOLID, tech, Adopt, Мнемонический акроним для 5 основных принципов объектно-ориентированного программирования и проектирования. -UI tests, tech, Adopt, фича покрывается UI тестами -Unit tests, tech, Adopt, фича покрывается unit тестами -Integration tests, tech, Adopt, фича покрывается интеграционными тестами -Acceptance tests, tech, Adopt, фича покрывается приемочными тестами diff --git a/data/qa/2023-02.csv b/data/qa/2023-02.csv deleted file mode 100644 index 46ff9a30..00000000 --- a/data/qa/2023-02.csv +++ /dev/null @@ -1,75 +0,0 @@ -title -QIWI QA Tech Radar -=== -date -2023-02-03 -=== -quadrant, alias -q1, lang -q2, platforms -q3, tools -q4, tech -=== -quadrant, title -q1, Languages and frameworks -q2, Platforms and infrastructure -q3, Tools -q4, Techniques -=== -name, quadrant, ring, description -Java, lang, Adopt, Обычная Java -Kotlin, lang, Adopt, "Статически типизированный, объектно-ориентированный язык программирования, работающий поверх Java Virtual Machine" -TypeScript, lang, Adopt, "TypeScript — язык программирования, позиционируемый как средство разработки веб-приложений, расширяющее возможности JavaScript" -Go, lang, Adopt, "Компилируемый многопоточный язык программирования, разработанный внутри компании Google" -jest, lang, Adopt, Фреймворк для unit автотестов -Cypress, lang, Hold, Фреймворк для e2e тестов -C#, lang, Hold, язык программирования -Groovy, lang, Adopt, "Объектно-ориентированный язык программирования, разработанный для платформы Java как дополнение к языку Java с возможностями Python, Ruby и Smalltalk." -Kubernetes, platforms, Adopt, Основная платформа для запуска приложений -Docker, platforms, Adopt, Контейренизация -TeamCity, platforms, Adopt, CI/CD инструмент -Tekton, platforms, Access, Легковесный CI инструмент -SonarQube, platforms, Adopt, Платформа с открытым исходным кодом для непрерывного анализа и измерения качества программного кода -Moon, tools, Adopt, "Организация ручного и автоматизированного тестирования веб-приложений в настольных и мобильных браузерах на основе протокола Selenium WebDriver, работающее в кластере Kubernetes или Openshift" -Appium, tools, Hold, Tool for automation UI tests -Cucumber, tools, Hold, Tool for automation UI tests -PlayWright, tools, Adopt, Tool for automation UI tests -Selenium, tools, Adopt, Tool for automation UI tests -JUnit, tools, Adopt, Среда тестирования -apiDoc, tools, Adopt, Встроенная документация для вебинтерфейса Restful -TestNG, tools, Adopt, Среда тестирования -NUnit, tools, Adopt, Среда тестирования -Confluence, tools, Adopt, Wiki -Swagger, tools, Adopt, Фреймворк описания API -Miro, tools, Adopt, Wiki -Github, tools, Hold, Система контроля версий исползуемая в основном frontend'ового кода -Gerrit, tools, Adopt, Система контроля версий. -Intellij idea, tools, Adopt, IDE для разработки на Java/Kotlin -Jira, tools, Hold, Bug tracker -Kaiten, tools, Adopt, Система управления задачами -Kibana, tools, Adopt, Визуализация логов -TeamCity, tools, Adopt, Сервер для CI/CD -TestFlight, tools, Adopt, Share test builds for testers -Grafana, tools, Adopt, Решение для построения дашбордов и мониторинга -Testrail, tools, Hold, Управление тест-кейсами для команд QA -Postman, tools, Adopt, Инструмент для тестирования API -Browserstack, tools, Adopt, Облачная платформа для веб-тестирования и тестирования мобильных устройств -CodeNarc, tools, Adopt, инструмент статического анализа исходного кода Groovy -Fets, tools, Adopt, Bug tracker -Gatling, tools, Adopt, Инструмент для тестирования нагрузки и производительности с открытым исходным кодом -Gradle, tools, Adopt, Система автоматической сборки -Charles, tools, Adopt, "Кроссплатформенное приложение прокси-сервера отладки HTTP, написанное на Java" -Continuous delivery, tech, Adopt, "С помощью teamcity и прохождения автоматических автотестов" -Native API tests, tech, Adopt, Нативное тестирование API -Native UI tests, tech, Adopt, Нативное тестирования для UI тестов -BDD, tech, Adopt, Методология разработки ПО -Continuous integration, tech, Adopt, "Каждый пулл реквест проверяется автоматическими чеками" -Continuous deployment, tech, Adopt, Практика автоматизации всего процесса релиза ПО -REST, tech, Adopt, Архитектурный стиль взаимодействия компонентов распределённого приложения в сети. -SOA, tech, Adopt, Service-oriented architecture -SOLID, tech, Adopt, Мнемонический акроним для 5 основных принципов объектно-ориентированного программирования и проектирования. -UI tests, tech, Adopt, фича покрывается UI тестами -Unit tests, tech, Adopt, фича покрывается unit тестами -Integration tests, tech, Adopt, фича покрывается интеграционными тестами -Acceptance tests, tech, Adopt, фича покрывается приемочными тестами - diff --git a/data/qa/2023-07.csv b/data/qa/2023-07.csv deleted file mode 100644 index 01a34b03..00000000 --- a/data/qa/2023-07.csv +++ /dev/null @@ -1,76 +0,0 @@ -title -QIWI QA Tech Radar -=== -date -2023-07-12 -=== -quadrant, alias -q1, lang -q2, platforms -q3, tools -q4, tech -=== -quadrant, title -q1, Languages and frameworks -q2, Platforms and infrastructure -q3, Tools -q4, Techniques -=== -name, quadrant, ring, description -Java 8, lang, Hold, Обычная Java -Java 11, lang, Adopt, Актуальная LTS Java -Kotlin, lang, Adopt, "Статически типизированный, объектно-ориентированный язык программирования, работающий поверх Java Virtual Machine" -TypeScript, lang, Adopt, "TypeScript — язык программирования, позиционируемый как средство разработки веб-приложений, расширяющее возможности JavaScript" -Go, lang, Adopt, "Компилируемый многопоточный язык программирования, разработанный внутри компании Google" -jest, lang, Adopt, Фреймворк для unit автотестов -Cypress, lang, Hold, Фреймворк для e2e тестов -C#, lang, Hold, язык программирования -Groovy, lang, Adopt, "Объектно-ориентированный язык программирования, разработанный для платформы Java как дополнение к языку Java с возможностями Python, Ruby и Smalltalk." -Kubernetes, platforms, Adopt, Основная платформа для запуска приложений -Docker, platforms, Adopt, Контейренизация -TeamCity, platforms, Adopt, CI/CD инструмент -Tekton, platforms, Access, Легковесный CI инструмент -SonarQube, platforms, Adopt, Платформа с открытым исходным кодом для непрерывного анализа и измерения качества программного кода -Moon, tools, Adopt, "Организация ручного и автоматизированного тестирования веб-приложений в настольных и мобильных браузерах на основе протокола Selenium WebDriver, работающее в кластере Kubernetes или Openshift" -Appium, tools, Hold, Tool for automation UI tests -Cucumber, tools, Hold, Tool for automation UI tests -PlayWright, tools, Adopt, Tool for automation UI tests -Selenium, tools, Adopt, Tool for automation UI tests -JUnit, tools, Adopt, Среда тестирования -apiDoc, tools, Adopt, Встроенная документация для вебинтерфейса Restful -TestNG, tools, Adopt, Среда тестирования -NUnit, tools, Adopt, Среда тестирования -Confluence, tools, Adopt, Wiki -Swagger, tools, Adopt, Фреймворк описания API -Miro, tools, Adopt, Wiki -Github, tools, Hold, Система контроля версий исползуемая в основном frontend'ового кода -Gerrit, tools, Adopt, Система контроля версий. -Intellij idea, tools, Adopt, IDE для разработки на Java/Kotlin -Jira, tools, Hold, Bug tracker -Kaiten, tools, Adopt, Система управления задачами -Kibana, tools, Adopt, Визуализация логов -TeamCity, tools, Adopt, Сервер для CI/CD -TestFlight, tools, Adopt, Share test builds for testers -Grafana, tools, Adopt, Решение для построения дашбордов и мониторинга -Testrail, tools, Hold, Управление тест-кейсами для команд QA -Postman, tools, Adopt, Инструмент для тестирования API -Browserstack, tools, Adopt, Облачная платформа для веб-тестирования и тестирования мобильных устройств -CodeNarc, tools, Adopt, инструмент статического анализа исходного кода Groovy -Fets, tools, Adopt, Bug tracker -Gatling, tools, Adopt, Инструмент для тестирования нагрузки и производительности с открытым исходным кодом -Gradle, tools, Adopt, Система автоматической сборки -Charles, tools, Adopt, "Кроссплатформенное приложение прокси-сервера отладки HTTP, написанное на Java" -Continuous delivery, tech, Adopt, "С помощью teamcity и прохождения автоматических автотестов" -Native API tests, tech, Adopt, Нативное тестирование API -Native UI tests, tech, Adopt, Нативное тестирования для UI тестов -BDD, tech, Adopt, Методология разработки ПО -Continuous integration, tech, Adopt, "Каждый пулл реквест проверяется автоматическими чеками" -Continuous deployment, tech, Adopt, Практика автоматизации всего процесса релиза ПО -REST, tech, Adopt, Архитектурный стиль взаимодействия компонентов распределённого приложения в сети. -SOA, tech, Adopt, Service-oriented architecture -SOLID, tech, Adopt, Мнемонический акроним для 5 основных принципов объектно-ориентированного программирования и проектирования. -UI tests, tech, Adopt, фича покрывается UI тестами -Unit tests, tech, Adopt, фича покрывается unit тестами -Integration tests, tech, Adopt, фича покрывается интеграционными тестами -Acceptance tests, tech, Adopt, фича покрывается приемочными тестами - diff --git a/img/radar.png b/img/radar.png deleted file mode 100644 index 2214233ea31dc23cde7e67674779750f00224095..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 516216 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 z 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

|UPukSbq(8xklzyL9?(=^3+hPg@-9CCTm4m~t) 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 *ZwD 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 z

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
+

+ <- {item.title} +

+

{item.description}

+
+ ) +} diff --git a/src/main/resources/webapp/src/ui/item/index.ts b/src/main/resources/webapp/src/ui/item/index.ts new file mode 100644 index 00000000..8976b770 --- /dev/null +++ b/src/main/resources/webapp/src/ui/item/index.ts @@ -0,0 +1 @@ +export * from './Item' diff --git a/src/main/resources/webapp/src/ui/item/item.module.css b/src/main/resources/webapp/src/ui/item/item.module.css new file mode 100644 index 00000000..04929a04 --- /dev/null +++ b/src/main/resources/webapp/src/ui/item/item.module.css @@ -0,0 +1,11 @@ +.main { + padding: 2rem; + min-height: 100vh; + width: 100%; + max-width: var(--max-width); + margin: 0 auto; +} + +.main h1 { + padding-bottom: 2rem; +} diff --git a/src/main/resources/webapp/src/ui/scopes/Scopes.tsx b/src/main/resources/webapp/src/ui/scopes/Scopes.tsx new file mode 100644 index 00000000..0e06eb66 --- /dev/null +++ b/src/main/resources/webapp/src/ui/scopes/Scopes.tsx @@ -0,0 +1,38 @@ +import { types } from '@qiwi/tech-radar' + +import Link from 'next/link' + +import styles from './scopes.module.css' + +export interface ScopesProps { + radar: types.ScopesRadar + baseHref?: string +} + +export const Scopes = ({ radar, baseHref = '' }: ScopesProps) => ( +
+

+ {baseHref ? ( + <> + <- {radar.title} + + ) : ( + radar.title + )} +

+
+ {radar.scopes.map((scope) => ( + +

+ {scope.title} -> +

+

{scope.description}

+ + ))} +
+
+) diff --git a/src/main/resources/webapp/src/ui/scopes/index.ts b/src/main/resources/webapp/src/ui/scopes/index.ts new file mode 100644 index 00000000..cd7582c8 --- /dev/null +++ b/src/main/resources/webapp/src/ui/scopes/index.ts @@ -0,0 +1 @@ +export * from './Scopes' diff --git a/src/main/resources/webapp/src/ui/scopes/scopes.module.css b/src/main/resources/webapp/src/ui/scopes/scopes.module.css new file mode 100644 index 00000000..fb8c8df3 --- /dev/null +++ b/src/main/resources/webapp/src/ui/scopes/scopes.module.css @@ -0,0 +1,83 @@ +.main { + padding: 2rem; + min-height: 100vh; + width: 100%; + max-width: var(--max-width); + margin: 0 auto; +} + +.main h1 { + padding-bottom: 2rem; +} + +.grid { + display: grid; + grid-template-columns: repeat(4, 25%); + width: 100%; +} + +.card { + padding: 1rem; + border-radius: var(--border-radius); + background: rgba(var(--card-rgb), 0); + border: 1px solid rgba(var(--card-border-rgb), 0); + transition: background 200ms, border 200ms; +} + +.card span { + display: inline-block; + transition: transform 200ms; +} + +.card h2 { + font-weight: 600; + margin-bottom: 0.7rem; +} + +.card p { + margin: 0; + opacity: 0.6; + font-size: 0.9rem; + line-height: 1.5; + max-width: 30ch; +} + +@media (hover: hover) and (pointer: fine) { + .card:hover { + background: rgba(var(--card-rgb), 0.1); + border: 1px solid rgba(var(--card-border-rgb), 0.15); + } + + .card:hover span { + transform: translateX(4px); + } +} + +@media (prefers-reduced-motion) { + .card:hover span { + transform: none; + } +} + +@media (max-width: 1201px) { + .grid { + grid-template-columns: repeat(2, 50%); + } +} + +@media (max-width: 701px) { + .grid { + grid-template-columns: 1fr; + margin-bottom: 120px; + max-width: 320px; + text-align: center; + } + + .card { + padding: 1rem 2.5rem; + } + + .card h2 { + margin-bottom: 0.5rem; + } +} diff --git a/src/main/resources/webapp/src/ui/sectors/Radar.tsx b/src/main/resources/webapp/src/ui/sectors/Radar.tsx new file mode 100644 index 00000000..fe5c7c60 --- /dev/null +++ b/src/main/resources/webapp/src/ui/sectors/Radar.tsx @@ -0,0 +1,59 @@ +import { useMemo } from 'react' + +import { api, types } from '@qiwi/tech-radar' + +import Link from 'next/link' + +import styles from './radar.module.css' + +export interface RadarProps { + radar: types.SectorsRadar + baseHref?: string +} + +export const Radar = ({ radar, baseHref = '' }: RadarProps) => { + const { size, sectors } = useMemo(() => api.getSvgRadar(radar), [radar]) + return ( + + + {sectors.map((sector) => ( + + + + + + + + + + + {sector.title} + + {sector.statuses.map((status) => ( + + + + + + {status.title.toUpperCase()} + + + {status.items.map((item) => ( + + + {item.title} + + + ))} + + ))} + + ))} + + + ) +} diff --git a/src/main/resources/webapp/src/ui/sectors/Sectors.tsx b/src/main/resources/webapp/src/ui/sectors/Sectors.tsx new file mode 100644 index 00000000..7c5c5495 --- /dev/null +++ b/src/main/resources/webapp/src/ui/sectors/Sectors.tsx @@ -0,0 +1,30 @@ +import { types } from '@qiwi/tech-radar' + +import Link from 'next/link' + +import { Radar } from './Radar' +import styles from './sectors.module.css' +import { Table } from './Table' + +export interface SectorsProps { + radar: types.SectorsRadar + baseHref?: string +} + +export const Sectors = ({ radar, baseHref = '' }: SectorsProps) => { + return ( +
+

+ {baseHref ? ( + <> + <- {radar.title} + + ) : ( + radar.title + )} +

+ + + + ) +} diff --git a/src/main/resources/webapp/src/ui/sectors/Table.tsx b/src/main/resources/webapp/src/ui/sectors/Table.tsx new file mode 100644 index 00000000..be665490 --- /dev/null +++ b/src/main/resources/webapp/src/ui/sectors/Table.tsx @@ -0,0 +1,53 @@ +import { types } from '@qiwi/tech-radar' + +import Link from 'next/link' + +import styles from './table.module.css' + +export interface TableProps { + radar: types.SectorsRadar + baseHref?: string +} + +export const Table = ({ radar, baseHref = '' }: TableProps) => { + const { sectors, statuses, items } = radar + return ( +
+ {sectors.map((sector, index) => { + const sectorItems = items.filter((item) => item.sector === sector.name) + if (sectorItems.length === 0) { + return null + } + return ( +
+

{sector.title}

+
+ {statuses.map((status, jndex) => { + const statusItems = sectorItems.filter( + (item) => item.status === status.name, + ) + if (statusItems.length === 0) { + return null + } + return ( +
+

{status.title}

+
+ {statusItems.map((item, kndex) => ( +

+ + {item.title} + +

+ ))} +
+
+ ) + })} +
+
+ ) + })} +
+ ) +} diff --git a/src/main/resources/webapp/src/ui/sectors/index.ts b/src/main/resources/webapp/src/ui/sectors/index.ts new file mode 100644 index 00000000..5feaee05 --- /dev/null +++ b/src/main/resources/webapp/src/ui/sectors/index.ts @@ -0,0 +1 @@ +export * from './Sectors' diff --git a/src/main/resources/webapp/src/ui/sectors/radar.module.css b/src/main/resources/webapp/src/ui/sectors/radar.module.css new file mode 100644 index 00000000..6ac0e2dd --- /dev/null +++ b/src/main/resources/webapp/src/ui/sectors/radar.module.css @@ -0,0 +1,6 @@ +.radar { + display: block; + margin: 0 auto; + padding-bottom: 1rem; + max-width: 700px; +} diff --git a/src/main/resources/webapp/src/ui/sectors/sectors.module.css b/src/main/resources/webapp/src/ui/sectors/sectors.module.css new file mode 100644 index 00000000..04929a04 --- /dev/null +++ b/src/main/resources/webapp/src/ui/sectors/sectors.module.css @@ -0,0 +1,11 @@ +.main { + padding: 2rem; + min-height: 100vh; + width: 100%; + max-width: var(--max-width); + margin: 0 auto; +} + +.main h1 { + padding-bottom: 2rem; +} diff --git a/src/main/resources/webapp/src/ui/sectors/table.module.css b/src/main/resources/webapp/src/ui/sectors/table.module.css new file mode 100644 index 00000000..09ffe013 --- /dev/null +++ b/src/main/resources/webapp/src/ui/sectors/table.module.css @@ -0,0 +1,33 @@ +.sectors { + display: grid; + width: 100%; + grid-template-columns: repeat(4, 25%); +} + +.sector { + padding: 1rem; +} + +.sector h2 { + padding: 1rem 0; +} + +.sector h3 { + padding: 1rem 0; +} + +.section p { + padding: 0.5rem 0; +} + +@media (max-width: 1201px) { + .sectors { + grid-template-columns: repeat(2, 50%); + } +} + +@media (max-width: 701px) { + .sectors { + grid-template-columns: 1fr; + } +} diff --git a/src/main/resources/webapp/tsconfig.json b/src/main/resources/webapp/tsconfig.json new file mode 100644 index 00000000..9f8c4ed7 --- /dev/null +++ b/src/main/resources/webapp/tsconfig.json @@ -0,0 +1,33 @@ +{ + "compilerOptions": { + "lib": ["dom", "dom.iterable", "esnext"], + "allowJs": true, + "skipLibCheck": true, + "strict": false, + "forceConsistentCasingInFileNames": true, + "noEmit": true, + "incremental": true, + "esModuleInterop": true, + "module": "esnext", + "moduleResolution": "node", + "resolveJsonModule": true, + "isolatedModules": true, + "jsx": "preserve", + "plugins": [ + { + "name": "next" + } + ], + "paths": { + "@qiwi/tech-radar": ["./src", "../../ts"] + } + }, + "include": [ + "next-env.d.ts", + ".next/types/**/*.ts", + "**/*.ts", + "**/*.tsx", + "build/types/**/*.ts" + ], + "exclude": ["node_modules"] +} diff --git a/src/main/server/index.js b/src/main/server/index.js deleted file mode 100644 index 69bfa4b0..00000000 --- a/src/main/server/index.js +++ /dev/null @@ -1,17 +0,0 @@ -import finalhandler from 'finalhandler' -import http from 'node:http' -import serveStatic from 'serve-static' - -// Serve up public folder -const serve = serveStatic('dist', { index: ['index.html', 'index.htm'] }) - -// Create server -const server = http.createServer(function onRequest(req, res) { - console.log(req.url) - req.url = req.url.replace('/tech-radar', '/') - serve(req, res, finalhandler(req, res)) -}) - -// Listen -server.listen(3000) -console.log('http://localhost:3000/') diff --git a/src/main/tpl/_data/settings.json b/src/main/tpl/_data/settings.json deleted file mode 100644 index 6cb2684a..00000000 --- a/src/main/tpl/_data/settings.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "svg_id": "radar", - "width": 1450, - "height": 1050, - "colors": { - "background": "#fff", - "grid": "#dddde0", - "inactive": "#ddd" - }, - "rings": [ - { "name": "ADOPT", "color": "#93c47d", "id": "adopt" }, - { "name": "TRIAL", "color": "#93d2c2", "id": "trial" }, - { "name": "ASSESS", "color": "#fbdb84", "id": "assess" }, - { "name": "HOLD", "color": "#efafa9", "id": "hold" } - ], - "print_layout": true -} diff --git a/src/main/tpl/_includes/footer.njk b/src/main/tpl/_includes/footer.njk deleted file mode 100644 index a0a02ada..00000000 --- a/src/main/tpl/_includes/footer.njk +++ /dev/null @@ -1,6 +0,0 @@ - diff --git a/src/main/tpl/_includes/legend.njk b/src/main/tpl/_includes/legend.njk deleted file mode 100644 index fb64d8ed..00000000 --- a/src/main/tpl/_includes/legend.njk +++ /dev/null @@ -1,47 +0,0 @@ - -
-
- - - - -
-

Технологический радар

- Удобный инструмент, помогающий компании управлять своей платформой разработки и технологической стратегией. - Радар объединяет используемые технологии в четыре категории: техники, языки и фреймворки, инструменты и платформы. - Каждая из этих областей ранжируется по стадии внедрения: -
    -
  • ADOPT — технологии, в которых мы уверены, и рекомендованы к широкому использованию в QIWI, соответствуют культуре и целям компании.
  • -
  • TRIAL — новый стек, используемый лишь в отдельных проектах для оценки рисков перед массовым внедрением.
  • -
  • ASSESS — блидин эдж, ёрли превью, всякие экспериментальные штуки, потенциально имеющие ценность.
  • -
  • HOLD — депрекейтед легаси. Отжившие свой век технологии, которые не рекомендуется использовать для новых проектов, но допустимо сохранять в старых.
  • -
-
-

Цели

-
    -
  • Держать под контролем свои компетенции. Подготовка радара — это анализ происходящего — способ посмотреть в какую сторону движется индустрия, и как общие тренды соотносятся с нашим зоопарком.
  • -
  • Принимать правильные архитектурные решения. У команд появляется источник информации о том, какие решения рекомендуется использовать для тех или иных целей.
  • -
-
-
-

Наполнение

- Технический радар поддерживается разработчиками в формате холивара. В нем отражены наши стремления, успехи и ошибки. -
- diff --git a/src/main/tpl/_layouts/entries.njk b/src/main/tpl/_layouts/entries.njk deleted file mode 100644 index 8d1a74a9..00000000 --- a/src/main/tpl/_layouts/entries.njk +++ /dev/null @@ -1,5 +0,0 @@ ---- -layout: "page.njk" ---- -

{{ page.fileSlug }}

-{{ content | safe }} diff --git a/src/main/tpl/_layouts/page.njk b/src/main/tpl/_layouts/page.njk deleted file mode 100644 index d198cf35..00000000 --- a/src/main/tpl/_layouts/page.njk +++ /dev/null @@ -1,15 +0,0 @@ - - - - - - {{ title or page.fileSlug }} - - - - - - - {{ content | safe }} - - diff --git a/src/main/tpl/_layouts/radar.njk b/src/main/tpl/_layouts/radar.njk deleted file mode 100644 index ba96fb09..00000000 --- a/src/main/tpl/_layouts/radar.njk +++ /dev/null @@ -1,23 +0,0 @@ ---- -layout: page.njk ---- - -{% set bootScript %} - {% makeBootScript settings, collections.entries %} -{% endset %} - - - - - - - -{% include 'legend.njk' %} - -{% if settings.extra.footer %} - {{ settings.extra.footer | safe }} -{% else %} - {% include 'footer.njk' %} -{% endif %} diff --git a/src/main/tpl/_layouts/redirect.njk b/src/main/tpl/_layouts/redirect.njk deleted file mode 100644 index 4236b153..00000000 --- a/src/main/tpl/_layouts/redirect.njk +++ /dev/null @@ -1,4 +0,0 @@ - - diff --git a/src/main/tpl/_layouts/root.njk b/src/main/tpl/_layouts/root.njk deleted file mode 100644 index 474e3e57..00000000 --- a/src/main/tpl/_layouts/root.njk +++ /dev/null @@ -1,97 +0,0 @@ - - - - - {% if settings.extra.title %} - {{ settings.extra.title | safe }} - {% else %} - 📡 Tech radars - {% endif %} - - - - -

- {% if settings.extra.title %} - {{ settings.extra.title | safe }} - {% else %} - 📡 Tech radars - {% endif %} -

-
-
- {% for scope in settings.extra.scopes %} -
-

{{ scope }}

-
    - {% for radar in settings.extra.radars %} - {% if radar.scope === scope %} -
  • {{ radar.date }}
  • - {% endif %} - {% endfor %} -
-
- {% endfor %} -
-
-
- {% if settings.extra.footer %} - {{ settings.extra.footer | safe }} - {% else %} - {% include 'footer.njk' %} - {% endif %} -
- diff --git a/src/main/tpl/_layouts/table.njk b/src/main/tpl/_layouts/table.njk deleted file mode 100644 index 8bb829a5..00000000 --- a/src/main/tpl/_layouts/table.njk +++ /dev/null @@ -1,104 +0,0 @@ - - - - test - - - - -
-

QIWI iOS Tech Radar

-

{{ settings.meta.date | safe }}

-
-
- - - - - - - - - - - {% for entry in settings.data %} - - - - - - - {% endfor %} - -
NameRingQuadrantDescription
{{ entry.name | safe }}{{ entry.ring | safe }}{{ entry.quadrantTitle | safe }}{{ entry.description | safe }}
-
-
- {% include 'legend.njk' %} - -
- {% if settings.extra.footer %} - {{ settings.extra.footer | safe }} - {% else %} - {% include 'footer.njk' %} - {% endif %} -
- - diff --git a/src/main/tpl/assets/radar.css b/src/main/tpl/assets/radar.css deleted file mode 100644 index 4d774310..00000000 --- a/src/main/tpl/assets/radar.css +++ /dev/null @@ -1,13 +0,0 @@ -body { - font-family: helvetica, arial, 'Source Sans Pro', sans-serif; -} - -h3 { - margin-top: 0; -} - -body.page__body { - display: flex; - flex-direction: column; - align-items: center; -} diff --git a/src/main/tpl/assets/radar.js b/src/main/tpl/assets/radar.js deleted file mode 100644 index 95713ac3..00000000 --- a/src/main/tpl/assets/radar.js +++ /dev/null @@ -1,499 +0,0 @@ -// The MIT License (MIT) - -// Copyright (c) 2017 Zalando SE - -// 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. - -function radar_visualization(config) { - // custom random number generator, to make random sequence reproducible - // source: https://stackoverflow.com/questions/521295 - var seed = 42 - function random() { - var x = Math.sin(seed++) * 10000 - return x - Math.floor(x) - } - - function random_between(min, max) { - return min + random() * (max - min) - } - - function normal_between(min, max) { - return min + (random() + random()) * 0.5 * (max - min) - } - - // radial_min / radial_max are multiples of PI - const quadrants = [ - { radial_min: 0, radial_max: 0.5, factor_x: 1, factor_y: 1 }, - { radial_min: 0.5, radial_max: 1, factor_x: -1, factor_y: 1 }, - { radial_min: -1, radial_max: -0.5, factor_x: -1, factor_y: -1 }, - { radial_min: -0.5, radial_max: 0, factor_x: 1, factor_y: -1 }, - ] - - const rings = [ - { radius: 150 }, - { radius: 230 }, - { radius: 320 }, - { radius: 410 }, - ] - - const title_offset = { x: -675, y: -475 } - - const footer_offset = { x: -675, y: 420 } - - const legend_offset = [ - { x: 450, y: 90 }, - { x: -675, y: 90 }, - { x: -675, y: -310 }, - { x: 450, y: -410 }, - ] - - function polar(cartesian) { - var x = cartesian.x - var y = cartesian.y - return { - t: Math.atan2(y, x), - r: Math.sqrt(x * x + y * y), - } - } - - function cartesian(polar) { - return { - x: polar.r * Math.cos(polar.t), - y: polar.r * Math.sin(polar.t), - } - } - - function bounded_interval(value, min, max) { - var low = Math.min(min, max) - var high = Math.max(min, max) - return Math.min(Math.max(value, low), high) - } - - function bounded_ring(polar, r_min, r_max) { - return { - t: polar.t, - r: bounded_interval(polar.r, r_min, r_max), - } - } - - function bounded_box(point, min, max) { - return { - x: bounded_interval(point.x, min.x, max.x), - y: bounded_interval(point.y, min.y, max.y), - } - } - - function segment(quadrant, ring) { - var polar_min = { - t: quadrants[quadrant].radial_min * Math.PI, - r: ring === 0 ? 30 : rings[ring - 1].radius, - } - var polar_max = { - t: quadrants[quadrant].radial_max * Math.PI, - r: rings[ring].radius, - } - var cartesian_min = { - x: 15 * quadrants[quadrant].factor_x, - y: 15 * quadrants[quadrant].factor_y, - } - var cartesian_max = { - x: rings[3].radius * quadrants[quadrant].factor_x, - y: rings[3].radius * quadrants[quadrant].factor_y, - } - return { - clipx: function (d) { - var c = bounded_box(d, cartesian_min, cartesian_max) - var p = bounded_ring(polar(c), polar_min.r + 15, polar_max.r - 15) - d.x = cartesian(p).x // adjust data too! - return d.x - }, - clipy: function (d) { - var c = bounded_box(d, cartesian_min, cartesian_max) - var p = bounded_ring(polar(c), polar_min.r + 15, polar_max.r - 15) - d.y = cartesian(p).y // adjust data too! - return d.y - }, - random: function () { - return cartesian({ - t: random_between(polar_min.t, polar_max.t), - r: normal_between(polar_min.r, polar_max.r), - }) - }, - } - } - - // position each entry randomly in its segment - for (var i = 0; i < config.entries.length; i++) { - var entry = config.entries[i] - entry.segment = segment(entry.quadrant, entry.ring) - var point = entry.segment.random() - entry.x = point.x - entry.y = point.y - entry.color = - entry.active || config.print_layout - ? config.rings[entry.ring].color - : config.colors.inactive - } - - // partition entries according to segments - var segmented = new Array(4) - for (var quadrant = 0; quadrant < 4; quadrant++) { - segmented[quadrant] = new Array(4) - for (var ring = 0; ring < 4; ring++) { - segmented[quadrant][ring] = [] - } - } - for (var i = 0; i < config.entries.length; i++) { - var entry = config.entries[i] - segmented[entry.quadrant][entry.ring].push(entry) - } - - // assign unique sequential id to each entry - var id = 1 - for (var quadrant of [2, 3, 1, 0]) { - for (var ring = 0; ring < 4; ring++) { - var entries = segmented[quadrant][ring] - entries.sort(function (a, b) { - return a.label.localeCompare(b.label) - }) - for (var i = 0; i < entries.length; i++) { - entries[i].id = '' + id++ - } - } - } - - function translate(x, y) { - return 'translate(' + x + ',' + y + ')' - } - - function viewbox(quadrant) { - return [ - Math.max(0, quadrants[quadrant].factor_x * 400) - 420, - Math.max(0, quadrants[quadrant].factor_y * 400) - 420, - 440, - 440, - ].join(' ') - } - - var svg = d3 - .select('svg#' + config.svg_id) - .style('background-color', config.colors.background) - .attr('width', config.width) - .attr('height', config.height) - - var radar = svg.append('g') - if ('zoomed_quadrant' in config) { - svg.attr('viewBox', viewbox(config.zoomed_quadrant)) - } else { - radar.attr('transform', translate(config.width / 2, config.height / 2)) - } - - var grid = radar.append('g') - - // draw grid lines - grid - .append('line') - .attr('x1', 0) - .attr('y1', -400) - .attr('x2', 0) - .attr('y2', 400) - .style('stroke', config.colors.grid) - .style('stroke-width', 1) - grid - .append('line') - .attr('x1', -400) - .attr('y1', 0) - .attr('x2', 400) - .attr('y2', 0) - .style('stroke', config.colors.grid) - .style('stroke-width', 1) - - // background color. Usage `.attr("filter", "url(#solid)")` - // SOURCE: https://stackoverflow.com/a/31013492/2609980 - var defs = grid.append('defs') - var filter = defs - .append('filter') - .attr('x', 0) - .attr('y', 0) - .attr('width', 1) - .attr('height', 1) - .attr('id', 'solid') - filter.append('feFlood').attr('flood-color', 'rgb(0, 0, 0, 0.8)') - filter.append('feComposite').attr('in', 'SourceGraphic') - - // draw rings - for (var i = 0; i < rings.length; i++) { - grid - .append('circle') - .attr('cx', 0) - .attr('cy', 0) - .attr('r', rings[i].radius) - .style('fill', 'none') - .style('stroke', config.colors.grid) - .style('stroke-width', 1) - if (config.print_layout) { - grid - .append('text') - .text(config.rings[i].name) - .attr('y', -rings[i].radius + 62) - .attr('text-anchor', 'middle') - .style('fill', config.rings[i].color) - .style('opacity', 0.3) - // .style('fill', '#eeeef0') - .style('font-family', 'Helvetica, Arial') - .style('font-size', 42) - .style('font-weight', 'bold') - .style('pointer-events', 'none') - .style('user-select', 'none') - } - } - - function legend_transform(quadrant, ring, index = null) { - var dx = ring < 1 ? 0 : 140 - var dy = index == null ? -16 : index * 12 - if (ring === 2 ) { - dy = dy + 36 + segmented[quadrant][1].length * 12 - } - if (ring === 3 ) { - dy = dy + 36 * 2 + (segmented[quadrant][1].length + segmented[quadrant][2].length) * 12 - } - return translate( - legend_offset[quadrant].x + dx, - legend_offset[quadrant].y + dy, - ) - } - - // draw title and legend (only in print layout) - if (config.print_layout) { - // title - radar - .append('text') - .attr('transform', translate(title_offset.x, title_offset.y)) - .text(config.title) - .style('font-family', 'Helvetica, Arial') - .style('font-size', '26') - .style('font-weight', 'bolder') - - // date - radar - .append('text') - .attr('transform', translate(title_offset.x, title_offset.y + 20)) - .text(config.date) - .style('font-family', 'Helvetica, Arial') - .style('font-size', '12') - .style('fill', '#999') - - // footer - radar - .append('text') - .attr('transform', translate(footer_offset.x, footer_offset.y)) - .text('▲ moved up ▼ moved down') - .attr('xml:space', 'preserve') - .style('font-family', 'Helvetica, Arial') - .style('font-size', '10') - - // legend - var legend = radar.append('g') - for (var quadrant = 0; quadrant < 4; quadrant++) { - legend - .append('text') - .attr( - 'transform', - translate(legend_offset[quadrant].x, legend_offset[quadrant].y - 45), - ) - .text(config.quadrants[quadrant].name) - .style('font-family', 'Helvetica, Arial') - .style('font-size', '16') - .style('font-weight', 'bold') - - for (var ring = 0; ring < 4; ring++) { - legend - .append('text') - .attr('transform', legend_transform(quadrant, ring)) - .text(config.rings[ring].name) - .style('font-family', 'Helvetica, Arial') - .style('font-size', '12') - .style('font-weight', 'bold') - .style('fill', config.rings[ring].color) - - legend - .selectAll('.legend' + quadrant + ring) - .data(segmented[quadrant][ring]) - .enter() - .append('text') - .attr('transform', function (d, i) { - return legend_transform(quadrant, ring, i) - }) - .attr('class', 'legend' + quadrant + ring) - .attr('id', function (d, i) { - return 'legendItem' + d.id - }) - .text(function (d, i) { - return d.id + '. ' + d.label - }) - .style('font-family', 'Helvetica, Arial') - .style('font-size', '11') - .on('mouseover', function (d) { - showBubble(d) - highlightLegendItem(d) - }) - .on('mouseout', function (d) { - hideBubble(d) - unhighlightLegendItem(d) - }) - } - } - } - - // layer for entries - var rink = radar.append('g').attr('id', 'rink') - - // rollover bubble (on top of everything else) - var bubble = radar - .append('g') - .attr('id', 'bubble') - .attr('x', 0) - .attr('y', 0) - .style('opacity', 0) - .style('pointer-events', 'none') - .style('user-select', 'none') - bubble.append('rect').attr('rx', 4).attr('ry', 4).style('fill', '#333') - bubble - .append('text') - .style('font-family', 'sans-serif') - .style('font-size', '10px') - .style('fill', '#fff') - bubble.append('path').attr('d', 'M 0,0 10,0 5,8 z').style('fill', '#333') - - function showBubble(d) { - if (d.active || config.print_layout) { - var tooltip = d3.select('#bubble text').text(d.label) - var bbox = tooltip.node().getBBox() - d3.select('#bubble') - .attr('transform', translate(d.x - bbox.width / 2, d.y - 16)) - .style('opacity', 0.8) - d3.select('#bubble rect') - .attr('x', -5) - .attr('y', -bbox.height) - .attr('width', bbox.width + 10) - .attr('height', bbox.height + 4) - d3.select('#bubble path').attr( - 'transform', - translate(bbox.width / 2 - 5, 3), - ) - } - } - - function hideBubble(d) { - var bubble = d3 - .select('#bubble') - .attr('transform', translate(0, 0)) - .style('opacity', 0) - } - - function highlightLegendItem(d) { - var legendItem = document.getElementById('legendItem' + d.id) - legendItem.setAttribute('filter', 'url(#solid)') - legendItem.setAttribute('fill', 'white') - } - - function unhighlightLegendItem(d) { - var legendItem = document.getElementById('legendItem' + d.id) - legendItem.removeAttribute('filter') - legendItem.removeAttribute('fill') - } - - // draw blips on radar - var blips = rink - .selectAll('.blip') - .data(config.entries) - .enter() - .append('g') - .attr('class', 'blip') - .attr('transform', function (d, i) { - return legend_transform(d.quadrant, d.ring, i) - }) - .on('mouseover', function (d) { - showBubble(d) - highlightLegendItem(d) - }) - .on('mouseout', function (d) { - hideBubble(d) - unhighlightLegendItem(d) - }) - - // configure each blip - blips.each(function (d) { - var blip = d3.select(this) - - // blip link - if (d.hasOwnProperty('link')) { - blip = blip - .append('a') - .attr('target', '_blank') - .attr('xlink:href', d.link) - } - - // blip shape - if (d.moved > 0) { - blip - .append('path') - .attr('d', 'M -11,5 11,5 0,-13 z') // triangle pointing up - .style('fill', d.color) - } else if (d.moved < 0) { - blip - .append('path') - .attr('d', 'M -11,-5 11,-5 0,13 z') // triangle pointing down - .style('fill', d.color) - } else { - blip.append('circle').attr('r', 9).attr('fill', d.color) - } - - // blip text - if (d.active || config.print_layout) { - var blip_text = config.print_layout ? d.id : d.label.match(/[a-z]/i) - blip - .append('text') - .text(blip_text) - .attr('y', 3) - .attr('text-anchor', 'middle') - .style('fill', '#fff') - .style('font-family', 'Helvetica, Arial') - .style('font-size', function (d) { - return blip_text.length > 2 ? '8' : '9' - }) - .style('pointer-events', 'none') - .style('user-select', 'none') - } - }) - - // make sure that blips stay inside their segment - function ticked() { - blips.attr('transform', function (d) { - return translate(d.segment.clipx(d), d.segment.clipy(d)) - }) - } - - // distribute blips, while avoiding collisions - d3.forceSimulation() - .nodes(config.entries) - .velocityDecay(0.19) // magic number (found by experimentation) - .force('collision', d3.forceCollide().radius(12).strength(0.85)) - .on('tick', ticked) -} diff --git a/src/main/tpl/entries/entries.11tydata.json b/src/main/tpl/entries/entries.11tydata.json deleted file mode 100644 index 3bfb1d8e..00000000 --- a/src/main/tpl/entries/entries.11tydata.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "layout": "entries.njk", - "tags": "entries" -} diff --git a/src/main/tpl/entries/q1/q1.11tydata.json b/src/main/tpl/entries/q1/q1.11tydata.json deleted file mode 100644 index 618bd307..00000000 --- a/src/main/tpl/entries/q1/q1.11tydata.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "quadrant": 0 -} diff --git a/src/main/tpl/entries/q2/q2.11tydata.json b/src/main/tpl/entries/q2/q2.11tydata.json deleted file mode 100644 index d1fba1c9..00000000 --- a/src/main/tpl/entries/q2/q2.11tydata.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "quadrant": 1 -} diff --git a/src/main/tpl/entries/q3/q3.11tydata.json b/src/main/tpl/entries/q3/q3.11tydata.json deleted file mode 100644 index d592f614..00000000 --- a/src/main/tpl/entries/q3/q3.11tydata.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "quadrant": 2 -} diff --git a/src/main/tpl/entries/q4/q4.11tydata.json b/src/main/tpl/entries/q4/q4.11tydata.json deleted file mode 100644 index 09fa09cf..00000000 --- a/src/main/tpl/entries/q4/q4.11tydata.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "quadrant": 3 -} diff --git a/src/main/ts/api/arc.ts b/src/main/ts/api/arc.ts new file mode 100644 index 00000000..8c5b6944 --- /dev/null +++ b/src/main/ts/api/arc.ts @@ -0,0 +1,3 @@ +import * as d3 from 'd3' + +export const arc = d3.arc() diff --git a/src/main/ts/api/index.ts b/src/main/ts/api/index.ts new file mode 100644 index 00000000..4cf50b98 --- /dev/null +++ b/src/main/ts/api/index.ts @@ -0,0 +1,2 @@ +export * from './radar' +export * from './svg-radar' diff --git a/src/main/ts/api/pie.ts b/src/main/ts/api/pie.ts new file mode 100644 index 00000000..d6d5aca8 --- /dev/null +++ b/src/main/ts/api/pie.ts @@ -0,0 +1,6 @@ +import * as d3 from 'd3' + +export const pie = d3 + .pie() + .startAngle(-0.5 * Math.PI) + .endAngle(-0.5 * Math.PI + 2 * Math.PI) diff --git a/src/main/ts/api/radar.ts b/src/main/ts/api/radar.ts new file mode 100644 index 00000000..0b1d75f3 --- /dev/null +++ b/src/main/ts/api/radar.ts @@ -0,0 +1,30 @@ +import { Radar } from '../types' + +const prepareRadar: (radar: Radar) => Promise = async (radar) => { + if (radar.type === 'path') { + return await getRadar(radar.path) + } + if (radar.type === 'scopes') { + return { + ...radar, + scopes: await Promise.all( + radar.scopes.map(async (scope) => ({ + ...scope, + radar: await prepareRadar(scope.radar), + })), + ), + } + } + return radar +} + +export const getRadar: (path?: string) => Promise = async ( + path = process.env.RADAR_JSON || 'radar.json', +) => { + const host = + process.env.RADAR_URL ?? + `http://${process.env.HOST || 'localhost'}:${process.env.PORT || 3000}` + const res = await fetch(`${host}/${path}`) + const json = (await res.json()) as Radar + return await prepareRadar(json) +} diff --git a/src/main/ts/api/statuses-radius.ts b/src/main/ts/api/statuses-radius.ts new file mode 100644 index 00000000..2577d69b --- /dev/null +++ b/src/main/ts/api/statuses-radius.ts @@ -0,0 +1,12 @@ +import { SectorsRadar } from '../types' + +export const getSvgStatusesRadius: (radar: SectorsRadar) => number[] = ( + radar, +) => + radar.statuses.reduce( + (radius, status, index) => [ + ...radius, + status.size + (index === 0 ? 0 : radius[index - 1]), + ], + [] as number[], + ) diff --git a/src/main/ts/api/svg-radar-size.ts b/src/main/ts/api/svg-radar-size.ts new file mode 100644 index 00000000..c71bc61a --- /dev/null +++ b/src/main/ts/api/svg-radar-size.ts @@ -0,0 +1,7 @@ +import { SectorsRadar } from '../types' +import { getSvgSectorSize } from './svg-sector-size' + +export const getSvgRadarSize: ( + radar: SectorsRadar, + titleSize: number, +) => number = (radar, titleSize) => 2 * getSvgSectorSize(radar) + 4 * titleSize diff --git a/src/main/ts/api/svg-radar.ts b/src/main/ts/api/svg-radar.ts new file mode 100644 index 00000000..ff60aa66 --- /dev/null +++ b/src/main/ts/api/svg-radar.ts @@ -0,0 +1,19 @@ +import { SectorsRadar, SvgSector } from '../types' +import { getSvgRadarSize } from './svg-radar-size' +import { getSvgSectors } from './svg-sectors' + +export const getSvgRadar: ( + radar: SectorsRadar, + titleSize?: number, + itemSize?: number, +) => { + size: number + sectors: SvgSector[] +} = (radar, titleSize = 25, itemSize = 12) => { + const radarSize = getSvgRadarSize(radar, titleSize) + const sectorsExt = getSvgSectors(radar, itemSize, titleSize) + return { + size: radarSize, + sectors: sectorsExt, + } +} diff --git a/src/main/ts/api/svg-sector-size.ts b/src/main/ts/api/svg-sector-size.ts new file mode 100644 index 00000000..3a205d7b --- /dev/null +++ b/src/main/ts/api/svg-sector-size.ts @@ -0,0 +1,4 @@ +import { SectorsRadar } from '../types' + +export const getSvgSectorSize: (radar: SectorsRadar) => number = (radar) => + radar.statuses.reduce((size, status) => size + status.size, 0) diff --git a/src/main/ts/api/svg-sector-status-items.ts b/src/main/ts/api/svg-sector-status-items.ts new file mode 100644 index 00000000..b94e8f33 --- /dev/null +++ b/src/main/ts/api/svg-sector-status-items.ts @@ -0,0 +1,54 @@ +import * as d3 from 'd3' + +import { SectorsRadar, SvgItem, SvgSector, SvgStatus } from '../types' + +export const getSvgSectorStatusItems: ( + radar: SectorsRadar, + status: SvgStatus, + statusIndex: number, + sector: SvgSector, + sectorIndex: number, + itemSize: number, +) => SvgItem[] = ( + radar, + status, + statusIndex, + sector, + sectorIndex, + itemSize, +) => { + const size = status.size - status.thick + const radius = status.innerRadius + const count = Math.floor((size - 0.5 * itemSize) / (1.5 * itemSize)) + const delta = (size - itemSize * count) / (count + 1) + const circles = [] + for (let i = 1; i <= count; i++) { + const dotradius = radius - (i * delta + i * itemSize - 0.5 * itemSize) + const dotlength = Math.abs(sector.startAngle - sector.endAngle) * dotradius + const dotcount = Math.floor((dotlength - 0.5 * itemSize) / (1.5 * itemSize)) + const dotdelta = dotlength / dotcount / dotradius + for (let j = 0; j < dotcount; j++) { + const angle = + sector.startAngle + j * dotdelta + 0.5 * dotdelta - 0.5 * Math.PI + circles.push({ + r: 0.5 * itemSize, + cx: Math.cos(angle) * dotradius, + cy: Math.sin(angle) * dotradius, + fill: sector.color, + }) + } + } + const items = radar.items.filter( + (item) => item.sector === sector.name && item.status == status.name, + ) + return d3 + .shuffler( + d3.randomLcg(sector.endAngle * items.length * circles.length * itemSize), + )(circles) + .slice(0, items.length) + .map((p, itemIndex) => ({ + key: `sector-${sectorIndex}-status-${statusIndex}-item-${itemIndex}`, + ...items[itemIndex], + circle: p, + })) +} diff --git a/src/main/ts/api/svg-sector-statuses.ts b/src/main/ts/api/svg-sector-statuses.ts new file mode 100644 index 00000000..f42273b9 --- /dev/null +++ b/src/main/ts/api/svg-sector-statuses.ts @@ -0,0 +1,70 @@ +import { SectorsRadar, SvgSector, SvgStatus } from '../types' +import { arc } from './arc' +import { getSvgStatusesRadius } from './statuses-radius' +import { getSvgSectorStatusItems } from './svg-sector-status-items' + +export const getSvgSectorStatuses: ( + radar: SectorsRadar, + sector: SvgSector, + sectorIndex: number, + itemSize: number, +) => SvgStatus[] = (radar, sector, sectorIndex, itemSize) => { + const radius = getSvgStatusesRadius(radar) + return radar.statuses + .map((status, statusIndex) => ({ + ...status, + key: `sector-${sectorIndex}-status-${statusIndex}`, + outerRadius: radius[statusIndex], + innerRadius: radius[statusIndex] - status.thick, + items: [], + })) + .map((status, statusIndex) => ({ + ...status, + arc: { + d: + arc({ + innerRadius: status.innerRadius, + outerRadius: status.outerRadius, + startAngle: sector.startAngle, + endAngle: sector.endAngle, + }) || '', + fill: sector.color, + }, + label: { + arc: { + id: `sector-${sectorIndex}-status-${statusIndex}-label`, + d: + arc({ + innerRadius: status.innerRadius - status.size / 2, + outerRadius: status.innerRadius - status.size / 2, + startAngle: sector.startAngle, + endAngle: sector.endAngle, + }) || '', + fill: 'none', + stroke: 'none', + }, + text: { + fill: sector.color, + textAnchor: 'middle', + dy: '0.5rem', + opacity: 0.5, + }, + textPath: { + href: `#sector-${sectorIndex}-status-${statusIndex}-label`, + startOffset: + sectorIndex >= 0.5 * radar.sectors.length ? '75%' : '25%', + }, + }, + })) + .map((status, statusIndex) => ({ + ...status, + items: getSvgSectorStatusItems( + radar, + status, + statusIndex, + sector, + sectorIndex, + itemSize, + ), + })) +} diff --git a/src/main/ts/api/svg-sectors-pies.ts b/src/main/ts/api/svg-sectors-pies.ts new file mode 100644 index 00000000..3ff58224 --- /dev/null +++ b/src/main/ts/api/svg-sectors-pies.ts @@ -0,0 +1,5 @@ +import { SectorsRadar } from '../types' +import { pie } from './pie' + +export const getSvgSectorPies = (radar: SectorsRadar) => + pie.sort(null)(radar.sectors.map(() => 1)) diff --git a/src/main/ts/api/svg-sectors.ts b/src/main/ts/api/svg-sectors.ts new file mode 100644 index 00000000..541266aa --- /dev/null +++ b/src/main/ts/api/svg-sectors.ts @@ -0,0 +1,81 @@ +import { SectorsRadar, SvgSector } from '../types' +import { arc } from './arc' +import { getSvgSectorSize } from './svg-sector-size' +import { getSvgSectorStatuses } from './svg-sector-statuses' +import { getSvgSectorPies } from './svg-sectors-pies' + +export const getSvgSectors: ( + radar: SectorsRadar, + itemSize: number, + titleSize: number, +) => SvgSector[] = (radar, itemSize, titleSize) => { + const pies = getSvgSectorPies(radar) + const sectorSize = getSvgSectorSize(radar) + return radar.sectors + .map((sector, sectorIndex) => ({ + ...sector, + key: `sector-${sectorIndex}`, + startAngle: pies[sectorIndex].startAngle, + endAngle: pies[sectorIndex].endAngle, + statuses: [], + })) + .map((sector, sectorIndex) => ({ + ...sector, + label: { + arc: { + id: `sector-${sectorIndex}-label`, + d: + arc({ + innerRadius: sectorSize + titleSize, + outerRadius: sectorSize + titleSize, + startAngle: sector.startAngle, + endAngle: sector.endAngle, + }) || '', + fill: 'none', + stroke: 'none', + }, + text: { + fill: sector.color, + textAnchor: 'middle', + dy: sectorIndex >= 0.5 * radar.sectors.length ? '1rem' : '-0.5rem', + opacity: 1, + }, + textPath: { + href: `#sector-${sectorIndex}-label`, + startOffset: + sectorIndex >= 0.5 * radar.sectors.length ? '75%' : '25%', + }, + }, + background: { + arc: { + d: + arc({ + innerRadius: 0, + outerRadius: sectorSize, + startAngle: sector.startAngle, + endAngle: sector.endAngle, + }) || '', + fill: `url(#sector-${sectorIndex}-gradient)`, + opacity: 0.25, + }, + gradient: { + id: `sector-${sectorIndex}-gradient`, + r: 1, + }, + gradientStart: { + offset: '0%', + stopColor: sector.color, + stopOpacity: 1, + }, + gradientStop: { + offset: '100%', + stopColor: sector.color, + stopOpacity: 0, + }, + }, + })) + .map((sector, sectorIndex) => ({ + ...sector, + statuses: getSvgSectorStatuses(radar, sector, sectorIndex, itemSize), + })) +} diff --git a/src/main/ts/bin.ts b/src/main/ts/bin.ts new file mode 100755 index 00000000..4e46cc86 --- /dev/null +++ b/src/main/ts/bin.ts @@ -0,0 +1,154 @@ +#!/usr/bin/env node +import { error } from 'node:console' +import { cp, open, realpath, rm } from 'node:fs/promises' +import { dirname, resolve } from 'node:path' +import { argv, cwd, env, exit } from 'node:process' + +import fastifyStatic from '@fastify/static' +import { program } from 'commander' +import { execaCommand } from 'execa' +import fastify from 'fastify' +import ora from 'ora' +import { packageDirectory } from 'pkg-dir' +import { async as asyncSyncDirectory } from 'sync-directory' +import { temporaryDirectory } from 'tempy' + +const { start, stop } = (() => { + let time = 0 + const spinner = ora({ + spinner: 'dots', + }) + const start = (title: string) => { + if (time) { + succeed() + } + time = Date.now() + spinner.start(title) + } + const succeed = () => { + spinner.succeed( + `${spinner.text} - ${((Date.now() - time) / 1000).toFixed(1)}s`, + ) + } + const stop = () => { + if (time) { + succeed() + } + time = 0 + spinner.stop() + } + return { + start, + stop, + } +})() + +const pm = (() => { + if (env.npm_execpath?.includes('bun')) { + return 'bun' + } + if (env.npm_execpath?.includes('yarn')) { + return 'yarn' + } + return 'npm' +})() + +const install = async (input: string) => { + const bin = await realpath(argv[1]) + const dir = (await packageDirectory({ cwd: bin })) || dirname(bin) + const tmp = temporaryDirectory({ prefix: 'tech-radar-' }) + const src = bin.includes('src/main/ts') + await asyncSyncDirectory( + src + ? resolve(dir, 'src', 'main', 'resources', 'webapp') + : resolve(dir, 'target', 'resources', 'webapp'), + tmp, + { + watch: true, + type: 'copy', + }, + ) + await asyncSyncDirectory( + src ? resolve(dir, 'src', 'main', 'ts') : resolve(dir, 'target', 'esm'), + resolve(tmp, 'src'), + { + watch: true, + type: 'copy', + exclude: src ? ['bin.ts'] : ['bin.mjs'], + }, + ) + await asyncSyncDirectory(input, resolve(tmp, 'public'), { + watch: true, + type: 'copy', + }) + await execaCommand(`${pm} install`, { cwd: tmp }) + return tmp +} + +program + .command('build') + .requiredOption( + '-i, --input ', + 'input directory with radar.json and other stuff (favicon.ico)', + (value) => resolve(cwd(), value), + ) + .requiredOption( + '-o, --output ', + 'output directory with generated radar', + (value) => resolve(cwd(), value), + ) + .action(async (options) => { + start(`${pm} install`) + + const cwd = await install(options.input) + + start('build & generate') + + const serve = fastify().register(fastifyStatic, { + root: resolve(cwd, 'public'), + }) + + await serve.listen({ port: 3000 }) + await execaCommand(`${pm} run build`, { cwd }) + await serve.close() + + start('copy & clean') + + await rm(options.output, { + recursive: true, + force: true, + }) + + await cp(resolve(cwd, 'build'), options.output, { + recursive: true, + force: true, + }) + + const nojekyll = await open(resolve(options.output, '.nojekyll'), 'a') + await nojekyll.close() + + await rm(resolve(cwd), { recursive: true, force: true }) + + stop() + }) + +program + .command('dev') + .requiredOption( + '-i, --input ', + 'input directory with radar.json and other stuff (favicon.ico)', + (value) => resolve(cwd(), value), + ) + .action(async (options) => { + const cwd = await install(options.input) + await execaCommand(`${pm} run dev`, { stdio: 'inherit', cwd }) + }) + +program + .parseAsync() + .then(() => exit(0)) + // eslint-disable-next-line unicorn/prefer-top-level-await + .catch((e) => { + error(e) + exit(1) + }) diff --git a/src/main/ts/index.ts b/src/main/ts/index.ts new file mode 100644 index 00000000..9b6adf6e --- /dev/null +++ b/src/main/ts/index.ts @@ -0,0 +1,2 @@ +export * as types from './types' +export * as api from './api' diff --git a/src/main/ts/types/Item.ts b/src/main/ts/types/Item.ts new file mode 100644 index 00000000..680b9fcb --- /dev/null +++ b/src/main/ts/types/Item.ts @@ -0,0 +1,7 @@ +export interface Item { + name: string + title: string + description: string + status: string + sector: string +} diff --git a/src/main/ts/types/Radar.ts b/src/main/ts/types/Radar.ts new file mode 100644 index 00000000..fe16990b --- /dev/null +++ b/src/main/ts/types/Radar.ts @@ -0,0 +1,25 @@ +import { Item } from './Item' +import { Scope } from './Scope' +import { Sector } from './Sector' +import { Status } from './Status' + +export interface SectorsRadar { + type: 'sectors' + title: string + sectors: Sector[] + statuses: Status[] + items: Item[] +} + +export interface ScopesRadar { + type: 'scopes' + title: string + scopes: Scope[] +} + +export interface PathRadar { + type: 'path' + path: string +} + +export type Radar = ScopesRadar | SectorsRadar | PathRadar diff --git a/src/main/ts/types/Scope.ts b/src/main/ts/types/Scope.ts new file mode 100644 index 00000000..c8569f2a --- /dev/null +++ b/src/main/ts/types/Scope.ts @@ -0,0 +1,8 @@ +import { Radar } from './Radar' + +export interface Scope { + name: string + title: string + description: string + radar: Radar +} diff --git a/src/main/ts/types/Sector.ts b/src/main/ts/types/Sector.ts new file mode 100644 index 00000000..3c1e4c3a --- /dev/null +++ b/src/main/ts/types/Sector.ts @@ -0,0 +1,6 @@ +export interface Sector { + name: string + title: string + description: string + color: string +} diff --git a/src/main/ts/types/Status.ts b/src/main/ts/types/Status.ts new file mode 100644 index 00000000..4bb16fc8 --- /dev/null +++ b/src/main/ts/types/Status.ts @@ -0,0 +1,7 @@ +export interface Status { + name: string + title: string + description: string + size: number + thick: number +} diff --git a/src/main/ts/types/SvgItem.ts b/src/main/ts/types/SvgItem.ts new file mode 100644 index 00000000..dba2a0ab --- /dev/null +++ b/src/main/ts/types/SvgItem.ts @@ -0,0 +1,8 @@ +import { SVGProps } from 'react' + +import { Item } from './Item' + +export interface SvgItem extends Item { + key: string + circle: SVGProps +} diff --git a/src/main/ts/types/SvgSector.ts b/src/main/ts/types/SvgSector.ts new file mode 100644 index 00000000..a5b6a525 --- /dev/null +++ b/src/main/ts/types/SvgSector.ts @@ -0,0 +1,22 @@ +import { SVGProps } from 'react' + +import { Sector } from './Sector' +import { SvgStatus } from './SvgStatus' + +export interface SvgSector extends Sector { + key: string + startAngle: number + endAngle: number + label: { + arc: SVGProps + text: SVGProps + textPath: SVGProps + } + background: { + arc: SVGProps + gradient: SVGProps + gradientStart: SVGProps + gradientStop: SVGProps + } + statuses: SvgStatus[] +} diff --git a/src/main/ts/types/SvgStatus.ts b/src/main/ts/types/SvgStatus.ts new file mode 100644 index 00000000..9f56500f --- /dev/null +++ b/src/main/ts/types/SvgStatus.ts @@ -0,0 +1,17 @@ +import { SVGProps } from 'react' + +import { Status } from './Status' +import { SvgItem } from './SvgItem' + +export interface SvgStatus extends Status { + key: string + innerRadius: number + outerRadius: number + arc: SVGProps + label: { + arc: SVGProps + text: SVGProps + textPath: SVGProps + } + items: SvgItem[] +} diff --git a/src/main/ts/types/index.ts b/src/main/ts/types/index.ts new file mode 100644 index 00000000..6b4c198e --- /dev/null +++ b/src/main/ts/types/index.ts @@ -0,0 +1,8 @@ +export * from './Item' +export * from './Radar' +export * from './Scope' +export * from './Sector' +export * from './Status' +export * from './SvgItem' +export * from './SvgSector' +export * from './SvgStatus' diff --git a/src/test/js/__snapshots__/generator-markdown.mjs.snap b/src/test/js/__snapshots__/generator-markdown.mjs.snap deleted file mode 100644 index 5c416dbc..00000000 --- a/src/test/js/__snapshots__/generator-markdown.mjs.snap +++ /dev/null @@ -1,26 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`generate md assets files write check 1`] = ` -{ - "codMdData": "--- -ring: trial -moved: 0 ---- -Статический анализатор кода", - "hexMdData": "--- -ring: assess -moved: -1 ---- -Унификации контракта интерфейсов различных слоев приложений", - "nodeMdData": "--- -ring: adopt -moved: 0 ---- -", - "tsMdData": "--- -ring: adopt -moved: 1 ---- -Статически, типизированный ЖС", -} -`; diff --git a/src/test/js/__snapshots__/reader.js.snap b/src/test/js/__snapshots__/reader.js.snap deleted file mode 100644 index 3fcd6b2e..00000000 --- a/src/test/js/__snapshots__/reader.js.snap +++ /dev/null @@ -1,215 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`parser.js csvReader 1`] = ` -{ - "data": [ - { - "description": "Статический анализатор кода", - "moved": "0", - "name": "codeclimate", - "quadrant": "tools", - "ring": "Trial", - }, - { - "description": "", - "moved": "", - "name": "Nodejs", - "quadrant": "Platforms", - "ring": "Adopt", - }, - { - "description": "Статически, типизированный ЖС", - "moved": "1", - "name": "TypeScript", - "quadrant": "language", - "ring": "Adopt", - }, - { - "description": "Унификации контракта интерфейсов различных слоев приложений", - "moved": "-1", - "name": "Гексагональная архитектура", - "quadrant": "Techniques", - "ring": "Assess", - }, - ], - "meta": { - "date": "2021-06-18", - "legend": "bla bla bla", - "title": "work it", - }, - "quadrantAliases": { - "language": "q1", - "languages-and-frameworks": "q1", - "platforms": "q2", - "techniques": "q4", - "tools": "q3", - }, - "quadrantTitles": { - "q1": "Languages and frameworks", - "q2": "Platforms", - "q3": "Tools", - "q4": "Techniques", - }, -} -`; - -exports[`parser.js jsonReader 1`] = ` -{ - "data": [ - { - "description": "Статически типизированный ЖС", - "moved": "1", - "name": "TypeScript", - "quadrant": "languages-and-frameworks", - "ring": "Adopt", - }, - { - "description": "", - "moved": "", - "name": "Nodejs", - "quadrant": "Platforms", - "ring": "Adopt", - }, - { - "description": "Статический анализатор кода", - "moved": "0", - "name": "codeclimate", - "quadrant": "tools", - "ring": "Trial", - }, - { - "description": "Унификации контракта интерфейсов различных слоев приложений", - "moved": "-1", - "name": "Гексагональная архитектура", - "quadrant": "Techniques", - "ring": "Assess", - }, - ], - "meta": { - "date": "2021-06-12", - "legend": "bla bla bla", - "title": "tech radar js", - }, - "quadrantAliases": { - "languages-and-frameworks": "q1", - "platforms": "q2", - "techniques": "q4", - "tools": "q3", - }, - "quadrantTitles": { - "q1": "Languages and frameworks", - "q2": "Platforms", - "q3": "Tools", - "q4": "Techniques", - }, -} -`; - -exports[`parser.js parse() 1`] = ` -{ - "data": [ - { - "description": "", - "moved": 0, - "name": "Nodejs", - "quadrant": "q2", - "quadrantTitle": "Platforms", - "ring": "adopt", - }, - { - "description": "Статически, типизированный ЖС", - "moved": 1, - "name": "TypeScript", - "quadrant": "q1", - "quadrantTitle": "Languages and frameworks", - "ring": "adopt", - }, - { - "description": "Статический анализатор кода", - "moved": 0, - "name": "codeclimate", - "quadrant": "q3", - "quadrantTitle": "Tools", - "ring": "trial", - }, - { - "description": "Унификации контракта интерфейсов различных слоев приложений", - "moved": -1, - "name": "Гексагональная архитектура", - "quadrant": "q4", - "quadrantTitle": "Techniques", - "ring": "assess", - }, - ], - "meta": { - "date": "2021-06-18", - "legend": "bla bla bla", - "title": "work it", - }, - "quadrantAliases": { - "language": "q1", - "languages-and-frameworks": "q1", - "platforms": "q2", - "techniques": "q4", - "tools": "q3", - }, - "quadrantTitles": { - "q1": "Languages and frameworks", - "q2": "Platforms", - "q3": "Tools", - "q4": "Techniques", - }, -} -`; - -exports[`parser.js yamlReader 1`] = ` -{ - "data": [ - { - "description": "Статически типизированный ЖС", - "moved": 1, - "name": "TypeScript", - "quadrant": "languages-and-frameworks", - "ring": "Adopt", - }, - { - "description": null, - "moved": null, - "name": "Nodejs", - "quadrant": "Platforms", - "ring": "Adopt", - }, - { - "description": "Статический анализатор кода", - "moved": 0, - "name": "codeclimate", - "quadrant": "tools", - "ring": "Trial", - }, - { - "description": "Унификации контракта интерфейсов различных слоев приложений", - "moved": -1, - "name": "Гексагональная архитектура", - "quadrant": "Techniques", - "ring": "Assess", - }, - ], - "meta": { - "date": "2021-06-11", - "legend": "bla bla bla", - "title": "tech radar js", - }, - "quadrantAliases": { - "languages-and-frameworks": "q1", - "platforms": "q2", - "techniques": "q4", - "tools": "q3", - }, - "quadrantTitles": { - "q1": "Languages and frameworks", - "q2": "Platforms", - "q3": "Tools", - "q4": "Techniques", - }, -} -`; diff --git a/src/test/js/__snapshots__/run.mjs.snap b/src/test/js/__snapshots__/run.mjs.snap deleted file mode 100644 index cc5b1c6d..00000000 --- a/src/test/js/__snapshots__/run.mjs.snap +++ /dev/null @@ -1,363 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`generate 11ty app from .csv file 1`] = ` -[ - "2021-06-18/entries/q1/TypeScript/index.html", - "2021-06-18/entries/q2/Nodejs/index.html", - "2021-06-18/entries/q3/codeclimate/index.html", - "2021-06-18/entries/q4/Гексагональная архитектура/index.html", - "2021-06-18/index.html", - "2021-06-18/table/index.html", - "favicon.ico", - "index.html", - "radar.css", - "radar.js", -] -`; - -exports[`generate 11ty app from .json file 1`] = ` -[ - "2021-06-12/entries/q1/TypeScript/index.html", - "2021-06-12/entries/q2/Nodejs/index.html", - "2021-06-12/entries/q3/codeclimate/index.html", - "2021-06-12/entries/q4/Гексагональная архитектура/index.html", - "2021-06-12/index.html", - "2021-06-12/table/index.html", - "favicon.ico", - "index.html", - "radar.css", - "radar.js", -] -`; - -exports[`generate 11ty app from .yml file 1`] = ` -[ - "2021-06-11/entries/q1/TypeScript/index.html", - "2021-06-11/entries/q2/Nodejs/index.html", - "2021-06-11/entries/q3/codeclimate/index.html", - "2021-06-11/entries/q4/Гексагональная архитектура/index.html", - "2021-06-11/index.html", - "2021-06-11/table/index.html", - "favicon.ico", - "index.html", - "radar.css", - "radar.js", -] -`; - -exports[`generate 11ty app from multiple files 1`] = ` -[ - "2021-06-12/entries/q1/TypeScript/index.html", - "2021-06-12/entries/q2/Nodejs/index.html", - "2021-06-12/entries/q3/codeclimate/index.html", - "2021-06-12/entries/q4/Гексагональная архитектура/index.html", - "2021-06-12/index.html", - "2021-06-12/table/index.html", - "2021-06-18/entries/q1/TypeScript/index.html", - "2021-06-18/entries/q2/Nodejs/index.html", - "2021-06-18/entries/q3/codeclimate/index.html", - "2021-06-18/entries/q4/Гексагональная архитектура/index.html", - "2021-06-18/index.html", - "2021-06-18/table/index.html", - "favicon.ico", - "index.html", - "radar.css", - "radar.js", -] -`; - -exports[`generate 11ty app from multiple files with the same date 1`] = ` -[ - "2021-06-12/entries/q1/TypeScript/index.html", - "2021-06-12/entries/q2/Nodejs/index.html", - "2021-06-12/entries/q3/codeclimate/index.html", - "2021-06-12/entries/q4/Гексагональная архитектура/index.html", - "2021-06-12/index.html", - "2021-06-12/table/index.html", - "2021-06-18/entries/q1/TypeScript/index.html", - "2021-06-18/entries/q2/Nodejs/index.html", - "2021-06-18/entries/q3/codeclimate/index.html", - "2021-06-18/entries/q4/Гексагональная архитектура/index.html", - "2021-06-18/index.html", - "2021-06-18/table/index.html", - "favicon.ico", - "index.html", - "radar.css", - "radar.js", -] -`; - -exports[`generate 11ty app generate custom navigation page: title, footer 1`] = ` -"test

test

foobarbaz
" -`; - -exports[`generate 11ty app generate navigation page 1`] = ` -"📡 Tech radars

📡 Tech radars

" -`; - -exports[`generate 11ty app generate navigation page by data2 1`] = ` -"📡 Tech radars

📡 Tech radars

" -`; - -exports[`generate 11ty app generate navigation page from custom templates 1`] = ` -"test

test

Testing footer template
" -`; - -exports[`generate 11ty app generate navigation page title 1`] = ` -"title

title

" -`; diff --git a/src/test/js/generator-markdown.mjs b/src/test/js/generator-markdown.mjs deleted file mode 100644 index e3b62735..00000000 --- a/src/test/js/generator-markdown.mjs +++ /dev/null @@ -1,69 +0,0 @@ -import fs from 'fs' -import fse from 'fs-extra' -import path from 'path' - -import { - genMdAssets, - genMdContent, - genMdPath, -} from '../../main/js/generator/markdown.js' -import { parse } from '../../main/js/parser' -import {fileURLToPath} from 'url' - -const __dirname = path.dirname(fileURLToPath(import.meta.url)) -export const langAndFw = 'languages-and-frameworks' - -describe('generate md assets', () => { - it('files write check', async () => { - const csvPath = path.join(__dirname, '../stub/test.csv') - const outDir = path.join(__dirname, 'temp') - - await genMdAssets({ - document: await parse(csvPath), - temp: outDir - }) - - const tsMdData = fs.readFileSync( - path.join(outDir, 'entries', 'q1', 'TypeScript.md'), - 'utf8', - ) - const nodeMdData = fs.readFileSync( - path.join(outDir, 'entries', 'q2', 'Nodejs.md'), - 'utf8', - ) - const hexMdData = fs.readFileSync( - path.join(outDir, 'entries', 'q4', 'Гексагональная архитектура.md'), - 'utf8', - ) - const codMdData = fs.readFileSync( - path.join(outDir, 'entries', 'q3', 'codeclimate.md'), - 'utf8', - ) - - expect({ tsMdData, nodeMdData, hexMdData, codMdData }).toMatchSnapshot() - }) - afterAll(() => { - fse.removeSync(path.join(__dirname, 'temp')) - }) - - it('generateMd ', () => { - const contentMd = `--- -ring: Hold -moved: undefined ---- -Мидвары поверх http-server` - expect( - genMdContent({ ring: 'Hold', description: 'Мидвары поверх http-server' }), - ).toBe(contentMd) - }) - - it('generatePath ', () => { - expect( - genMdPath({ - name: 'Redux', - quadrant: langAndFw, - temp: 'test', - }), - ).toBe('test/entries/languages-and-frameworks/Redux.md') - }) -}) diff --git a/src/test/js/index.js b/src/test/js/index.js deleted file mode 100644 index b5a21781..00000000 --- a/src/test/js/index.js +++ /dev/null @@ -1,7 +0,0 @@ -import { run } from '../../main/js/index.js' - -describe('has proper exports', () => { - it('run', function () { - expect(run).toBeDefined() - }) -}) diff --git a/src/test/js/reader.js b/src/test/js/reader.js deleted file mode 100644 index 967d651a..00000000 --- a/src/test/js/reader.js +++ /dev/null @@ -1,30 +0,0 @@ -import { - getReader, - parse, - parseCsvRadar, - parseJsonRadar, - parseYamlRadar, -} from '../../main/js/parser/index.js' - -describe('parser.js', () => { - it('parse()', async () => { - expect(await parse('src/test/stub/test.csv')).toMatchSnapshot() - }) - it('csvReader', async () => { - expect(await parseCsvRadar('src/test/stub/test.csv')).toMatchSnapshot() - }) - it('jsonReader', async () => { - expect(await parseJsonRadar('src/test/stub/test.json')).toMatchSnapshot() - }) - it('yamlReader', async () => { - expect(await parseYamlRadar('src/test/stub/test.yml')).toMatchSnapshot() - }) - it('getReader ', () => { - expect(getReader('.csv')).toBe(parseCsvRadar) - expect(getReader('.json')).toBe(parseJsonRadar) - expect(getReader('.yml')).toBe(parseYamlRadar) - }) - it('invalid .csv', async () => { - expect(await parse('src/test/stub/invalid.csv')).toStrictEqual({}) - }) -}) diff --git a/src/test/js/run.mjs b/src/test/js/run.mjs deleted file mode 100644 index 631e0221..00000000 --- a/src/test/js/run.mjs +++ /dev/null @@ -1,111 +0,0 @@ -import fse from 'fs-extra' -import path from 'node:path' -import {fileURLToPath} from 'node:url' - -import { run } from '../../main/js/index.js' -import { getDirs, tempDir } from '../../main/js/util.js' -import { getSources } from '../../main/js/parser/index.js' - -const __dirname = path.dirname(fileURLToPath(import.meta.url)) -const out = path.resolve(process.cwd(), 'test') -const input = path.join(__dirname, '../stub/data/**') -const getFileStruct = (dir) => getSources('**/*', dir).then(getDirs) - -afterAll(async () => await fse.remove(out)) - -describe('generate 11ty app', () => { - it('from .csv file', async () => { - const csvPath = path.join(__dirname, '../stub/test.csv') - const output = await tempDir(out) - - await run({ input: csvPath, output}) - - expect(await getFileStruct(output)).toMatchSnapshot() - }) - - it('from multiple files with the same date', async () => { - const output = await tempDir(out) - await run({ input: 'src/test/stub/test.{csv,json,yaml}', output }) - - expect(await getFileStruct(output)).toMatchSnapshot() - }) - - it('from multiple files', async () => { - const output = await tempDir(out) - await run({ input: 'src/test/stub/test.{csv,json}', output }) - - expect(await getFileStruct(output)).toMatchSnapshot() - }) - - it('from .json file', async () => { - const input = path.join(__dirname, '../stub/test.json') - const output = await tempDir(out) - - await run({ input, output }) - - expect(await getFileStruct(output)).toMatchSnapshot() - }) - - it('from .yml file', async () => { - const input = path.join(__dirname, '../stub/test.yml') - const output = await tempDir(out) - - await run({ input, output }) - - expect(await getFileStruct(output)).toMatchSnapshot() - }) - - it('generate navigation page', async () => { - const output = await tempDir(out) - await run({ input, output, navPage: true }) - expect(fse.readFileSync(path.join(output, 'index.html'),'utf8')).toMatchSnapshot() - }) - - it('generate navigation page title', async () => { - const output = await tempDir(out) - await run({ - input, - output, - navPage: true, - navTitle: 'title', - }) - expect(fse.readFileSync(path.join(output, 'index.html'),'utf8')).toMatchSnapshot() - }) - - it('generate custom navigation page: title, footer', async () => { - const output = await tempDir(out) - await run({ - input, - output, - navTitle: 'test', - navPage: true, - navFooter: 'foobarbaz' - }) - expect(fse.readFileSync(path.join(output, 'index.html'),'utf8')).toMatchSnapshot() - }) - - it('generate navigation page from custom templates', async () => { - const output = await tempDir(out) - await run({ - input, - output, - navTitle: 'test', - templates: path.join(__dirname, '../tpl'), - navPage: true, - }) - expect(fse.readFileSync(path.join(output, 'index.html'),'utf8')).toMatchSnapshot() - }) - - it('generate navigation page by data2', async () => { - const output = await tempDir(out) - const input = 'src/test/stub/data2/**' - - await run({ - input, - output, - navPage: true, - autoscope: true - }) - expect(fse.readFileSync(path.join(output, 'index.html'),'utf8')).toMatchSnapshot() - }) -}) diff --git a/src/test/js/validator.js b/src/test/js/validator.js deleted file mode 100644 index ab95ea30..00000000 --- a/src/test/js/validator.js +++ /dev/null @@ -1,104 +0,0 @@ -import { - _validate, - radarSchema, - validate, -} from '../../main/js/parser/validator.js' - -describe('validate', () => { - it('validate is not undefined ', () => { - expect(_validate).toBeDefined() - }) - it('valid data ', () => { - const obj = { - meta: { - title: '', - date: '', - legend: '', - }, - data: [ - { - name: '', - quadrant: '', - ring: '', - description: '', - moved: '', - }, - ], - quadrantAliases: {}, - } - expect(_validate(obj, radarSchema)).toBe(true) - expect(validate(obj, radarSchema)).toBe(obj) - }) - - it('invalid data ', () => { - const obj = { - meta: { - title: '', - }, - data: [ - { - name: '', - quadrant: '', - ring: '', - description: '', - }, - ], - } - expect(_validate(obj, radarSchema)).toBe(false) - }) - - describe('quadrantAliases', () => { - const cases = [ - [ - 'q* → string', - { - q1: 'foo', - }, - true, - ], - [ - 'q* → string[]', - { - q1: ['foo'], - }, - true, - ], - [ - 'q* → number', - { - q1: 1, - }, - false, - ], - [ - 'q* → q*', - { - q1: 'q1', - }, - false, - ], - [ - '* → q* enum', - { - foo: 'q1', - }, - true, - ], - [ - '* → q* enum', - { - foo: 'foo', - }, - false, - ], - ] - - cases.forEach(([name, obj, result]) => { - it(name, () => { - expect(_validate(obj, radarSchema.properties.quadrantAliases)).toBe( - result, - ) - }) - }) - }) -}) diff --git a/src/test/stub/data/js/test.json b/src/test/stub/data/js/test.json deleted file mode 100644 index a3a09d2b..00000000 --- a/src/test/stub/data/js/test.json +++ /dev/null @@ -1,49 +0,0 @@ -{ - "meta":{ - "title": "tech radar js", - "date": "2021-06-12", - "legend": "bla bla bla" - }, - "data":[ - { - "name": "TypeScript", - "quadrant": "languages-and-frameworks", - "ring": "Adopt", - "description": "Статически типизированный ЖС", - "moved": "1" - }, - { - "name": "Nodejs", - "quadrant": "Platforms", - "ring": "Adopt", - "description": "", - "moved": "" - }, - { - "name": "codeclimate", - "quadrant": "tools", - "ring": "Trial", - "description": "Статический анализатор кода", - "moved": "0" - }, - { - "name": "Гексагональная архитектура", - "quadrant": "Techniques", - "ring": "Assess", - "description": "Унификации контракта интерфейсов различных слоев приложений", - "moved": "-1" - } - ], - "quadrantAliases": { - "q1": ["languages-and-frameworks", "lnf"], - "q2": "platforms", - "tools": "q3", - "techniques": "q4" - }, - "quadrantTitles": { - "q1": "Languages and frameworks", - "q2": "Platforms", - "q3": "Tools", - "q4" :"Techniques" - } -} diff --git a/src/test/stub/data/js/test.yml b/src/test/stub/data/js/test.yml deleted file mode 100644 index 52f7a5ef..00000000 --- a/src/test/stub/data/js/test.yml +++ /dev/null @@ -1,43 +0,0 @@ -meta: - title: tech radar js - date: "2021-06-11" - legend: bla bla bla -data: - - - name: TypeScript - quadrant: languages-and-frameworks - ring: Adopt - description: Статически типизированный ЖС - moved: 1 - - - name: Nodejs - quadrant: Platforms - ring: Adopt - description: - moved: - - - name: codeclimate - quadrant: tools - ring: Trial - description: Статический анализатор кода - moved: 0 - - - name: Гексагональная архитектура - quadrant: Techniques - ring: Assess - description: Унификации контракта интерфейсов различных слоев приложений - moved: -1 -quadrantAliases: - q1: - - languages-and-frameworks - - lnf - - lang - - framework - q2: platforms - q3: tools - q4: techniques -quadrantTitles: - q1: Languages and frameworks - q2: Platforms - q3: Tools - q4: Techniques diff --git a/src/test/stub/data2/ios/test.yml b/src/test/stub/data2/ios/test.yml deleted file mode 100644 index abc625f0..00000000 --- a/src/test/stub/data2/ios/test.yml +++ /dev/null @@ -1,39 +0,0 @@ -meta: - title: tech radar js - date: "2021-06-11" - legend: bla bla bla -data: - - - name: TypeScript - quadrant: languages-and-frameworks - ring: Adopt - description: Статически типизированный ЖС - moved: 1 - - - name: Nodejs - quadrant: Platforms - ring: Adopt - description: - moved: - - - name: codeclimate - quadrant: tools - ring: Trial - description: Статический анализатор кода - moved: 0 - - - name: Гексагональная архитектура - quadrant: Techniques - ring: Assess - description: Унификации контракта интерфейсов различных слоев приложений - moved: -1 -quadrantAliases: - languages-and-frameworks: q1 - platforms: q2 - tools: q3 - techniques: q4 -quadrantTitles: - q1: Languages and frameworks - q2: Platforms - q3: Tools - q4: Techniques diff --git a/src/test/stub/data2/js/test.json b/src/test/stub/data2/js/test.json deleted file mode 100644 index 38d55c8c..00000000 --- a/src/test/stub/data2/js/test.json +++ /dev/null @@ -1,49 +0,0 @@ -{ - "meta":{ - "title": "tech radar js", - "date": "2021-06-12", - "legend": "bla bla bla" - }, - "data":[ - { - "name": "TypeScript", - "quadrant": "languages-and-frameworks", - "ring": "Adopt", - "description": "Статически типизированный ЖС", - "moved": "1" - }, - { - "name": "Nodejs", - "quadrant": "Platforms", - "ring": "Adopt", - "description": "", - "moved": "" - }, - { - "name": "codeclimate", - "quadrant": "tools", - "ring": "Trial", - "description": "Статический анализатор кода", - "moved": "0" - }, - { - "name": "Гексагональная архитектура", - "quadrant": "Techniques", - "ring": "Assess", - "description": "Унификации контракта интерфейсов различных слоев приложений", - "moved": "-1" - } - ], - "quadrantAliases": { - "languages-and-frameworks": "q1", - "platforms": "q2", - "tools": "q3", - "techniques": "q4" - }, - "quadrantTitles": { - "q1": "Languages and frameworks", - "q2": "Platforms", - "q3": "Tools", - "q4" :"Techniques" - } -} diff --git a/src/test/stub/invalid.csv b/src/test/stub/invalid.csv deleted file mode 100644 index 65fb5baa..00000000 --- a/src/test/stub/invalid.csv +++ /dev/null @@ -1,18 +0,0 @@ -title -not work it -=== -date -2021-06-18 -=== -legend -bla bla bla -=== -name,quadrant,ring,description,moved -TypeScript,language,Adopt,Статически типизированный ЖС,1,,,, -Nodejs,Platforms,Adopt,, -codeclimate,tools,Trial,Статический анализатор кода,0 -Гексагональная архитектура,Techniques,Assess,Унификации контракта интерфейсов различных слоев приложений,-1 -=== -quadrant,alias -languages-and-frameworks,language - diff --git a/src/test/stub/test.csv b/src/test/stub/test.csv deleted file mode 100644 index d3425999..00000000 --- a/src/test/stub/test.csv +++ /dev/null @@ -1,28 +0,0 @@ -title -work it -=== -date -2021-06-18 -=== -legend -bla bla bla -=== -name,quadrant,ring,description,moved -codeclimate, tools, Trial, Статический анализатор кода, 0 -Nodejs, Platforms, Adopt, , -TypeScript, language, Adopt, "Статически, типизированный ЖС", 1 -Гексагональная архитектура, Techniques, Assess, Унификации контракта интерфейсов различных слоев приложений, -1 -=== -quadrant,alias -q1, language -q1, Languages-and-frameworks -q2, Platforms -q3, Tools -q4, Techniques -=== -quadrant,title -q1, Languages and frameworks -q2, Platforms -q3, Tools -q4, Techniques - diff --git a/src/test/stub/test.json b/src/test/stub/test.json deleted file mode 100644 index 38d55c8c..00000000 --- a/src/test/stub/test.json +++ /dev/null @@ -1,49 +0,0 @@ -{ - "meta":{ - "title": "tech radar js", - "date": "2021-06-12", - "legend": "bla bla bla" - }, - "data":[ - { - "name": "TypeScript", - "quadrant": "languages-and-frameworks", - "ring": "Adopt", - "description": "Статически типизированный ЖС", - "moved": "1" - }, - { - "name": "Nodejs", - "quadrant": "Platforms", - "ring": "Adopt", - "description": "", - "moved": "" - }, - { - "name": "codeclimate", - "quadrant": "tools", - "ring": "Trial", - "description": "Статический анализатор кода", - "moved": "0" - }, - { - "name": "Гексагональная архитектура", - "quadrant": "Techniques", - "ring": "Assess", - "description": "Унификации контракта интерфейсов различных слоев приложений", - "moved": "-1" - } - ], - "quadrantAliases": { - "languages-and-frameworks": "q1", - "platforms": "q2", - "tools": "q3", - "techniques": "q4" - }, - "quadrantTitles": { - "q1": "Languages and frameworks", - "q2": "Platforms", - "q3": "Tools", - "q4" :"Techniques" - } -} diff --git a/src/test/stub/test.yml b/src/test/stub/test.yml deleted file mode 100644 index abc625f0..00000000 --- a/src/test/stub/test.yml +++ /dev/null @@ -1,39 +0,0 @@ -meta: - title: tech radar js - date: "2021-06-11" - legend: bla bla bla -data: - - - name: TypeScript - quadrant: languages-and-frameworks - ring: Adopt - description: Статически типизированный ЖС - moved: 1 - - - name: Nodejs - quadrant: Platforms - ring: Adopt - description: - moved: - - - name: codeclimate - quadrant: tools - ring: Trial - description: Статический анализатор кода - moved: 0 - - - name: Гексагональная архитектура - quadrant: Techniques - ring: Assess - description: Унификации контракта интерфейсов различных слоев приложений - moved: -1 -quadrantAliases: - languages-and-frameworks: q1 - platforms: q2 - tools: q3 - techniques: q4 -quadrantTitles: - q1: Languages and frameworks - q2: Platforms - q3: Tools - q4: Techniques diff --git a/src/test/stub/test2.csv b/src/test/stub/test2.csv deleted file mode 100644 index 9eb7b17d..00000000 --- a/src/test/stub/test2.csv +++ /dev/null @@ -1,27 +0,0 @@ -title -work it -=== -date -2021-06-18 -=== -legend -bla bla bla -=== -name,quadrant,ring,description,moved -TypeScript,lang,Adopt,Статически типизированный ЖС,1 -Nodejs,plat,Adopt,, -codeclimate,tool,Trial,Статический анализатор кода,0 -Гексагональная архитектура,tech,Assess,Унификации контракта интерфейсов различных слоев приложений,-1 -=== -alias,quadrant -lang,q1 -plat,q2 -tool,q3 -tech,q4 -=== -quadrant,title -q1,test 1 -q2,test 2 -q3,test 3 -q4,test 4 - diff --git a/src/test/stub/test2.json b/src/test/stub/test2.json deleted file mode 100644 index d83dd8a9..00000000 --- a/src/test/stub/test2.json +++ /dev/null @@ -1,49 +0,0 @@ -{ - "meta":{ - "title": "tech radar js", - "date": "2021-06-12", - "legend": "bla bla bla" - }, - "data":[ - { - "name": "TypeScript", - "quadrant": "lang", - "ring": "Adopt", - "description": "Статически типизированный ЖС", - "moved": "1" - }, - { - "name": "Nodejs", - "quadrant": "plat", - "ring": "Adopt", - "description": "", - "moved": "" - }, - { - "name": "codeclimate", - "quadrant": "tool", - "ring": "Trial", - "description": "Статический анализатор кода", - "moved": "0" - }, - { - "name": "Гексагональная архитектура", - "quadrant": "tech", - "ring": "Assess", - "description": "Унификации контракта интерфейсов различных слоев приложений", - "moved": "-1" - } - ], - "quadrantAliases": { - "lang": "q1", - "plat": "q2", - "tool": "q3", - "tech": "q4" - }, - "quadrantTitles": { - "q1": "test 1", - "q2": "test 2", - "q3": "test 3", - "q4" :"test 4" - } -} diff --git a/src/test/stub/test2.yml b/src/test/stub/test2.yml deleted file mode 100644 index b9c8ac00..00000000 --- a/src/test/stub/test2.yml +++ /dev/null @@ -1,40 +0,0 @@ -meta: - title: tech radar js - date: "2021-06-12" - legend: bla bla bla -data: - - - name: TypeScript - quadrant: lang - ring: Adopt - description: Статически типизированный ЖС - moved: 1 - - - name: Nodejs - quadrant: plat - ring: Adopt - description: - moved: - - - name: codeclimate - quadrant: tool - ring: Trial - description: Статический анализатор кода - moved: 0 - - - name: Гексагональная архитектура - quadrant: tech - ring: Assess - description: Унификации контракта интерфейсов различных слоев приложений - moved: -1 -quadrantAliases: - lang: q1 - plat: q2 - tool: q3 - tech: q4 -quadrantTitles: - q1: test 1 - q2: test 2 - q3: test 3 - q4: test 4 - diff --git a/src/test/tpl/_includes/footer.njk b/src/test/tpl/_includes/footer.njk deleted file mode 100644 index 6eeb4493..00000000 --- a/src/test/tpl/_includes/footer.njk +++ /dev/null @@ -1,3 +0,0 @@ -
-Testing footer template -
diff --git a/tsconfig.cjs.json b/tsconfig.cjs.json new file mode 100644 index 00000000..68ec17c6 --- /dev/null +++ b/tsconfig.cjs.json @@ -0,0 +1,18 @@ +{ + "extends": "./tsconfig.json", + "compilerOptions": { + "composite": true, + "target": "es5", + "module": "commonjs", + "lib": [ + "esnext" + ], + "rootDir": "./src/main/ts", + "outDir": "./target/cjs", + "tsBuildInfoFile": "./target/cjs/.tsbuildinfo" + }, + "include": [ + "./src/main/ts" + ], + "references": [] +} diff --git a/tsconfig.esm.json b/tsconfig.esm.json new file mode 100644 index 00000000..a59cfccd --- /dev/null +++ b/tsconfig.esm.json @@ -0,0 +1,15 @@ +{ + "extends": "./tsconfig.json", + "compilerOptions": { + "composite": true, + "target": "es2022", + "module": "es2022", + "rootDir": "./src/main/ts", + "outDir": "./target/esm", + "tsBuildInfoFile": "./target/esm/.tsbuildinfo" + }, + "include": [ + "./src/main/ts" + ], + "references": [] +} diff --git a/tsconfig.json b/tsconfig.json new file mode 100644 index 00000000..9f13a87b --- /dev/null +++ b/tsconfig.json @@ -0,0 +1,30 @@ +{ + "compilerOptions": { + "module": "es2022", + "target": "es2022", + "moduleResolution": "node", + "jsx": "react-jsx", + "strict": true, + "skipLibCheck": true, + "esModuleInterop": true, + "experimentalDecorators": true, + "emitDecoratorMetadata": true, + "isolatedModules": true, + "resolveJsonModule": true, + "removeComments": false, + "downlevelIteration": true, + "importHelpers": true, + "baseUrl": "./", + "types": [ + "node" + ], + "paths": {} + }, + "include": [ + "./src/main/ts", + "./src/test/ts" + ], + "exclude": [ + "./node_modules" + ] +} diff --git a/yarn.lock b/yarn.lock index 2682271c..b80b381b 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1,5153 +1,3501 @@ -# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. -# yarn lockfile v1 - - -"@11ty/dependency-tree@^2.0.1": - version "2.0.1" - resolved "https://registry.yarnpkg.com/@11ty/dependency-tree/-/dependency-tree-2.0.1.tgz#b3c8fa6c91c4a29257e70dd19d26cca75cde89d2" - integrity sha512-5R+DsT9LJ9tXiSQ4y+KLFppCkQyXhzAm1AIuBWE/sbU0hSXY5pkhoqQYEcPJQFg/nglL+wD55iv2j+7O96UAvg== - -"@11ty/eleventy-dev-server@^1.0.4": - version "1.0.4" - resolved "https://registry.yarnpkg.com/@11ty/eleventy-dev-server/-/eleventy-dev-server-1.0.4.tgz#87c2cf182ed22f90ac2793e1e1337a0d9e32b318" - integrity sha512-qVBmV2G1KF/0o5B/3fITlrrDHy4bONUI2YuN3/WJ3BNw4NU1d/we8XhKrlgq13nNvHoBx5czYp3LZt8qRG53Fg== - dependencies: - "@11ty/eleventy-utils" "^1.0.1" - chokidar "^3.5.3" - debug "^4.3.4" - dev-ip "^1.0.1" - finalhandler "^1.2.0" - mime "^3.0.0" - minimist "^1.2.8" - morphdom "^2.7.0" - please-upgrade-node "^3.2.0" - ssri "^8.0.1" - ws "^8.13.0" - -"@11ty/eleventy-utils@^1.0.1": - version "1.0.1" - resolved "https://registry.yarnpkg.com/@11ty/eleventy-utils/-/eleventy-utils-1.0.1.tgz#e89dc94b475284e5003525db5078663c5087db82" - integrity sha512-HPpCTz4PzudcQU+i+x6GSNHVqgnvRhnVYg5dLKaAoRWLN966odAGsBxKSyhF8i1MdlOPtsytYb2AGWP7jISC5w== - dependencies: - normalize-path "^3.0.0" - -"@11ty/eleventy@^2.0.1": - version "2.0.1" - resolved "https://registry.yarnpkg.com/@11ty/eleventy/-/eleventy-2.0.1.tgz#d96104c401a83b59f69a207c96aa53ad42131b15" - integrity sha512-t8XVUbCJByhVEa1RzO0zS2QzbL3wPY8ot1yUw9noqiSHxJWUwv6jiwm1/MZDPTYtkZH2ZHvdQIRQ5/SjG9XmLw== - dependencies: - "@11ty/dependency-tree" "^2.0.1" - "@11ty/eleventy-dev-server" "^1.0.4" - "@11ty/eleventy-utils" "^1.0.1" - "@11ty/lodash-custom" "^4.17.21" - "@iarna/toml" "^2.2.5" - "@sindresorhus/slugify" "^1.1.2" - bcp-47-normalize "^1.1.1" - chokidar "^3.5.3" - cross-spawn "^7.0.3" - debug "^4.3.4" - dependency-graph "^0.11.0" - ejs "^3.1.9" - fast-glob "^3.2.12" - graceful-fs "^4.2.11" - gray-matter "^4.0.3" - hamljs "^0.6.2" - handlebars "^4.7.7" - is-glob "^4.0.3" - iso-639-1 "^2.1.15" - kleur "^4.1.5" - liquidjs "^10.7.0" - luxon "^3.3.0" - markdown-it "^13.0.1" - micromatch "^4.0.5" - minimist "^1.2.8" - moo "^0.5.2" - multimatch "^5.0.0" - mustache "^4.2.0" - normalize-path "^3.0.0" - nunjucks "^3.2.3" - path-to-regexp "^6.2.1" - please-upgrade-node "^3.2.0" - posthtml "^0.16.6" - posthtml-urls "^1.0.0" - pug "^3.0.2" - recursive-copy "^2.0.14" - semver "^7.3.8" - slugify "^1.6.6" - -"@11ty/lodash-custom@^4.17.21": - version "4.17.21" - resolved "https://registry.yarnpkg.com/@11ty/lodash-custom/-/lodash-custom-4.17.21.tgz#a8d2e25a47ee3bb58b71cde4edc2ae8dd3d1b269" - integrity sha512-Mqt6im1xpb1Ykn3nbcCovWXK3ggywRJa+IXIdoz4wIIK+cvozADH63lexcuPpGS/gJ6/m2JxyyXDyupkMr5DHw== - -"@aashutoshrathi/word-wrap@^1.2.3": - version "1.2.6" - resolved "https://registry.yarnpkg.com/@aashutoshrathi/word-wrap/-/word-wrap-1.2.6.tgz#bd9154aec9983f77b3a034ecaa015c2e4201f6cf" - integrity sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA== - -"@ampproject/remapping@^2.2.0": - version "2.2.0" - resolved "https://registry.yarnpkg.com/@ampproject/remapping/-/remapping-2.2.0.tgz#56c133824780de3174aed5ab6834f3026790154d" - integrity sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w== - dependencies: - "@jridgewell/gen-mapping" "^0.1.0" - "@jridgewell/trace-mapping" "^0.3.9" - -"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.12.13", "@babel/code-frame@^7.16.7", "@babel/code-frame@^7.18.6": - version "7.18.6" - resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.18.6.tgz#3b25d38c89600baa2dcc219edfa88a74eb2c427a" - integrity sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q== - dependencies: - "@babel/highlight" "^7.18.6" - -"@babel/compat-data@^7.20.5": - version "7.21.0" - resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.21.0.tgz#c241dc454e5b5917e40d37e525e2f4530c399298" - integrity sha512-gMuZsmsgxk/ENC3O/fRw5QY8A9/uxQbbCEypnLIiYYc/qVJtEV7ouxC3EllIIwNzMqAQee5tanFabWsUOutS7g== - -"@babel/core@^7.11.6", "@babel/core@^7.12.3": - version "7.21.0" - resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.21.0.tgz#1341aefdcc14ccc7553fcc688dd8986a2daffc13" - integrity sha512-PuxUbxcW6ZYe656yL3EAhpy7qXKq0DmYsrJLpbB8XrsCP9Nm+XCg9XFMb5vIDliPD7+U/+M+QJlH17XOcB7eXA== - dependencies: - "@ampproject/remapping" "^2.2.0" - "@babel/code-frame" "^7.18.6" - "@babel/generator" "^7.21.0" - "@babel/helper-compilation-targets" "^7.20.7" - "@babel/helper-module-transforms" "^7.21.0" - "@babel/helpers" "^7.21.0" - "@babel/parser" "^7.21.0" - "@babel/template" "^7.20.7" - "@babel/traverse" "^7.21.0" - "@babel/types" "^7.21.0" - convert-source-map "^1.7.0" - debug "^4.1.0" - gensync "^1.0.0-beta.2" - json5 "^2.2.2" - semver "^6.3.0" - -"@babel/generator@7.17.7": - version "7.17.7" - resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.17.7.tgz#8da2599beb4a86194a3b24df6c085931d9ee45ad" - integrity sha512-oLcVCTeIFadUoArDTwpluncplrYBmTCCZZgXCbgNGvOBBiSDDK3eWO4b/+eOTli5tKv1lg+a5/NAXg+nTcei1w== - dependencies: - "@babel/types" "^7.17.0" - jsesc "^2.5.1" - source-map "^0.5.0" - -"@babel/generator@^7.17.3", "@babel/generator@^7.21.0", "@babel/generator@^7.21.1", "@babel/generator@^7.7.2": - version "7.21.1" - resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.21.1.tgz#951cc626057bc0af2c35cd23e9c64d384dea83dd" - integrity sha512-1lT45bAYlQhFn/BHivJs43AiW2rg3/UbLyShGfF3C0KmHvO5fSghWd5kBJy30kpRRucGzXStvnnCFniCR2kXAA== - dependencies: - "@babel/types" "^7.21.0" - "@jridgewell/gen-mapping" "^0.3.2" - "@jridgewell/trace-mapping" "^0.3.17" - jsesc "^2.5.1" - -"@babel/helper-compilation-targets@^7.20.7": - version "7.20.7" - resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.20.7.tgz#a6cd33e93629f5eb473b021aac05df62c4cd09bb" - integrity sha512-4tGORmfQcrc+bvrjb5y3dG9Mx1IOZjsHqQVUz7XCNHO+iTmqxWnVg3KRygjGmpRLJGdQSKuvFinbIb0CnZwHAQ== - dependencies: - "@babel/compat-data" "^7.20.5" - "@babel/helper-validator-option" "^7.18.6" - browserslist "^4.21.3" - lru-cache "^5.1.1" - semver "^6.3.0" - -"@babel/helper-environment-visitor@^7.16.7", "@babel/helper-environment-visitor@^7.18.9": - version "7.18.9" - resolved "https://registry.yarnpkg.com/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.9.tgz#0c0cee9b35d2ca190478756865bb3528422f51be" - integrity sha512-3r/aACDJ3fhQ/EVgFy0hpj8oHyHpQc+LPtJoY9SzTThAsStm4Ptegq92vqKoE3vD706ZVFWITnMnxucw+S9Ipg== - -"@babel/helper-function-name@^7.16.7", "@babel/helper-function-name@^7.21.0": - version "7.21.0" - resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.21.0.tgz#d552829b10ea9f120969304023cd0645fa00b1b4" - integrity sha512-HfK1aMRanKHpxemaY2gqBmL04iAPOPRj7DxtNbiDOrJK+gdwkiNRVpCpUJYbUT+aZyemKN8brqTOxzCaG6ExRg== - dependencies: - "@babel/template" "^7.20.7" - "@babel/types" "^7.21.0" - -"@babel/helper-hoist-variables@^7.16.7", "@babel/helper-hoist-variables@^7.18.6": - version "7.18.6" - resolved "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.18.6.tgz#d4d2c8fb4baeaa5c68b99cc8245c56554f926678" - integrity sha512-UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q== - dependencies: - "@babel/types" "^7.18.6" - -"@babel/helper-module-imports@^7.18.6": - version "7.18.6" - resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.18.6.tgz#1e3ebdbbd08aad1437b428c50204db13c5a3ca6e" - integrity sha512-0NFvs3VkuSYbFi1x2Vd6tKrywq+z/cLeYC/RJNFrIX/30Bf5aiGYbtvGXolEktzJH8o5E5KJ3tT+nkxuuZFVlA== - dependencies: - "@babel/types" "^7.18.6" - -"@babel/helper-module-transforms@^7.21.0": - version "7.21.2" - resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.21.2.tgz#160caafa4978ac8c00ac66636cb0fa37b024e2d2" - integrity sha512-79yj2AR4U/Oqq/WOV7Lx6hUjau1Zfo4cI+JLAVYeMV5XIlbOhmjEk5ulbTc9fMpmlojzZHkUUxAiK+UKn+hNQQ== - dependencies: - "@babel/helper-environment-visitor" "^7.18.9" - "@babel/helper-module-imports" "^7.18.6" - "@babel/helper-simple-access" "^7.20.2" - "@babel/helper-split-export-declaration" "^7.18.6" - "@babel/helper-validator-identifier" "^7.19.1" - "@babel/template" "^7.20.7" - "@babel/traverse" "^7.21.2" - "@babel/types" "^7.21.2" - -"@babel/helper-plugin-utils@^7.0.0", "@babel/helper-plugin-utils@^7.10.4", "@babel/helper-plugin-utils@^7.12.13", "@babel/helper-plugin-utils@^7.14.5", "@babel/helper-plugin-utils@^7.18.6", "@babel/helper-plugin-utils@^7.19.0", "@babel/helper-plugin-utils@^7.8.0": - version "7.20.2" - resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.20.2.tgz#d1b9000752b18d0877cff85a5c376ce5c3121629" - integrity sha512-8RvlJG2mj4huQ4pZ+rU9lqKi9ZKiRmuvGuM2HlWmkmgOhbs6zEAw6IEiJ5cQqGbDzGZOhwuOQNtZMi/ENLjZoQ== - -"@babel/helper-simple-access@^7.20.2": - version "7.20.2" - resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.20.2.tgz#0ab452687fe0c2cfb1e2b9e0015de07fc2d62dd9" - integrity sha512-+0woI/WPq59IrqDYbVGfshjT5Dmk/nnbdpcF8SnMhhXObpTq2KNBdLFRFrkVdbDOyUmHBCxzm5FHV1rACIkIbA== - dependencies: - "@babel/types" "^7.20.2" - -"@babel/helper-split-export-declaration@^7.16.7", "@babel/helper-split-export-declaration@^7.18.6": - version "7.18.6" - resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.18.6.tgz#7367949bc75b20c6d5a5d4a97bba2824ae8ef075" - integrity sha512-bde1etTx6ZyTmobl9LLMMQsaizFVZrquTEHOqKeQESMKo4PlObf+8+JA25ZsIpZhT/WEd39+vOdLXAFG/nELpA== - dependencies: - "@babel/types" "^7.18.6" - -"@babel/helper-string-parser@^7.19.4": - version "7.19.4" - resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.19.4.tgz#38d3acb654b4701a9b77fb0615a96f775c3a9e63" - integrity sha512-nHtDoQcuqFmwYNYPz3Rah5ph2p8PFeFCsZk9A/48dPc/rGocJ5J3hAAZ7pb76VWX3fZKu+uEr/FhH5jLx7umrw== - -"@babel/helper-validator-identifier@^7.16.7", "@babel/helper-validator-identifier@^7.18.6", "@babel/helper-validator-identifier@^7.19.1": - version "7.19.1" - resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.19.1.tgz#7eea834cf32901ffdc1a7ee555e2f9c27e249ca2" - integrity sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w== - -"@babel/helper-validator-option@^7.18.6": - version "7.21.0" - resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.21.0.tgz#8224c7e13ace4bafdc4004da2cf064ef42673180" - integrity sha512-rmL/B8/f0mKS2baE9ZpyTcTavvEuWhTTW8amjzXNvYG4AwBsqTLikfXsEofsJEfKHf+HQVQbFOHy6o+4cnC/fQ== - -"@babel/helpers@^7.21.0": - version "7.21.0" - resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.21.0.tgz#9dd184fb5599862037917cdc9eecb84577dc4e7e" - integrity sha512-XXve0CBtOW0pd7MRzzmoyuSj0e3SEzj8pgyFxnTT1NJZL38BD1MK7yYrm8yefRPIDvNNe14xR4FdbHwpInD4rA== - dependencies: - "@babel/template" "^7.20.7" - "@babel/traverse" "^7.21.0" - "@babel/types" "^7.21.0" - -"@babel/highlight@^7.18.6": - version "7.18.6" - resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.18.6.tgz#81158601e93e2563795adcbfbdf5d64be3f2ecdf" - integrity sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g== - dependencies: - "@babel/helper-validator-identifier" "^7.18.6" - chalk "^2.0.0" - js-tokens "^4.0.0" - -"@babel/parser@^7.1.0", "@babel/parser@^7.14.7", "@babel/parser@^7.17.3", "@babel/parser@^7.20.15", "@babel/parser@^7.20.5", "@babel/parser@^7.20.7", "@babel/parser@^7.21.0", "@babel/parser@^7.21.2", "@babel/parser@^7.6.0", "@babel/parser@^7.9.6": - version "7.21.2" - resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.21.2.tgz#dacafadfc6d7654c3051a66d6fe55b6cb2f2a0b3" - integrity sha512-URpaIJQwEkEC2T9Kn+Ai6Xe/02iNaVCuT/PtoRz3GPVJVDpPd7mLo+VddTbhCRU9TXqW5mSrQfXZyi8kDKOVpQ== - -"@babel/plugin-syntax-async-generators@^7.8.4": - version "7.8.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz#a983fb1aeb2ec3f6ed042a210f640e90e786fe0d" - integrity sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw== - dependencies: - "@babel/helper-plugin-utils" "^7.8.0" - -"@babel/plugin-syntax-bigint@^7.8.3": - version "7.8.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-bigint/-/plugin-syntax-bigint-7.8.3.tgz#4c9a6f669f5d0cdf1b90a1671e9a146be5300cea" - integrity sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg== - dependencies: - "@babel/helper-plugin-utils" "^7.8.0" - -"@babel/plugin-syntax-class-properties@^7.8.3": - version "7.12.13" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz#b5c987274c4a3a82b89714796931a6b53544ae10" - integrity sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA== - dependencies: - "@babel/helper-plugin-utils" "^7.12.13" - -"@babel/plugin-syntax-import-meta@^7.8.3": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz#ee601348c370fa334d2207be158777496521fd51" - integrity sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g== - dependencies: - "@babel/helper-plugin-utils" "^7.10.4" - -"@babel/plugin-syntax-json-strings@^7.8.3": - version "7.8.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz#01ca21b668cd8218c9e640cb6dd88c5412b2c96a" - integrity sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA== - dependencies: - "@babel/helper-plugin-utils" "^7.8.0" - -"@babel/plugin-syntax-jsx@^7.7.2": - version "7.18.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.18.6.tgz#a8feef63b010150abd97f1649ec296e849943ca0" - integrity sha512-6mmljtAedFGTWu2p/8WIORGwy+61PLgOMPOdazc7YoJ9ZCWUyFy3A6CpPkRKLKD1ToAesxX8KGEViAiLo9N+7Q== - dependencies: - "@babel/helper-plugin-utils" "^7.18.6" - -"@babel/plugin-syntax-logical-assignment-operators@^7.8.3": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz#ca91ef46303530448b906652bac2e9fe9941f699" - integrity sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig== - dependencies: - "@babel/helper-plugin-utils" "^7.10.4" - -"@babel/plugin-syntax-nullish-coalescing-operator@^7.8.3": - version "7.8.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz#167ed70368886081f74b5c36c65a88c03b66d1a9" - integrity sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ== - dependencies: - "@babel/helper-plugin-utils" "^7.8.0" - -"@babel/plugin-syntax-numeric-separator@^7.8.3": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz#b9b070b3e33570cd9fd07ba7fa91c0dd37b9af97" - integrity sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug== - dependencies: - "@babel/helper-plugin-utils" "^7.10.4" - -"@babel/plugin-syntax-object-rest-spread@^7.8.3": - version "7.8.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz#60e225edcbd98a640332a2e72dd3e66f1af55871" - integrity sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA== - dependencies: - "@babel/helper-plugin-utils" "^7.8.0" - -"@babel/plugin-syntax-optional-catch-binding@^7.8.3": - version "7.8.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz#6111a265bcfb020eb9efd0fdfd7d26402b9ed6c1" - integrity sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q== - dependencies: - "@babel/helper-plugin-utils" "^7.8.0" - -"@babel/plugin-syntax-optional-chaining@^7.8.3": - version "7.8.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz#4f69c2ab95167e0180cd5336613f8c5788f7d48a" - integrity sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg== - dependencies: - "@babel/helper-plugin-utils" "^7.8.0" - -"@babel/plugin-syntax-top-level-await@^7.8.3": - version "7.14.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz#c1cfdadc35a646240001f06138247b741c34d94c" - integrity sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw== - dependencies: - "@babel/helper-plugin-utils" "^7.14.5" - -"@babel/plugin-syntax-typescript@^7.7.2": - version "7.20.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.20.0.tgz#4e9a0cfc769c85689b77a2e642d24e9f697fc8c7" - integrity sha512-rd9TkG+u1CExzS4SM1BlMEhMXwFLKVjOAFFCDx9PbX5ycJWDoWMcwdJH9RhkPu1dOgn5TrxLot/Gx6lWFuAUNQ== - dependencies: - "@babel/helper-plugin-utils" "^7.19.0" - -"@babel/template@^7.20.7", "@babel/template@^7.3.3": - version "7.20.7" - resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.20.7.tgz#a15090c2839a83b02aa996c0b4994005841fd5a8" - integrity sha512-8SegXApWe6VoNw0r9JHpSteLKTpTiLZ4rMlGIm9JQ18KiCtyQiAMEazujAHrUS5flrcqYZa75ukev3P6QmUwUw== - dependencies: - "@babel/code-frame" "^7.18.6" - "@babel/parser" "^7.20.7" - "@babel/types" "^7.20.7" - -"@babel/traverse@7.17.3": - version "7.17.3" - resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.17.3.tgz#0ae0f15b27d9a92ba1f2263358ea7c4e7db47b57" - integrity sha512-5irClVky7TxRWIRtxlh2WPUUOLhcPN06AGgaQSB8AEwuyEBgJVuJ5imdHm5zxk8w0QS5T+tDfnDxAlhWjpb7cw== - dependencies: - "@babel/code-frame" "^7.16.7" - "@babel/generator" "^7.17.3" - "@babel/helper-environment-visitor" "^7.16.7" - "@babel/helper-function-name" "^7.16.7" - "@babel/helper-hoist-variables" "^7.16.7" - "@babel/helper-split-export-declaration" "^7.16.7" - "@babel/parser" "^7.17.3" - "@babel/types" "^7.17.0" - debug "^4.1.0" - globals "^11.1.0" - -"@babel/traverse@^7.21.0", "@babel/traverse@^7.21.2", "@babel/traverse@^7.7.2": - version "7.21.2" - resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.21.2.tgz#ac7e1f27658750892e815e60ae90f382a46d8e75" - integrity sha512-ts5FFU/dSUPS13tv8XiEObDu9K+iagEKME9kAbaP7r0Y9KtZJZ+NGndDvWoRAYNpeWafbpFeki3q9QoMD6gxyw== - dependencies: - "@babel/code-frame" "^7.18.6" - "@babel/generator" "^7.21.1" - "@babel/helper-environment-visitor" "^7.18.9" - "@babel/helper-function-name" "^7.21.0" - "@babel/helper-hoist-variables" "^7.18.6" - "@babel/helper-split-export-declaration" "^7.18.6" - "@babel/parser" "^7.21.2" - "@babel/types" "^7.21.2" - debug "^4.1.0" - globals "^11.1.0" - -"@babel/types@7.17.0": - version "7.17.0" - resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.17.0.tgz#a826e368bccb6b3d84acd76acad5c0d87342390b" - integrity sha512-TmKSNO4D5rzhL5bjWFcVHHLETzfQ/AmbKpKPOSjlP0WoHZ6L911fgoOKY4Alp/emzG4cHJdyN49zpgkbXFEHHw== - dependencies: - "@babel/helper-validator-identifier" "^7.16.7" - to-fast-properties "^2.0.0" - -"@babel/types@^7.0.0", "@babel/types@^7.17.0", "@babel/types@^7.18.6", "@babel/types@^7.20.2", "@babel/types@^7.20.7", "@babel/types@^7.21.0", "@babel/types@^7.21.2", "@babel/types@^7.3.0", "@babel/types@^7.3.3", "@babel/types@^7.6.1", "@babel/types@^7.9.6": - version "7.21.2" - resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.21.2.tgz#92246f6e00f91755893c2876ad653db70c8310d1" - integrity sha512-3wRZSs7jiFaB8AjxiiD+VqN5DTG2iRvJGQ+qYFrs/654lg6kGTQWIOFjlBo5RaXuAZjBmP3+OQH4dmhqiiyYxw== - dependencies: - "@babel/helper-string-parser" "^7.19.4" - "@babel/helper-validator-identifier" "^7.19.1" - to-fast-properties "^2.0.0" - -"@bcoe/v8-coverage@^0.2.3": - version "0.2.3" - resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" - integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== - -"@eslint-community/eslint-utils@^4.2.0": - version "4.2.0" - resolved "https://registry.yarnpkg.com/@eslint-community/eslint-utils/-/eslint-utils-4.2.0.tgz#a831e6e468b4b2b5ae42bf658bea015bf10bc518" - integrity sha512-gB8T4H4DEfX2IV9zGDJPOBgP1e/DbfCPDTtEqUMckpvzS1OYtva8JdFYBqMwYk7xAQ429WGF/UPqn8uQ//h2vQ== - dependencies: - eslint-visitor-keys "^3.3.0" - -"@eslint-community/eslint-utils@^4.4.0": - version "4.4.0" - resolved "https://registry.yarnpkg.com/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz#a23514e8fb9af1269d5f7788aa556798d61c6b59" - integrity sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA== - dependencies: - eslint-visitor-keys "^3.3.0" - -"@eslint-community/regexpp@^4.4.0": - version "4.4.0" - resolved "https://registry.yarnpkg.com/@eslint-community/regexpp/-/regexpp-4.4.0.tgz#3e61c564fcd6b921cb789838631c5ee44df09403" - integrity sha512-A9983Q0LnDGdLPjxyXQ00sbV+K+O+ko2Dr+CZigbHWtX9pNfxlaBkMR8X1CztI73zuEyEBXTVjx7CE+/VSwDiQ== - -"@eslint/eslintrc@^2.1.0": - version "2.1.0" - resolved "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-2.1.0.tgz#82256f164cc9e0b59669efc19d57f8092706841d" - integrity sha512-Lj7DECXqIVCqnqjjHMPna4vn6GJcMgul/wuS0je9OZ9gsL0zzDpKPVtcG1HaDVc+9y+qgXneTeUMbCqXJNpH1A== - dependencies: - ajv "^6.12.4" - debug "^4.3.2" - espree "^9.6.0" - globals "^13.19.0" - ignore "^5.2.0" - import-fresh "^3.2.1" - js-yaml "^4.1.0" - minimatch "^3.1.2" - strip-json-comments "^3.1.1" - -"@eslint/js@8.44.0": - version "8.44.0" - resolved "https://registry.yarnpkg.com/@eslint/js/-/js-8.44.0.tgz#961a5903c74139390478bdc808bcde3fc45ab7af" - integrity sha512-Ag+9YM4ocKQx9AarydN0KY2j0ErMHNIocPDrVo8zAE44xLTjEtz81OdR68/cydGtk6m6jDb5Za3r2useMzYmSw== - -"@humanwhocodes/config-array@^0.11.10": - version "0.11.10" - resolved "https://registry.yarnpkg.com/@humanwhocodes/config-array/-/config-array-0.11.10.tgz#5a3ffe32cc9306365fb3fd572596cd602d5e12d2" - integrity sha512-KVVjQmNUepDVGXNuoRRdmmEjruj0KfiGSbS8LVc12LMsWDQzRXJ0qdhN8L8uUigKpfEHRhlaQFY0ib1tnUbNeQ== - dependencies: - "@humanwhocodes/object-schema" "^1.2.1" - debug "^4.1.1" - minimatch "^3.0.5" - -"@humanwhocodes/module-importer@^1.0.1": - version "1.0.1" - resolved "https://registry.yarnpkg.com/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz#af5b2691a22b44be847b0ca81641c5fb6ad0172c" - integrity sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA== - -"@humanwhocodes/object-schema@^1.2.1": - version "1.2.1" - resolved "https://registry.yarnpkg.com/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz#b520529ec21d8e5945a1851dfd1c32e94e39ff45" - integrity sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA== - -"@iarna/toml@^2.2.5": - version "2.2.5" - resolved "https://registry.yarnpkg.com/@iarna/toml/-/toml-2.2.5.tgz#b32366c89b43c6f8cefbdefac778b9c828e3ba8c" - integrity sha512-trnsAYxU3xnS1gPHPyU961coFyLkh4gAD/0zQ5mymY4yOZ+CYvsPqUbOFSw0aDM4y0tV7tiFxL/1XfXPNC6IPg== - -"@istanbuljs/load-nyc-config@^1.0.0": - version "1.1.0" - resolved "https://registry.yarnpkg.com/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz#fd3db1d59ecf7cf121e80650bb86712f9b55eced" - integrity sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ== - dependencies: - camelcase "^5.3.1" - find-up "^4.1.0" - get-package-type "^0.1.0" - js-yaml "^3.13.1" - resolve-from "^5.0.0" - -"@istanbuljs/schema@^0.1.2": - version "0.1.3" - resolved "https://registry.yarnpkg.com/@istanbuljs/schema/-/schema-0.1.3.tgz#e45e384e4b8ec16bce2fd903af78450f6bf7ec98" - integrity sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA== - -"@jest/console@^29.5.0": - version "29.5.0" - resolved "https://registry.yarnpkg.com/@jest/console/-/console-29.5.0.tgz#593a6c5c0d3f75689835f1b3b4688c4f8544cb57" - integrity sha512-NEpkObxPwyw/XxZVLPmAGKE89IQRp4puc6IQRPru6JKd1M3fW9v1xM1AnzIJE65hbCkzQAdnL8P47e9hzhiYLQ== - dependencies: - "@jest/types" "^29.5.0" - "@types/node" "*" - chalk "^4.0.0" - jest-message-util "^29.5.0" - jest-util "^29.5.0" - slash "^3.0.0" - -"@jest/core@^29.5.0": - version "29.5.0" - resolved "https://registry.yarnpkg.com/@jest/core/-/core-29.5.0.tgz#76674b96904484e8214614d17261cc491e5f1f03" - integrity sha512-28UzQc7ulUrOQw1IsN/kv1QES3q2kkbl/wGslyhAclqZ/8cMdB5M68BffkIdSJgKBUt50d3hbwJ92XESlE7LiQ== - dependencies: - "@jest/console" "^29.5.0" - "@jest/reporters" "^29.5.0" - "@jest/test-result" "^29.5.0" - "@jest/transform" "^29.5.0" - "@jest/types" "^29.5.0" - "@types/node" "*" - ansi-escapes "^4.2.1" - chalk "^4.0.0" - ci-info "^3.2.0" - exit "^0.1.2" - graceful-fs "^4.2.9" - jest-changed-files "^29.5.0" - jest-config "^29.5.0" - jest-haste-map "^29.5.0" - jest-message-util "^29.5.0" - jest-regex-util "^29.4.3" - jest-resolve "^29.5.0" - jest-resolve-dependencies "^29.5.0" - jest-runner "^29.5.0" - jest-runtime "^29.5.0" - jest-snapshot "^29.5.0" - jest-util "^29.5.0" - jest-validate "^29.5.0" - jest-watcher "^29.5.0" - micromatch "^4.0.4" - pretty-format "^29.5.0" - slash "^3.0.0" - strip-ansi "^6.0.0" - -"@jest/environment@^29.5.0": - version "29.5.0" - resolved "https://registry.yarnpkg.com/@jest/environment/-/environment-29.5.0.tgz#9152d56317c1fdb1af389c46640ba74ef0bb4c65" - integrity sha512-5FXw2+wD29YU1d4I2htpRX7jYnAyTRjP2CsXQdo9SAM8g3ifxWPSV0HnClSn71xwctr0U3oZIIH+dtbfmnbXVQ== - dependencies: - "@jest/fake-timers" "^29.5.0" - "@jest/types" "^29.5.0" - "@types/node" "*" - jest-mock "^29.5.0" - -"@jest/expect-utils@^29.5.0": - version "29.5.0" - resolved "https://registry.yarnpkg.com/@jest/expect-utils/-/expect-utils-29.5.0.tgz#f74fad6b6e20f924582dc8ecbf2cb800fe43a036" - integrity sha512-fmKzsidoXQT2KwnrwE0SQq3uj8Z763vzR8LnLBwC2qYWEFpjX8daRsk6rHUM1QvNlEW/UJXNXm59ztmJJWs2Mg== - dependencies: - jest-get-type "^29.4.3" - -"@jest/expect@^29.5.0": - version "29.5.0" - resolved "https://registry.yarnpkg.com/@jest/expect/-/expect-29.5.0.tgz#80952f5316b23c483fbca4363ce822af79c38fba" - integrity sha512-PueDR2HGihN3ciUNGr4uelropW7rqUfTiOn+8u0leg/42UhblPxHkfoh0Ruu3I9Y1962P3u2DY4+h7GVTSVU6g== - dependencies: - expect "^29.5.0" - jest-snapshot "^29.5.0" - -"@jest/fake-timers@^29.5.0": - version "29.5.0" - resolved "https://registry.yarnpkg.com/@jest/fake-timers/-/fake-timers-29.5.0.tgz#d4d09ec3286b3d90c60bdcd66ed28d35f1b4dc2c" - integrity sha512-9ARvuAAQcBwDAqOnglWq2zwNIRUDtk/SCkp/ToGEhFv5r86K21l+VEs0qNTaXtyiY0lEePl3kylijSYJQqdbDg== - dependencies: - "@jest/types" "^29.5.0" - "@sinonjs/fake-timers" "^10.0.2" - "@types/node" "*" - jest-message-util "^29.5.0" - jest-mock "^29.5.0" - jest-util "^29.5.0" - -"@jest/globals@^29.5.0": - version "29.5.0" - resolved "https://registry.yarnpkg.com/@jest/globals/-/globals-29.5.0.tgz#6166c0bfc374c58268677539d0c181f9c1833298" - integrity sha512-S02y0qMWGihdzNbUiqSAiKSpSozSuHX5UYc7QbnHP+D9Lyw8DgGGCinrN9uSuHPeKgSSzvPom2q1nAtBvUsvPQ== - dependencies: - "@jest/environment" "^29.5.0" - "@jest/expect" "^29.5.0" - "@jest/types" "^29.5.0" - jest-mock "^29.5.0" - -"@jest/reporters@^29.5.0": - version "29.5.0" - resolved "https://registry.yarnpkg.com/@jest/reporters/-/reporters-29.5.0.tgz#985dfd91290cd78ddae4914ba7921bcbabe8ac9b" - integrity sha512-D05STXqj/M8bP9hQNSICtPqz97u7ffGzZu+9XLucXhkOFBqKcXe04JLZOgIekOxdb73MAoBUFnqvf7MCpKk5OA== - dependencies: - "@bcoe/v8-coverage" "^0.2.3" - "@jest/console" "^29.5.0" - "@jest/test-result" "^29.5.0" - "@jest/transform" "^29.5.0" - "@jest/types" "^29.5.0" - "@jridgewell/trace-mapping" "^0.3.15" - "@types/node" "*" - chalk "^4.0.0" - collect-v8-coverage "^1.0.0" - exit "^0.1.2" - glob "^7.1.3" - graceful-fs "^4.2.9" - istanbul-lib-coverage "^3.0.0" - istanbul-lib-instrument "^5.1.0" - istanbul-lib-report "^3.0.0" - istanbul-lib-source-maps "^4.0.0" - istanbul-reports "^3.1.3" - jest-message-util "^29.5.0" - jest-util "^29.5.0" - jest-worker "^29.5.0" - slash "^3.0.0" - string-length "^4.0.1" - strip-ansi "^6.0.0" - v8-to-istanbul "^9.0.1" - -"@jest/schemas@^29.4.3": - version "29.4.3" - resolved "https://registry.yarnpkg.com/@jest/schemas/-/schemas-29.4.3.tgz#39cf1b8469afc40b6f5a2baaa146e332c4151788" - integrity sha512-VLYKXQmtmuEz6IxJsrZwzG9NvtkQsWNnWMsKxqWNu3+CnfzJQhp0WDDKWLVV9hLKr0l3SLLFRqcYHjhtyuDVxg== - dependencies: - "@sinclair/typebox" "^0.25.16" - -"@jest/source-map@^29.4.3": - version "29.4.3" - resolved "https://registry.yarnpkg.com/@jest/source-map/-/source-map-29.4.3.tgz#ff8d05cbfff875d4a791ab679b4333df47951d20" - integrity sha512-qyt/mb6rLyd9j1jUts4EQncvS6Yy3PM9HghnNv86QBlV+zdL2inCdK1tuVlL+J+lpiw2BI67qXOrX3UurBqQ1w== - dependencies: - "@jridgewell/trace-mapping" "^0.3.15" - callsites "^3.0.0" - graceful-fs "^4.2.9" - -"@jest/test-result@^29.5.0": - version "29.5.0" - resolved "https://registry.yarnpkg.com/@jest/test-result/-/test-result-29.5.0.tgz#7c856a6ca84f45cc36926a4e9c6b57f1973f1408" - integrity sha512-fGl4rfitnbfLsrfx1uUpDEESS7zM8JdgZgOCQuxQvL1Sn/I6ijeAVQWGfXI9zb1i9Mzo495cIpVZhA0yr60PkQ== - dependencies: - "@jest/console" "^29.5.0" - "@jest/types" "^29.5.0" - "@types/istanbul-lib-coverage" "^2.0.0" - collect-v8-coverage "^1.0.0" - -"@jest/test-sequencer@^29.5.0": - version "29.5.0" - resolved "https://registry.yarnpkg.com/@jest/test-sequencer/-/test-sequencer-29.5.0.tgz#34d7d82d3081abd523dbddc038a3ddcb9f6d3cc4" - integrity sha512-yPafQEcKjkSfDXyvtgiV4pevSeyuA6MQr6ZIdVkWJly9vkqjnFfcfhRQqpD5whjoU8EORki752xQmjaqoFjzMQ== - dependencies: - "@jest/test-result" "^29.5.0" - graceful-fs "^4.2.9" - jest-haste-map "^29.5.0" - slash "^3.0.0" - -"@jest/transform@^29.5.0": - version "29.5.0" - resolved "https://registry.yarnpkg.com/@jest/transform/-/transform-29.5.0.tgz#cf9c872d0965f0cbd32f1458aa44a2b1988b00f9" - integrity sha512-8vbeZWqLJOvHaDfeMuoHITGKSz5qWc9u04lnWrQE3VyuSw604PzQM824ZeX9XSjUCeDiE3GuxZe5UKa8J61NQw== - dependencies: - "@babel/core" "^7.11.6" - "@jest/types" "^29.5.0" - "@jridgewell/trace-mapping" "^0.3.15" - babel-plugin-istanbul "^6.1.1" - chalk "^4.0.0" - convert-source-map "^2.0.0" - fast-json-stable-stringify "^2.1.0" - graceful-fs "^4.2.9" - jest-haste-map "^29.5.0" - jest-regex-util "^29.4.3" - jest-util "^29.5.0" - micromatch "^4.0.4" - pirates "^4.0.4" - slash "^3.0.0" - write-file-atomic "^4.0.2" - -"@jest/types@^29.5.0": - version "29.5.0" - resolved "https://registry.yarnpkg.com/@jest/types/-/types-29.5.0.tgz#f59ef9b031ced83047c67032700d8c807d6e1593" - integrity sha512-qbu7kN6czmVRc3xWFQcAN03RAUamgppVUdXrvl1Wr3jlNF93o9mJbGcDWrwGB6ht44u7efB1qCFgVQmca24Uog== - dependencies: - "@jest/schemas" "^29.4.3" - "@types/istanbul-lib-coverage" "^2.0.0" - "@types/istanbul-reports" "^3.0.0" - "@types/node" "*" - "@types/yargs" "^17.0.8" - chalk "^4.0.0" - -"@jridgewell/gen-mapping@^0.1.0": - version "0.1.1" - resolved "https://registry.yarnpkg.com/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz#e5d2e450306a9491e3bd77e323e38d7aff315996" - integrity sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w== - dependencies: - "@jridgewell/set-array" "^1.0.0" - "@jridgewell/sourcemap-codec" "^1.4.10" - -"@jridgewell/gen-mapping@^0.3.0", "@jridgewell/gen-mapping@^0.3.2": - version "0.3.2" - resolved "https://registry.yarnpkg.com/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz#c1aedc61e853f2bb9f5dfe6d4442d3b565b253b9" - integrity sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A== - dependencies: - "@jridgewell/set-array" "^1.0.1" - "@jridgewell/sourcemap-codec" "^1.4.10" - "@jridgewell/trace-mapping" "^0.3.9" - -"@jridgewell/resolve-uri@3.1.0": - version "3.1.0" - resolved "https://registry.yarnpkg.com/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz#2203b118c157721addfe69d47b70465463066d78" - integrity sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w== - -"@jridgewell/set-array@^1.0.0", "@jridgewell/set-array@^1.0.1": - version "1.1.2" - resolved "https://registry.yarnpkg.com/@jridgewell/set-array/-/set-array-1.1.2.tgz#7c6cf998d6d20b914c0a55a91ae928ff25965e72" - integrity sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw== - -"@jridgewell/source-map@^0.3.3": - version "0.3.3" - resolved "https://registry.yarnpkg.com/@jridgewell/source-map/-/source-map-0.3.3.tgz#8108265659d4c33e72ffe14e33d6cc5eb59f2fda" - integrity sha512-b+fsZXeLYi9fEULmfBrhxn4IrPlINf8fiNarzTof004v3lFdntdwa9PF7vFJqm3mg7s+ScJMxXaE3Acp1irZcg== - dependencies: - "@jridgewell/gen-mapping" "^0.3.0" - "@jridgewell/trace-mapping" "^0.3.9" - -"@jridgewell/sourcemap-codec@1.4.14", "@jridgewell/sourcemap-codec@^1.4.10": - version "1.4.14" - resolved "https://registry.yarnpkg.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz#add4c98d341472a289190b424efbdb096991bb24" - integrity sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw== - -"@jridgewell/trace-mapping@^0.3.12", "@jridgewell/trace-mapping@^0.3.15", "@jridgewell/trace-mapping@^0.3.17", "@jridgewell/trace-mapping@^0.3.9": - version "0.3.17" - resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.17.tgz#793041277af9073b0951a7fe0f0d8c4c98c36985" - integrity sha512-MCNzAp77qzKca9+W/+I0+sEpaUnZoeasnghNeVc41VZCEKaCH73Vq3BZZ/SzWIgrqE4H4ceI+p+b6C0mHf9T4g== - dependencies: - "@jridgewell/resolve-uri" "3.1.0" - "@jridgewell/sourcemap-codec" "1.4.14" - -"@jsdoc/salty@^0.2.1": - version "0.2.5" - resolved "https://registry.yarnpkg.com/@jsdoc/salty/-/salty-0.2.5.tgz#1b2fa5bb8c66485b536d86eee877c263d322f692" - integrity sha512-TfRP53RqunNe2HBobVBJ0VLhK1HbfvBYeTC1ahnN64PWvyYyGebmMiPkuwvD9fpw2ZbkoPb8Q7mwy0aR8Z9rvw== - dependencies: - lodash "^4.17.21" - -"@nodelib/fs.scandir@2.1.5": - version "2.1.5" - resolved "https://registry.yarnpkg.com/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz#7619c2eb21b25483f6d167548b4cfd5a7488c3d5" - integrity sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g== - dependencies: - "@nodelib/fs.stat" "2.0.5" - run-parallel "^1.1.9" - -"@nodelib/fs.stat@2.0.5", "@nodelib/fs.stat@^2.0.2": - version "2.0.5" - resolved "https://registry.yarnpkg.com/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz#5bd262af94e9d25bd1e71b05deed44876a222e8b" - integrity sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A== - -"@nodelib/fs.walk@^1.2.3", "@nodelib/fs.walk@^1.2.8": - version "1.2.8" - resolved "https://registry.yarnpkg.com/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz#e95737e8bb6746ddedf69c556953494f196fe69a" - integrity sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg== - dependencies: - "@nodelib/fs.scandir" "2.1.5" - fastq "^1.6.0" - -"@qiwi/npm-run-all@^4.1.7": - version "4.1.7" - resolved "https://registry.yarnpkg.com/@qiwi/npm-run-all/-/npm-run-all-4.1.7.tgz#2b5836456c11e13f284464c38a87e687fa1d21a6" - integrity sha512-AG+pDHGTakf2an81xH+cuJ7PLnOdJz7YvVD9zPk0qDwYE5eh+te4ED0fxRaU/1Kn64kq4AM3LlAOnpFc8B0Usw== - dependencies: - ansi-styles "^5.2.0" - chalk "^4.1.1" - cross-spawn "^7.0.3" - memorystream "^0.3.1" - minimatch "^3.0.4" - pidtree "^0.5.0" - read-pkg "^5.2.0" - shell-quote "^1.7.2" - string.prototype.padend "^3.1.2" - -"@sinclair/typebox@^0.25.16": - version "0.25.24" - resolved "https://registry.yarnpkg.com/@sinclair/typebox/-/typebox-0.25.24.tgz#8c7688559979f7079aacaf31aa881c3aa410b718" - integrity sha512-XJfwUVUKDHF5ugKwIcxEgc9k8b7HbznCp6eUfWgu710hMPNIO4aw4/zB5RogDQz8nd6gyCDpU9O/m6qYEWY6yQ== - -"@sindresorhus/slugify@^1.1.2": - version "1.1.2" - resolved "https://registry.yarnpkg.com/@sindresorhus/slugify/-/slugify-1.1.2.tgz#c2c0129298b8caace2d9156176fe244d0e83156c" - integrity sha512-V9nR/W0Xd9TSGXpZ4iFUcFGhuOJtZX82Fzxj1YISlbSgKvIiNa7eLEZrT0vAraPOt++KHauIVNYgGRgjc13dXA== - dependencies: - "@sindresorhus/transliterate" "^0.1.1" - escape-string-regexp "^4.0.0" - -"@sindresorhus/transliterate@^0.1.1": - version "0.1.2" - resolved "https://registry.yarnpkg.com/@sindresorhus/transliterate/-/transliterate-0.1.2.tgz#ffce368271d153550e87de81486004f2637425af" - integrity sha512-5/kmIOY9FF32nicXH+5yLNTX4NJ4atl7jRgqAJuIn/iyDFXBktOKDxCvyGE/EzmF4ngSUvjXxQUQlQiZ5lfw+w== - dependencies: - escape-string-regexp "^2.0.0" - lodash.deburr "^4.1.0" - -"@sinonjs/commons@^2.0.0": - version "2.0.0" - resolved "https://registry.yarnpkg.com/@sinonjs/commons/-/commons-2.0.0.tgz#fd4ca5b063554307e8327b4564bd56d3b73924a3" - integrity sha512-uLa0j859mMrg2slwQYdO/AkrOfmH+X6LTVmNTS9CqexuE2IvVORIkSpJLqePAbEnKJ77aMmCwr1NUZ57120Xcg== - dependencies: - type-detect "4.0.8" - -"@sinonjs/fake-timers@^10.0.2": - version "10.0.2" - resolved "https://registry.yarnpkg.com/@sinonjs/fake-timers/-/fake-timers-10.0.2.tgz#d10549ed1f423d80639c528b6c7f5a1017747d0c" - integrity sha512-SwUDyjWnah1AaNl7kxsa7cfLhlTYoiyhDAIgyh+El30YvXs/o7OLXpYH88Zdhyx9JExKrmHDJ+10bwIcY80Jmw== - dependencies: - "@sinonjs/commons" "^2.0.0" - -"@trivago/prettier-plugin-sort-imports@^4.1.1": - version "4.1.1" - resolved "https://registry.yarnpkg.com/@trivago/prettier-plugin-sort-imports/-/prettier-plugin-sort-imports-4.1.1.tgz#71c3c1ae770c3738b6fc85710714844477574ffd" - integrity sha512-dQ2r2uzNr1x6pJsuh/8x0IRA3CBUB+pWEW3J/7N98axqt7SQSm+2fy0FLNXvXGg77xEDC7KHxJlHfLYyi7PDcw== - dependencies: - "@babel/generator" "7.17.7" - "@babel/parser" "^7.20.5" - "@babel/traverse" "7.17.3" - "@babel/types" "7.17.0" - javascript-natural-sort "0.7.1" - lodash "^4.17.21" - -"@types/babel__core@^7.1.14": - version "7.20.0" - resolved "https://registry.yarnpkg.com/@types/babel__core/-/babel__core-7.20.0.tgz#61bc5a4cae505ce98e1e36c5445e4bee060d8891" - integrity sha512-+n8dL/9GWblDO0iU6eZAwEIJVr5DWigtle+Q6HLOrh/pdbXOhOtqzq8VPPE2zvNJzSKY4vH/z3iT3tn0A3ypiQ== - dependencies: - "@babel/parser" "^7.20.7" - "@babel/types" "^7.20.7" - "@types/babel__generator" "*" - "@types/babel__template" "*" - "@types/babel__traverse" "*" - -"@types/babel__generator@*": - version "7.6.4" - resolved "https://registry.yarnpkg.com/@types/babel__generator/-/babel__generator-7.6.4.tgz#1f20ce4c5b1990b37900b63f050182d28c2439b7" - integrity sha512-tFkciB9j2K755yrTALxD44McOrk+gfpIpvC3sxHjRawj6PfnQxrse4Clq5y/Rq+G3mrBurMax/lG8Qn2t9mSsg== - dependencies: - "@babel/types" "^7.0.0" - -"@types/babel__template@*": - version "7.4.1" - resolved "https://registry.yarnpkg.com/@types/babel__template/-/babel__template-7.4.1.tgz#3d1a48fd9d6c0edfd56f2ff578daed48f36c8969" - integrity sha512-azBFKemX6kMg5Io+/rdGT0dkGreboUVR0Cdm3fz9QJWpaQGJRQXl7C+6hOTCZcMll7KFyEQpgbYI2lHdsS4U7g== - dependencies: - "@babel/parser" "^7.1.0" - "@babel/types" "^7.0.0" - -"@types/babel__traverse@*", "@types/babel__traverse@^7.0.6": - version "7.18.3" - resolved "https://registry.yarnpkg.com/@types/babel__traverse/-/babel__traverse-7.18.3.tgz#dfc508a85781e5698d5b33443416b6268c4b3e8d" - integrity sha512-1kbcJ40lLB7MHsj39U4Sh1uTd2E7rLEa79kmDpI6cy+XiXsteB3POdQomoq4FxszMrO3ZYchkhYJw7A2862b3w== - dependencies: - "@babel/types" "^7.3.0" - -"@types/graceful-fs@^4.1.3": - version "4.1.6" - resolved "https://registry.yarnpkg.com/@types/graceful-fs/-/graceful-fs-4.1.6.tgz#e14b2576a1c25026b7f02ede1de3b84c3a1efeae" - integrity sha512-Sig0SNORX9fdW+bQuTEovKj3uHcUL6LQKbCrrqb1X7J6/ReAbhCXRAhc+SMejhLELFj2QcyuxmUooZ4bt5ReSw== - dependencies: - "@types/node" "*" - -"@types/istanbul-lib-coverage@*", "@types/istanbul-lib-coverage@^2.0.0", "@types/istanbul-lib-coverage@^2.0.1": - version "2.0.4" - resolved "https://registry.yarnpkg.com/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.4.tgz#8467d4b3c087805d63580480890791277ce35c44" - integrity sha512-z/QT1XN4K4KYuslS23k62yDIDLwLFkzxOuMplDtObz0+y7VqJCaO2o+SPwHCvLFZh7xazvvoor2tA/hPz9ee7g== - -"@types/istanbul-lib-report@*": - version "3.0.0" - resolved "https://registry.yarnpkg.com/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz#c14c24f18ea8190c118ee7562b7ff99a36552686" - integrity sha512-plGgXAPfVKFoYfa9NpYDAkseG+g6Jr294RqeqcqDixSbU34MZVJRi/P+7Y8GDpzkEwLaGZZOpKIEmeVZNtKsrg== - dependencies: - "@types/istanbul-lib-coverage" "*" - -"@types/istanbul-reports@^3.0.0": - version "3.0.1" - resolved "https://registry.yarnpkg.com/@types/istanbul-reports/-/istanbul-reports-3.0.1.tgz#9153fe98bba2bd565a63add9436d6f0d7f8468ff" - integrity sha512-c3mAZEuK0lvBp8tmuL74XRKn1+y2dcwOUpH7x4WrF6gk1GIgiluDRgMYQtw2OFcBvAJWlt6ASU3tSqxp0Uu0Aw== - dependencies: - "@types/istanbul-lib-report" "*" - -"@types/json-schema@^7.0.9": - version "7.0.11" - resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.11.tgz#d421b6c527a3037f7c84433fd2c4229e016863d3" - integrity sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ== - -"@types/linkify-it@*": - version "3.0.2" - resolved "https://registry.yarnpkg.com/@types/linkify-it/-/linkify-it-3.0.2.tgz#fd2cd2edbaa7eaac7e7f3c1748b52a19143846c9" - integrity sha512-HZQYqbiFVWufzCwexrvh694SOim8z2d+xJl5UNamcvQFejLY/2YUtzXHYi3cHdI7PMlS8ejH2slRAOJQ32aNbA== - -"@types/markdown-it@^12.2.3": - version "12.2.3" - resolved "https://registry.yarnpkg.com/@types/markdown-it/-/markdown-it-12.2.3.tgz#0d6f6e5e413f8daaa26522904597be3d6cd93b51" - integrity sha512-GKMHFfv3458yYy+v/N8gjufHO6MSZKCOXpZc5GXIWWy8uldwfmPn98vp81gZ5f9SVw8YYBctgfJ22a2d7AOMeQ== - dependencies: - "@types/linkify-it" "*" - "@types/mdurl" "*" - -"@types/mdurl@*": - version "1.0.2" - resolved "https://registry.yarnpkg.com/@types/mdurl/-/mdurl-1.0.2.tgz#e2ce9d83a613bacf284c7be7d491945e39e1f8e9" - integrity sha512-eC4U9MlIcu2q0KQmXszyn5Akca/0jrQmwDRgpAMJai7qBWq4amIQhZyNau4VYGtCeALvW1/NtjzJJ567aZxfKA== - -"@types/minimatch@^3.0.3": - version "3.0.5" - resolved "https://registry.yarnpkg.com/@types/minimatch/-/minimatch-3.0.5.tgz#1001cc5e6a3704b83c236027e77f2f58ea010f40" - integrity sha512-Klz949h02Gz2uZCMGwDUSDS1YBlTdDDgbWHi+81l29tQALUtvz4rAYi5uoVhE5Lagoq6DeqAUlbrHvW/mXDgdQ== - -"@types/minimist@^1.2.2": - version "1.2.2" - resolved "https://registry.yarnpkg.com/@types/minimist/-/minimist-1.2.2.tgz#ee771e2ba4b3dc5b372935d549fd9617bf345b8c" - integrity sha512-jhuKLIRrhvCPLqwPcx6INqmKeiA5EWrsCOPhrlFSrbrmU4ZMPjj5Ul/oLCMDO98XRUIwVm78xICz4EPCektzeQ== - -"@types/node@*": - version "18.15.0" - resolved "https://registry.yarnpkg.com/@types/node/-/node-18.15.0.tgz#286a65e3fdffd691e170541e6ecb0410b16a38be" - integrity sha512-z6nr0TTEOBGkzLGmbypWOGnpSpSIBorEhC4L+4HeQ2iezKCi4f77kyslRwvHeNitymGQ+oFyIWGP96l/DPSV9w== - -"@types/normalize-package-data@^2.4.0", "@types/normalize-package-data@^2.4.1": - version "2.4.1" - resolved "https://registry.yarnpkg.com/@types/normalize-package-data/-/normalize-package-data-2.4.1.tgz#d3357479a0fdfdd5907fe67e17e0a85c906e1301" - integrity sha512-Gj7cI7z+98M282Tqmp2K5EIsoouUEzbBJhQQzDE3jSIRk6r9gsz0oUokqIUR4u1R3dMHo0pDHM7sNOHyhulypw== - -"@types/prettier@^2.1.5": - version "2.7.2" - resolved "https://registry.yarnpkg.com/@types/prettier/-/prettier-2.7.2.tgz#6c2324641cc4ba050a8c710b2b251b377581fbf0" - integrity sha512-KufADq8uQqo1pYKVIYzfKbJfBAc0sOeXqGbFaSpv8MRmC/zXgowNZmFcbngndGk922QDmOASEXUZCaY48gs4cg== - -"@types/semver@^7.3.12": - version "7.3.13" - resolved "https://registry.yarnpkg.com/@types/semver/-/semver-7.3.13.tgz#da4bfd73f49bd541d28920ab0e2bf0ee80f71c91" - integrity sha512-21cFJr9z3g5dW8B0CVI9g2O9beqaThGQ6ZFBqHfwhzLDKUxaqTIy3vnfah/UPkfOiF2pLq+tGz+W8RyCskuslw== - -"@types/stack-utils@^2.0.0": - version "2.0.1" - resolved "https://registry.yarnpkg.com/@types/stack-utils/-/stack-utils-2.0.1.tgz#20f18294f797f2209b5f65c8e3b5c8e8261d127c" - integrity sha512-Hl219/BT5fLAaz6NDkSuhzasy49dwQS/DSdu4MdggFB8zcXv7vflBI3xp7FEmkmdDkBUI2bPUNeMttp2knYdxw== - -"@types/yargs-parser@*": - version "21.0.0" - resolved "https://registry.yarnpkg.com/@types/yargs-parser/-/yargs-parser-21.0.0.tgz#0c60e537fa790f5f9472ed2776c2b71ec117351b" - integrity sha512-iO9ZQHkZxHn4mSakYV0vFHAVDyEOIJQrV2uZ06HxEPcx+mt8swXoZHIbaaJ2crJYFfErySgktuTZ3BeLz+XmFA== - -"@types/yargs@^17.0.8": - version "17.0.22" - resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-17.0.22.tgz#7dd37697691b5f17d020f3c63e7a45971ff71e9a" - integrity sha512-pet5WJ9U8yPVRhkwuEIp5ktAeAqRZOq4UdAyWLWzxbtpyXnzbtLdKiXAjJzi/KLmPGS9wk86lUFWZFN6sISo4g== - dependencies: - "@types/yargs-parser" "*" - -"@typescript-eslint/eslint-plugin@^5.59.2": - version "5.59.2" - resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.59.2.tgz#684a2ce7182f3b4dac342eef7caa1c2bae476abd" - integrity sha512-yVrXupeHjRxLDcPKL10sGQ/QlVrA8J5IYOEWVqk0lJaSZP7X5DfnP7Ns3cc74/blmbipQ1htFNVGsHX6wsYm0A== - dependencies: - "@eslint-community/regexpp" "^4.4.0" - "@typescript-eslint/scope-manager" "5.59.2" - "@typescript-eslint/type-utils" "5.59.2" - "@typescript-eslint/utils" "5.59.2" - debug "^4.3.4" - grapheme-splitter "^1.0.4" - ignore "^5.2.0" - natural-compare-lite "^1.4.0" - semver "^7.3.7" - tsutils "^3.21.0" - -"@typescript-eslint/parser@^5.59.2": - version "5.59.2" - resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-5.59.2.tgz#c2c443247901d95865b9f77332d9eee7c55655e8" - integrity sha512-uq0sKyw6ao1iFOZZGk9F8Nro/8+gfB5ezl1cA06SrqbgJAt0SRoFhb9pXaHvkrxUpZaoLxt8KlovHNk8Gp6/HQ== - dependencies: - "@typescript-eslint/scope-manager" "5.59.2" - "@typescript-eslint/types" "5.59.2" - "@typescript-eslint/typescript-estree" "5.59.2" - debug "^4.3.4" - -"@typescript-eslint/scope-manager@5.59.2": - version "5.59.2" - resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-5.59.2.tgz#f699fe936ee4e2c996d14f0fdd3a7da5ba7b9a4c" - integrity sha512-dB1v7ROySwQWKqQ8rEWcdbTsFjh2G0vn8KUyvTXdPoyzSL6lLGkiXEV5CvpJsEe9xIdKV+8Zqb7wif2issoOFA== - dependencies: - "@typescript-eslint/types" "5.59.2" - "@typescript-eslint/visitor-keys" "5.59.2" - -"@typescript-eslint/type-utils@5.59.2": - version "5.59.2" - resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-5.59.2.tgz#0729c237503604cd9a7084b5af04c496c9a4cdcf" - integrity sha512-b1LS2phBOsEy/T381bxkkywfQXkV1dWda/z0PhnIy3bC5+rQWQDS7fk9CSpcXBccPY27Z6vBEuaPBCKCgYezyQ== - dependencies: - "@typescript-eslint/typescript-estree" "5.59.2" - "@typescript-eslint/utils" "5.59.2" - debug "^4.3.4" - tsutils "^3.21.0" - -"@typescript-eslint/types@5.59.2": - version "5.59.2" - resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-5.59.2.tgz#b511d2b9847fe277c5cb002a2318bd329ef4f655" - integrity sha512-LbJ/HqoVs2XTGq5shkiKaNTuVv5tTejdHgfdjqRUGdYhjW1crm/M7og2jhVskMt8/4wS3T1+PfFvL1K3wqYj4w== - -"@typescript-eslint/typescript-estree@5.59.2": - version "5.59.2" - resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-5.59.2.tgz#6e2fabd3ba01db5d69df44e0b654c0b051fe9936" - integrity sha512-+j4SmbwVmZsQ9jEyBMgpuBD0rKwi9RxRpjX71Brr73RsYnEr3Lt5QZ624Bxphp8HUkSKfqGnPJp1kA5nl0Sh7Q== - dependencies: - "@typescript-eslint/types" "5.59.2" - "@typescript-eslint/visitor-keys" "5.59.2" - debug "^4.3.4" - globby "^11.1.0" - is-glob "^4.0.3" - semver "^7.3.7" - tsutils "^3.21.0" - -"@typescript-eslint/utils@5.59.2": - version "5.59.2" - resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-5.59.2.tgz#0c45178124d10cc986115885688db6abc37939f4" - integrity sha512-kSuF6/77TZzyGPhGO4uVp+f0SBoYxCDf+lW3GKhtKru/L8k/Hd7NFQxyWUeY7Z/KGB2C6Fe3yf2vVi4V9TsCSQ== - dependencies: - "@eslint-community/eslint-utils" "^4.2.0" - "@types/json-schema" "^7.0.9" - "@types/semver" "^7.3.12" - "@typescript-eslint/scope-manager" "5.59.2" - "@typescript-eslint/types" "5.59.2" - "@typescript-eslint/typescript-estree" "5.59.2" - eslint-scope "^5.1.1" - semver "^7.3.7" - -"@typescript-eslint/visitor-keys@5.59.2": - version "5.59.2" - resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-5.59.2.tgz#37a419dc2723a3eacbf722512b86d6caf7d3b750" - integrity sha512-EEpsO8m3RASrKAHI9jpavNv9NlEUebV4qmF1OWxSTtKSFBpC1NCmWazDQHFivRf0O1DV11BA645yrLEVQ0/Lig== - dependencies: - "@typescript-eslint/types" "5.59.2" - eslint-visitor-keys "^3.3.0" - -a-sync-waterfall@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/a-sync-waterfall/-/a-sync-waterfall-1.0.1.tgz#75b6b6aa72598b497a125e7a2770f14f4c8a1fa7" - integrity sha512-RYTOHHdWipFUliRFMCS4X2Yn2X8M87V/OpSqWzKKOGhzqyUxzyVmhHDH9sAvG+ZuQf/TAOFsLCpMw09I1ufUnA== - -acorn-jsx@^5.3.2: - version "5.3.2" - resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.3.2.tgz#7ed5bb55908b3b2f1bc55c6af1653bada7f07937" - integrity sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ== - -acorn@^7.1.1: - version "7.4.1" - resolved "https://registry.yarnpkg.com/acorn/-/acorn-7.4.1.tgz#feaed255973d2e77555b83dbc08851a6c63520fa" - integrity sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A== - -acorn@^8.8.2: - version "8.8.2" - resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.8.2.tgz#1b2f25db02af965399b9776b0c2c391276d37c4a" - integrity sha512-xjIYgE8HBrkpd/sJqOGNspf8uHG+NOHGOw6a/Urj8taM2EXfdNAH2oFcPeIFfsv3+kz/mJrS5VuMqbNLjCa2vw== - -acorn@^8.9.0: - version "8.9.0" - resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.9.0.tgz#78a16e3b2bcc198c10822786fa6679e245db5b59" - integrity sha512-jaVNAFBHNLXspO543WnNNPZFRtavh3skAkITqD0/2aeMkKZTN+254PyhwxFYrk3vQ1xfY+2wbesJMs/JC8/PwQ== - -ajv@^6.10.0, ajv@^6.12.4: - version "6.12.6" - resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.6.tgz#baf5a62e802b07d977034586f8c3baf5adf26df4" - integrity sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g== - dependencies: - fast-deep-equal "^3.1.1" - fast-json-stable-stringify "^2.0.0" - json-schema-traverse "^0.4.1" - uri-js "^4.2.2" - -ajv@^8.12.0: - version "8.12.0" - resolved "https://registry.yarnpkg.com/ajv/-/ajv-8.12.0.tgz#d1a0527323e22f53562c567c00991577dfbe19d1" - integrity sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA== - dependencies: - fast-deep-equal "^3.1.1" - json-schema-traverse "^1.0.0" - require-from-string "^2.0.2" - uri-js "^4.2.2" - -ansi-escapes@^4.2.1: - version "4.3.2" - resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-4.3.2.tgz#6b2291d1db7d98b6521d5f1efa42d0f3a9feb65e" - integrity sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ== - dependencies: - type-fest "^0.21.3" - -ansi-regex@^5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.1.tgz#082cb2c89c9fe8659a311a53bd6a4dc5301db304" - integrity sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ== - -ansi-styles@^3.2.1: - version "3.2.1" - resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d" - integrity sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA== - dependencies: - color-convert "^1.9.0" - -ansi-styles@^4.0.0, ansi-styles@^4.1.0: - version "4.3.0" - resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-4.3.0.tgz#edd803628ae71c04c85ae7a0906edad34b648937" - integrity sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg== - dependencies: - color-convert "^2.0.1" - -ansi-styles@^5.0.0, ansi-styles@^5.2.0: - version "5.2.0" - resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-5.2.0.tgz#07449690ad45777d1924ac2abb2fc8895dba836b" - integrity sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA== - -any-promise@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/any-promise/-/any-promise-0.1.0.tgz#830b680aa7e56f33451d4b049f3bd8044498ee27" - integrity sha512-lqzY9o+BbeGHRCOyxQkt/Tgvz0IZhTmQiA+LxQW8wSNpcTbj8K+0cZiSEvbpNZZP9/11Gy7dnLO3GNWUXO4d1g== - -anymatch@^3.0.3, anymatch@~3.1.2: - version "3.1.3" - resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-3.1.3.tgz#790c58b19ba1720a84205b57c618d5ad8524973e" - integrity sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw== - dependencies: - normalize-path "^3.0.0" - picomatch "^2.0.4" - -argparse@^1.0.7: - version "1.0.10" - resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.10.tgz#bcd6791ea5ae09725e17e5ad988134cd40b3d911" - integrity sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg== - dependencies: - sprintf-js "~1.0.2" - -argparse@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/argparse/-/argparse-2.0.1.tgz#246f50f3ca78a3240f6c997e8a9bd1eac49e4b38" - integrity sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q== - -array-differ@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/array-differ/-/array-differ-1.0.0.tgz#eff52e3758249d33be402b8bb8e564bb2b5d4031" - integrity sha512-LeZY+DZDRnvP7eMuQ6LHfCzUGxAAIViUBliK24P3hWXL6y4SortgR6Nim6xrkfSLlmH0+k+9NYNwVC2s53ZrYQ== - -array-differ@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/array-differ/-/array-differ-3.0.0.tgz#3cbb3d0f316810eafcc47624734237d6aee4ae6b" - integrity sha512-THtfYS6KtME/yIAhKjZ2ul7XI96lQGHRputJQHO80LAWQnuGP4iCIN8vdMRboGbIEYBwU33q8Tch1os2+X0kMg== - -array-includes@^3.1.5, array-includes@^3.1.6: - version "3.1.6" - resolved "https://registry.yarnpkg.com/array-includes/-/array-includes-3.1.6.tgz#9e9e720e194f198266ba9e18c29e6a9b0e4b225f" - integrity sha512-sgTbLvL6cNnw24FnbaDyjmvddQ2ML8arZsgaJhoABMoplz/4QRhtrYS+alr1BUM1Bwp6dhx8vVCBSLG+StwOFw== - dependencies: - call-bind "^1.0.2" - define-properties "^1.1.4" - es-abstract "^1.20.4" - get-intrinsic "^1.1.3" - is-string "^1.0.7" - -array-union@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/array-union/-/array-union-1.0.2.tgz#9a34410e4f4e3da23dea375be5be70f24778ec39" - integrity sha512-Dxr6QJj/RdU/hCaBjOfxW+q6lyuVE6JFWIrAUpuOOhoJJoQ99cUn3igRaHVB5P9WrgFVN0FfArM3x0cueOU8ng== - dependencies: - array-uniq "^1.0.1" - -array-union@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/array-union/-/array-union-2.1.0.tgz#b798420adbeb1de828d84acd8a2e23d3efe85e8d" - integrity sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw== - -array-uniq@^1.0.1: - version "1.0.3" - resolved "https://registry.yarnpkg.com/array-uniq/-/array-uniq-1.0.3.tgz#af6ac877a25cc7f74e058894753858dfdb24fdb6" - integrity sha512-MNha4BWQ6JbwhFhj03YK552f7cb3AzoE8SzeljgChvL1dl3IcvggXVz1DilzySZkCja+CXuZbdW7yATchWn8/Q== - -array.prototype.flatmap@^1.3.1: - version "1.3.1" - resolved "https://registry.yarnpkg.com/array.prototype.flatmap/-/array.prototype.flatmap-1.3.1.tgz#1aae7903c2100433cb8261cd4ed310aab5c4a183" - integrity sha512-8UGn9O1FDVvMNB0UlLv4voxRMze7+FpHyF5mSMRjWHUMlpoDViniy05870VlxhfgTnLbpuwTzvD76MTtWxB/mQ== - dependencies: - call-bind "^1.0.2" - define-properties "^1.1.4" - es-abstract "^1.20.4" - es-shim-unscopables "^1.0.0" - -array.prototype.tosorted@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/array.prototype.tosorted/-/array.prototype.tosorted-1.1.1.tgz#ccf44738aa2b5ac56578ffda97c03fd3e23dd532" - integrity sha512-pZYPXPRl2PqWcsUs6LOMn+1f1532nEoPTYowBtqLwAW+W8vSVhkIGnmOX1t/UQjD6YGI0vcD2B1U7ZFGQH9jnQ== - dependencies: - call-bind "^1.0.2" - define-properties "^1.1.4" - es-abstract "^1.20.4" - es-shim-unscopables "^1.0.0" - get-intrinsic "^1.1.3" - -arrify@^1.0.0, arrify@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/arrify/-/arrify-1.0.1.tgz#898508da2226f380df904728456849c1501a4b0d" - integrity sha512-3CYzex9M9FGQjCGMGyi6/31c8GJbgb0qGyrx5HWxPd0aCwh4cB2YjMb2Xf9UuoogrMrlO9cTqnB5rI5GHZTcUA== - -arrify@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/arrify/-/arrify-2.0.1.tgz#c9655e9331e0abcd588d2a7cad7e9956f66701fa" - integrity sha512-3duEwti880xqi4eAMN8AyR4a0ByT90zoYdLlevfrvU43vb0YZwZVfxOgxWrLXXXpyugL0hNZc9G6BiB5B3nUug== - -asap@^2.0.3, asap@~2.0.3: - version "2.0.6" - resolved "https://registry.yarnpkg.com/asap/-/asap-2.0.6.tgz#e50347611d7e690943208bbdafebcbc2fb866d46" - integrity sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA== - -assert-never@^1.2.1: - version "1.2.1" - resolved "https://registry.yarnpkg.com/assert-never/-/assert-never-1.2.1.tgz#11f0e363bf146205fb08193b5c7b90f4d1cf44fe" - integrity sha512-TaTivMB6pYI1kXwrFlEhLeGfOqoDNdTxjCdwRfFFkEA30Eu+k48W34nlok2EYWJfFFzqaEmichdNM7th6M5HNw== - -async@^3.2.3: - version "3.2.4" - resolved "https://registry.yarnpkg.com/async/-/async-3.2.4.tgz#2d22e00f8cddeb5fde5dd33522b56d1cf569a81c" - integrity sha512-iAB+JbDEGXhyIUavoDl9WP/Jj106Kz9DEn1DPgYw5ruDn0e3Wgi3sKFm55sASdGBNOQB8F59d9qQ7deqrHA8wQ== - -available-typed-arrays@^1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/available-typed-arrays/-/available-typed-arrays-1.0.5.tgz#92f95616501069d07d10edb2fc37d3e1c65123b7" - integrity sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw== - -babel-jest@^29.5.0: - version "29.5.0" - resolved "https://registry.yarnpkg.com/babel-jest/-/babel-jest-29.5.0.tgz#3fe3ddb109198e78b1c88f9ebdecd5e4fc2f50a5" - integrity sha512-mA4eCDh5mSo2EcA9xQjVTpmbbNk32Zb3Q3QFQsNhaK56Q+yoXowzFodLux30HRgyOho5rsQ6B0P9QpMkvvnJ0Q== - dependencies: - "@jest/transform" "^29.5.0" - "@types/babel__core" "^7.1.14" - babel-plugin-istanbul "^6.1.1" - babel-preset-jest "^29.5.0" - chalk "^4.0.0" - graceful-fs "^4.2.9" - slash "^3.0.0" - -babel-plugin-istanbul@^6.1.1: - version "6.1.1" - resolved "https://registry.yarnpkg.com/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz#fa88ec59232fd9b4e36dbbc540a8ec9a9b47da73" - integrity sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - "@istanbuljs/load-nyc-config" "^1.0.0" - "@istanbuljs/schema" "^0.1.2" - istanbul-lib-instrument "^5.0.4" - test-exclude "^6.0.0" - -babel-plugin-jest-hoist@^29.5.0: - version "29.5.0" - resolved "https://registry.yarnpkg.com/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-29.5.0.tgz#a97db437936f441ec196990c9738d4b88538618a" - integrity sha512-zSuuuAlTMT4mzLj2nPnUm6fsE6270vdOfnpbJ+RmruU75UhLFvL0N2NgI7xpeS7NaB6hGqmd5pVpGTDYvi4Q3w== - dependencies: - "@babel/template" "^7.3.3" - "@babel/types" "^7.3.3" - "@types/babel__core" "^7.1.14" - "@types/babel__traverse" "^7.0.6" - -babel-preset-current-node-syntax@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.0.1.tgz#b4399239b89b2a011f9ddbe3e4f401fc40cff73b" - integrity sha512-M7LQ0bxarkxQoN+vz5aJPsLBn77n8QgTFmo8WK0/44auK2xlCXrYcUxHFxgU7qW5Yzw/CjmLRK2uJzaCd7LvqQ== - dependencies: - "@babel/plugin-syntax-async-generators" "^7.8.4" - "@babel/plugin-syntax-bigint" "^7.8.3" - "@babel/plugin-syntax-class-properties" "^7.8.3" - "@babel/plugin-syntax-import-meta" "^7.8.3" - "@babel/plugin-syntax-json-strings" "^7.8.3" - "@babel/plugin-syntax-logical-assignment-operators" "^7.8.3" - "@babel/plugin-syntax-nullish-coalescing-operator" "^7.8.3" - "@babel/plugin-syntax-numeric-separator" "^7.8.3" - "@babel/plugin-syntax-object-rest-spread" "^7.8.3" - "@babel/plugin-syntax-optional-catch-binding" "^7.8.3" - "@babel/plugin-syntax-optional-chaining" "^7.8.3" - "@babel/plugin-syntax-top-level-await" "^7.8.3" - -babel-preset-jest@^29.5.0: - version "29.5.0" - resolved "https://registry.yarnpkg.com/babel-preset-jest/-/babel-preset-jest-29.5.0.tgz#57bc8cc88097af7ff6a5ab59d1cd29d52a5916e2" - integrity sha512-JOMloxOqdiBSxMAzjRaH023/vvcaSaec49zvg+2LmNsktC7ei39LTJGw02J+9uUtTZUq6xbLyJ4dxe9sSmIuAg== - dependencies: - babel-plugin-jest-hoist "^29.5.0" - babel-preset-current-node-syntax "^1.0.0" - -babel-walk@3.0.0-canary-5: - version "3.0.0-canary-5" - resolved "https://registry.yarnpkg.com/babel-walk/-/babel-walk-3.0.0-canary-5.tgz#f66ecd7298357aee44955f235a6ef54219104b11" - integrity sha512-GAwkz0AihzY5bkwIY5QDR+LvsRQgB/B+1foMPvi0FZPMl5fjD7ICiznUiBdLYMH1QYe6vqu4gWYytZOccLouFw== - dependencies: - "@babel/types" "^7.9.6" - -balanced-match@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.2.tgz#e83e3a7e3f300b34cb9d87f615fa0cbf357690ee" - integrity sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw== - -bcp-47-match@^1.0.0: - version "1.0.3" - resolved "https://registry.yarnpkg.com/bcp-47-match/-/bcp-47-match-1.0.3.tgz#cb8d03071389a10aff2062b862d6575ffd7cd7ef" - integrity sha512-LggQ4YTdjWQSKELZF5JwchnBa1u0pIQSZf5lSdOHEdbVP55h0qICA/FUp3+W99q0xqxYa1ZQizTUH87gecII5w== - -bcp-47-normalize@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/bcp-47-normalize/-/bcp-47-normalize-1.1.1.tgz#d2c76218d132f223c44e4a06a7224be3030f8ec3" - integrity sha512-jWZ1Jdu3cs0EZdfCkS0UE9Gg01PtxnChjEBySeB+Zo6nkqtFfnvtoQQgP1qU1Oo4qgJgxhTI6Sf9y/pZIhPs0A== - dependencies: - bcp-47 "^1.0.0" - bcp-47-match "^1.0.0" - -bcp-47@^1.0.0: - version "1.0.8" - resolved "https://registry.yarnpkg.com/bcp-47/-/bcp-47-1.0.8.tgz#bf63ae4269faabe7c100deac0811121a48b6a561" - integrity sha512-Y9y1QNBBtYtv7hcmoX0tR+tUNSFZGZ6OL6vKPObq8BbOhkCoyayF6ogfLTgAli/KuAEbsYHYUNq2AQuY6IuLag== - dependencies: - is-alphabetical "^1.0.0" - is-alphanumerical "^1.0.0" - is-decimal "^1.0.0" - -binary-extensions@^2.0.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-2.2.0.tgz#75f502eeaf9ffde42fc98829645be4ea76bd9e2d" - integrity sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA== - -bluebird@^3.7.2: - version "3.7.2" - resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.7.2.tgz#9f229c15be272454ffa973ace0dbee79a1b0c36f" - integrity sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg== - -brace-expansion@^1.1.7: - version "1.1.11" - resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd" - integrity sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA== - dependencies: - balanced-match "^1.0.0" - concat-map "0.0.1" - -brace-expansion@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-2.0.1.tgz#1edc459e0f0c548486ecf9fc99f2221364b9a0ae" - integrity sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA== - dependencies: - balanced-match "^1.0.0" - -braces@^3.0.2, braces@~3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.2.tgz#3454e1a462ee8d599e236df336cd9ea4f8afe107" - integrity sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A== - dependencies: - fill-range "^7.0.1" - -browserslist@^4.21.3: - version "4.21.5" - resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.21.5.tgz#75c5dae60063ee641f977e00edd3cfb2fb7af6a7" - integrity sha512-tUkiguQGW7S3IhB7N+c2MV/HZPSCPAAiYBZXLsBhFB/PCy6ZKKsZrmBayHV9fdGV/ARIfJ14NkxKzRDjvp7L6w== - dependencies: - caniuse-lite "^1.0.30001449" - electron-to-chromium "^1.4.284" - node-releases "^2.0.8" - update-browserslist-db "^1.0.10" - -bser@2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/bser/-/bser-2.1.1.tgz#e6787da20ece9d07998533cfd9de6f5c38f4bc05" - integrity sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ== - dependencies: - node-int64 "^0.4.0" - -buffer-from@^1.0.0: - version "1.1.2" - resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.2.tgz#2b146a6fd72e80b4f55d255f35ed59a3a9a41bd5" - integrity sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ== - -builtin-modules@^3.3.0: - version "3.3.0" - resolved "https://registry.yarnpkg.com/builtin-modules/-/builtin-modules-3.3.0.tgz#cae62812b89801e9656336e46223e030386be7b6" - integrity sha512-zhaCDicdLuWN5UbN5IMnFqNMhNfo919sH85y2/ea+5Yg9TsTkeZxpL+JLbp6cgYFS4sRLp3YV4S6yDuqVWHYOw== - -call-bind@^1.0.0, call-bind@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/call-bind/-/call-bind-1.0.2.tgz#b1d4e89e688119c3c9a903ad30abb2f6a919be3c" - integrity sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA== - dependencies: - function-bind "^1.1.1" - get-intrinsic "^1.0.2" - -callsites@^3.0.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/callsites/-/callsites-3.1.0.tgz#b3630abd8943432f54b3f0519238e33cd7df2f73" - integrity sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ== - -camel-case@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/camel-case/-/camel-case-3.0.0.tgz#ca3c3688a4e9cf3a4cda777dc4dcbc713249cf73" - integrity sha512-+MbKztAYHXPr1jNTSKQF52VpcFjwY5RkR7fxksV8Doo4KAYc5Fl4UJRgthBbTmEx8C54DqahhbLJkDwjI3PI/w== - dependencies: - no-case "^2.2.0" - upper-case "^1.1.1" - -camelcase-keys@^8.0.2: - version "8.0.2" - resolved "https://registry.yarnpkg.com/camelcase-keys/-/camelcase-keys-8.0.2.tgz#a7140ba7c797aea32161d4ce5cdbda11d09eb414" - integrity sha512-qMKdlOfsjlezMqxkUGGMaWWs17i2HoL15tM+wtx8ld4nLrUwU58TFdvyGOz/piNP842KeO8yXvggVQSdQ828NA== - dependencies: - camelcase "^7.0.0" - map-obj "^4.3.0" - quick-lru "^6.1.1" - type-fest "^2.13.0" - -camelcase@^5.3.1: - version "5.3.1" - resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-5.3.1.tgz#e3c9b31569e106811df242f715725a1f4c494320" - integrity sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg== - -camelcase@^6.2.0: - version "6.3.0" - resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-6.3.0.tgz#5685b95eb209ac9c0c177467778c9c84df58ba9a" - integrity sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA== - -camelcase@^7.0.0: - version "7.0.1" - resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-7.0.1.tgz#f02e50af9fd7782bc8b88a3558c32fd3a388f048" - integrity sha512-xlx1yCK2Oc1APsPXDL2LdlNP6+uu8OCDdhOBSVT279M/S+y75O30C2VuD8T2ogdePBBl7PfPF4504tnLgX3zfw== - -caniuse-lite@^1.0.30001449: - version "1.0.30001464" - resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001464.tgz#888922718df48ce5e33dcfe1a2af7d42676c5eb7" - integrity sha512-oww27MtUmusatpRpCGSOneQk2/l5czXANDSFvsc7VuOQ86s3ANhZetpwXNf1zY/zdfP63Xvjz325DAdAoES13g== - -catharsis@^0.9.0: - version "0.9.0" - resolved "https://registry.yarnpkg.com/catharsis/-/catharsis-0.9.0.tgz#40382a168be0e6da308c277d3a2b3eb40c7d2121" - integrity sha512-prMTQVpcns/tzFgFVkVp6ak6RykZyWb3gu8ckUpd6YkTlacOd3DXGJjIpD4Q6zJirizvaiAjSSHlOsA+6sNh2A== - dependencies: - lodash "^4.17.15" - -chalk@^2.0.0: - version "2.4.2" - resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" - integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== - dependencies: - ansi-styles "^3.2.1" - escape-string-regexp "^1.0.5" - supports-color "^5.3.0" - -chalk@^4.0.0, chalk@^4.0.2, chalk@^4.1.1: - version "4.1.2" - resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.2.tgz#aac4e2b7734a740867aeb16bf02aad556a1e7a01" - integrity sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA== - dependencies: - ansi-styles "^4.1.0" - supports-color "^7.1.0" - -char-regex@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/char-regex/-/char-regex-1.0.2.tgz#d744358226217f981ed58f479b1d6bcc29545dcf" - integrity sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw== - -character-parser@^2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/character-parser/-/character-parser-2.2.0.tgz#c7ce28f36d4bcd9744e5ffc2c5fcde1c73261fc0" - integrity sha512-+UqJQjFEFaTAs3bNsF2j2kEN1baG/zghZbdqoYEDxGZtJo9LBzl1A+m0D4n3qKx8N2FNv8/Xp6yV9mQmBuptaw== - dependencies: - is-regex "^1.0.3" - -chokidar@^3.5.3: - version "3.5.3" - resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.5.3.tgz#1cf37c8707b932bd1af1ae22c0432e2acd1903bd" - integrity sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw== - dependencies: - anymatch "~3.1.2" - braces "~3.0.2" - glob-parent "~5.1.2" - is-binary-path "~2.1.0" - is-glob "~4.0.1" - normalize-path "~3.0.0" - readdirp "~3.6.0" - optionalDependencies: - fsevents "~2.3.2" - -ci-info@^3.2.0, ci-info@^3.8.0: - version "3.8.0" - resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-3.8.0.tgz#81408265a5380c929f0bc665d62256628ce9ef91" - integrity sha512-eXTggHWSooYhq49F2opQhuHWgzucfF2YgODK4e1566GQs5BIfP30B0oenwBJHfWxAs2fyPB1s7Mg949zLf61Yw== - -cjs-module-lexer@^1.0.0: - version "1.2.2" - resolved "https://registry.yarnpkg.com/cjs-module-lexer/-/cjs-module-lexer-1.2.2.tgz#9f84ba3244a512f3a54e5277e8eef4c489864e40" - integrity sha512-cOU9usZw8/dXIXKtwa8pM0OTJQuJkxMN6w30csNRUerHfeQ5R6U3kkU/FtJeIf3M202OHfY2U8ccInBG7/xogA== - -clean-css@^4.2.1: - version "4.2.4" - resolved "https://registry.yarnpkg.com/clean-css/-/clean-css-4.2.4.tgz#733bf46eba4e607c6891ea57c24a989356831178" - integrity sha512-EJUDT7nDVFDvaQgAo2G/PJvxmp1o/c6iXLbswsBbUFXi1Nr+AjA2cKmfbKDMjMvzEe75g3P6JkaDDAKk96A85A== - dependencies: - source-map "~0.6.0" - -clean-regexp@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/clean-regexp/-/clean-regexp-1.0.0.tgz#8df7c7aae51fd36874e8f8d05b9180bc11a3fed7" - integrity sha512-GfisEZEJvzKrmGWkvfhgzcz/BllN1USeqD2V6tg14OAOgaCD2Z/PUEuxnAZ/nPvmaHRG7a8y77p1T/IRQ4D1Hw== - dependencies: - escape-string-regexp "^1.0.5" - -cliui@^8.0.1: - version "8.0.1" - resolved "https://registry.yarnpkg.com/cliui/-/cliui-8.0.1.tgz#0c04b075db02cbfe60dc8e6cf2f5486b1a3608aa" - integrity sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ== - dependencies: - string-width "^4.2.0" - strip-ansi "^6.0.1" - wrap-ansi "^7.0.0" - -co@^4.6.0: - version "4.6.0" - resolved "https://registry.yarnpkg.com/co/-/co-4.6.0.tgz#6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184" - integrity sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ== - -collect-v8-coverage@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/collect-v8-coverage/-/collect-v8-coverage-1.0.1.tgz#cc2c8e94fc18bbdffe64d6534570c8a673b27f59" - integrity sha512-iBPtljfCNcTKNAto0KEtDfZ3qzjJvqE3aTGZsbhjSBlorqpXJlaWWtPO35D+ZImoC3KWejX64o+yPGxhWSTzfg== - -color-convert@^1.9.0: - version "1.9.3" - resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8" - integrity sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg== - dependencies: - color-name "1.1.3" - -color-convert@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-2.0.1.tgz#72d3a68d598c9bdb3af2ad1e84f21d896abd4de3" - integrity sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ== - dependencies: - color-name "~1.1.4" - -color-name@1.1.3: - version "1.1.3" - resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" - integrity sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw== - -color-name@~1.1.4: - version "1.1.4" - resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2" - integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== - -commander@^10.0.0: - version "10.0.0" - resolved "https://registry.yarnpkg.com/commander/-/commander-10.0.0.tgz#71797971162cd3cf65f0b9d24eb28f8d303acdf1" - integrity sha512-zS5PnTI22FIRM6ylNW8G4Ap0IEOyk62fhLSD0+uHRT9McRCLGpkVNvao4bjimpK/GShynyQkFFxHhwMcETmduA== - -commander@^2.19.0, commander@^2.20.0: - version "2.20.3" - resolved "https://registry.yarnpkg.com/commander/-/commander-2.20.3.tgz#fd485e84c03eb4881c20722ba48035e8531aeb33" - integrity sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ== - -commander@^5.1.0: - version "5.1.0" - resolved "https://registry.yarnpkg.com/commander/-/commander-5.1.0.tgz#46abbd1652f8e059bddaef99bbdcb2ad9cf179ae" - integrity sha512-P0CysNDQ7rtVw4QIQtm+MRxV66vKFSvlsQvGYXZWR3qFU0jlMKHZZZgw8e+8DSah4UDKMqnknRDQz+xuQXQ/Zg== - -concat-map@0.0.1: - version "0.0.1" - resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" - integrity sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg== - -constantinople@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/constantinople/-/constantinople-4.0.1.tgz#0def113fa0e4dc8de83331a5cf79c8b325213151" - integrity sha512-vCrqcSIq4//Gx74TXXCGnHpulY1dskqLTFGDmhrGxzeXL8lF8kvXv6mpNWlJj1uD4DW23D4ljAqbY4RRaaUZIw== - dependencies: - "@babel/parser" "^7.6.0" - "@babel/types" "^7.6.1" - -convert-source-map@^1.6.0, convert-source-map@^1.7.0: - version "1.9.0" - resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.9.0.tgz#7faae62353fb4213366d0ca98358d22e8368b05f" - integrity sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A== - -convert-source-map@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-2.0.0.tgz#4b560f649fc4e918dd0ab75cf4961e8bc882d82a" - integrity sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg== - -cross-spawn@^7.0.2, cross-spawn@^7.0.3: - version "7.0.3" - resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.3.tgz#f73a85b9d5d41d045551c177e2882d4ac85728a6" - integrity sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w== - dependencies: - path-key "^3.1.0" - shebang-command "^2.0.0" - which "^2.0.1" - -csv-parse@^5.4.0: - version "5.4.0" - resolved "https://registry.yarnpkg.com/csv-parse/-/csv-parse-5.4.0.tgz#6793210a4a49a9a74b3fde3f9d00f3f52044fd89" - integrity sha512-JiQosUWiOFgp4hQn0an+SBoV9IKdqzhROM0iiN4LB7UpfJBlsSJlWl9nq4zGgxgMAzHJ6V4t29VAVD+3+2NJAg== - -debug@2.6.9: - version "2.6.9" - resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" - integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA== - dependencies: - ms "2.0.0" - -debug@^4.1.0, debug@^4.1.1, debug@^4.3.2, debug@^4.3.4: - version "4.3.4" - resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.4.tgz#1319f6579357f2338d3337d2cdd4914bb5dcc865" - integrity sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ== - dependencies: - ms "2.1.2" - -decamelize-keys@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/decamelize-keys/-/decamelize-keys-2.0.1.tgz#32115e60cc5eeaea11d6692fd73de3b92e34502f" - integrity sha512-nrNeSCtU2gV3Apcmn/EZ+aR20zKDuNDStV67jPiupokD3sOAFeMzslLMCFdKv1sPqzwoe5ZUhsSW9IAVgKSL/Q== - dependencies: - decamelize "^6.0.0" - map-obj "^4.3.0" - quick-lru "^6.1.1" - type-fest "^3.1.0" - -decamelize@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-6.0.0.tgz#8cad4d916fde5c41a264a43d0ecc56fe3d31749e" - integrity sha512-Fv96DCsdOgB6mdGl67MT5JaTNKRzrzill5OH5s8bjYJXVlcXyPYGyPsUkWyGV5p1TXI5esYIYMMeDJL0hEIwaA== - -dedent@^0.7.0: - version "0.7.0" - resolved "https://registry.yarnpkg.com/dedent/-/dedent-0.7.0.tgz#2495ddbaf6eb874abb0e1be9df22d2e5a544326c" - integrity sha512-Q6fKUPqnAHAyhiUgFU7BUzLiv0kd8saH9al7tnu5Q/okj6dnupxyTgFIBjVzJATdfIAm9NAsvXNzjaKa+bxVyA== - -deep-is@^0.1.3: - version "0.1.4" - resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.4.tgz#a6f2dce612fadd2ef1f519b73551f17e85199831" - integrity sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ== - -deepmerge@^4.2.2: - version "4.3.0" - resolved "https://registry.yarnpkg.com/deepmerge/-/deepmerge-4.3.0.tgz#65491893ec47756d44719ae520e0e2609233b59b" - integrity sha512-z2wJZXrmeHdvYJp/Ux55wIjqo81G5Bp4c+oELTW+7ar6SogWHajt5a9gO3s3IDaGSAXjDk0vlQKN3rms8ab3og== - -define-properties@^1.1.3, define-properties@^1.1.4: - version "1.2.0" - resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.2.0.tgz#52988570670c9eacedd8064f4a990f2405849bd5" - integrity sha512-xvqAVKGfT1+UAvPwKTVw/njhdQ8ZhXK4lI0bCIuCMrp2up9nPnaDftrLtmpTazqd1o+UY4zgzU+avtMbDP+ldA== - dependencies: - has-property-descriptors "^1.0.0" - object-keys "^1.1.1" - -depd@2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/depd/-/depd-2.0.0.tgz#b696163cc757560d09cf22cc8fad1571b79e76df" - integrity sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw== - -dependency-graph@^0.11.0: - version "0.11.0" - resolved "https://registry.yarnpkg.com/dependency-graph/-/dependency-graph-0.11.0.tgz#ac0ce7ed68a54da22165a85e97a01d53f5eb2e27" - integrity sha512-JeMq7fEshyepOWDfcfHK06N3MhyPhz++vtqWhMT5O9A3K42rdsEDpfdVqjaqaAhsw6a+ZqeDvQVtD0hFHQWrzg== - -destroy@1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/destroy/-/destroy-1.2.0.tgz#4803735509ad8be552934c67df614f94e66fa015" - integrity sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg== - -detect-newline@^3.0.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/detect-newline/-/detect-newline-3.1.0.tgz#576f5dfc63ae1a192ff192d8ad3af6308991b651" - integrity sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA== - -dev-ip@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/dev-ip/-/dev-ip-1.0.1.tgz#a76a3ed1855be7a012bb8ac16cb80f3c00dc28f0" - integrity sha512-LmVkry/oDShEgSZPNgqCIp2/TlqtExeGmymru3uCELnfyjY11IzpAproLYs+1X88fXO6DBoYP3ul2Xo2yz2j6A== - -diff-sequences@^29.4.3: - version "29.4.3" - resolved "https://registry.yarnpkg.com/diff-sequences/-/diff-sequences-29.4.3.tgz#9314bc1fabe09267ffeca9cbafc457d8499a13f2" - integrity sha512-ofrBgwpPhCD85kMKtE9RYFFq6OC1A89oW2vvgWZNCwxrUpRUILopY7lsYyMDSjc8g6U6aiO0Qubg6r4Wgt5ZnA== - -dir-glob@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/dir-glob/-/dir-glob-3.0.1.tgz#56dbf73d992a4a93ba1584f4534063fd2e41717f" - integrity sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA== - dependencies: - path-type "^4.0.0" - -doctrine@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-2.1.0.tgz#5cd01fc101621b42c4cd7f5d1a66243716d3f39d" - integrity sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw== - dependencies: - esutils "^2.0.2" - -doctrine@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-3.0.0.tgz#addebead72a6574db783639dc87a121773973961" - integrity sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w== - dependencies: - esutils "^2.0.2" - -doctypes@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/doctypes/-/doctypes-1.1.0.tgz#ea80b106a87538774e8a3a4a5afe293de489e0a9" - integrity sha512-LLBi6pEqS6Do3EKQ3J0NqHWV5hhb78Pi8vvESYwyOy2c31ZEZVdtitdzsQsKb7878PEERhzUk0ftqGhG6Mz+pQ== - -dom-serializer@^1.0.1: - version "1.4.1" - resolved "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-1.4.1.tgz#de5d41b1aea290215dc45a6dae8adcf1d32e2d30" - integrity sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag== - dependencies: - domelementtype "^2.0.1" - domhandler "^4.2.0" - entities "^2.0.0" - -domelementtype@^2.0.1, domelementtype@^2.2.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-2.3.0.tgz#5c45e8e869952626331d7aab326d01daf65d589d" - integrity sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw== - -domhandler@^4.2.0, domhandler@^4.2.2: - version "4.3.1" - resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-4.3.1.tgz#8d792033416f59d68bc03a5aa7b018c1ca89279c" - integrity sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ== - dependencies: - domelementtype "^2.2.0" - -domutils@^2.8.0: - version "2.8.0" - resolved "https://registry.yarnpkg.com/domutils/-/domutils-2.8.0.tgz#4437def5db6e2d1f5d6ee859bd95ca7d02048135" - integrity sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A== - dependencies: - dom-serializer "^1.0.1" - domelementtype "^2.2.0" - domhandler "^4.2.0" - -ee-first@1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d" - integrity sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow== - -ejs@^3.1.9: - version "3.1.9" - resolved "https://registry.yarnpkg.com/ejs/-/ejs-3.1.9.tgz#03c9e8777fe12686a9effcef22303ca3d8eeb361" - integrity sha512-rC+QVNMJWv+MtPgkt0y+0rVEIdbtxVADApW9JXrUVlzHetgcyczP/E7DJmWJ4fJCZF2cPcBk0laWO9ZHMG3DmQ== - dependencies: - jake "^10.8.5" - -electron-to-chromium@^1.4.284: - version "1.4.328" - resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.328.tgz#b4565ffa502542b561cea16086d6d9b916c7095a" - integrity sha512-DE9tTy2PNmy1v55AZAO542ui+MLC2cvINMK4P2LXGsJdput/ThVG9t+QGecPuAZZSgC8XoI+Jh9M1OG9IoNSCw== - -emittery@^0.13.1: - version "0.13.1" - resolved "https://registry.yarnpkg.com/emittery/-/emittery-0.13.1.tgz#c04b8c3457490e0847ae51fced3af52d338e3dad" - integrity sha512-DeWwawk6r5yR9jFgnDKYt4sLS0LmHJJi3ZOnb5/JdbYwj3nW+FxQnHIjhBKz8YLC7oRNPVM9NQ47I3CVx34eqQ== - -emoji-regex@^8.0.0: - version "8.0.0" - resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-8.0.0.tgz#e818fd69ce5ccfcb404594f842963bf53164cc37" - integrity sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A== - -encodeurl@~1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/encodeurl/-/encodeurl-1.0.2.tgz#ad3ff4c86ec2d029322f5a02c3a9a606c95b3f59" - integrity sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w== - -entities@^2.0.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/entities/-/entities-2.2.0.tgz#098dc90ebb83d8dffa089d55256b351d34c4da55" - integrity sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A== - -entities@^3.0.1, entities@~3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/entities/-/entities-3.0.1.tgz#2b887ca62585e96db3903482d336c1006c3001d4" - integrity sha512-WiyBqoomrwMdFG1e0kqvASYfnlb0lp8M5o5Fw2OFq1hNZxxcNk8Ik0Xm7LxzBhuidnZB/UtBqVCgUz3kBOP51Q== - -entities@~2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/entities/-/entities-2.1.0.tgz#992d3129cf7df6870b96c57858c249a120f8b8b5" - integrity sha512-hCx1oky9PFrJ611mf0ifBLBRW8lUUVRlFolb5gWRfIELabBlbp9xZvrqZLZAs+NxFnbfQoeGd8wDkygjg7U85w== - -errno@^0.1.2: - version "0.1.8" - resolved "https://registry.yarnpkg.com/errno/-/errno-0.1.8.tgz#8bb3e9c7d463be4976ff888f76b4809ebc2e811f" - integrity sha512-dJ6oBr5SQ1VSd9qkk7ByRgb/1SH4JZjCHSW/mr63/QcXO9zLVxvJ6Oy13nio03rxpSnVDDjFor75SjVeZWPW/A== - dependencies: - prr "~1.0.1" - -error-ex@^1.3.1: - version "1.3.2" - resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.2.tgz#b4ac40648107fdcdcfae242f428bea8a14d4f1bf" - integrity sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g== - dependencies: - is-arrayish "^0.2.1" - -es-abstract@^1.19.0, es-abstract@^1.20.4: - version "1.21.1" - resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.21.1.tgz#e6105a099967c08377830a0c9cb589d570dd86c6" - integrity sha512-QudMsPOz86xYz/1dG1OuGBKOELjCh99IIWHLzy5znUB6j8xG2yMA7bfTV86VSqKF+Y/H08vQPR+9jyXpuC6hfg== - dependencies: - available-typed-arrays "^1.0.5" - call-bind "^1.0.2" - es-set-tostringtag "^2.0.1" - es-to-primitive "^1.2.1" - function-bind "^1.1.1" - function.prototype.name "^1.1.5" - get-intrinsic "^1.1.3" - get-symbol-description "^1.0.0" - globalthis "^1.0.3" - gopd "^1.0.1" - has "^1.0.3" - has-property-descriptors "^1.0.0" - has-proto "^1.0.1" - has-symbols "^1.0.3" - internal-slot "^1.0.4" - is-array-buffer "^3.0.1" - is-callable "^1.2.7" - is-negative-zero "^2.0.2" - is-regex "^1.1.4" - is-shared-array-buffer "^1.0.2" - is-string "^1.0.7" - is-typed-array "^1.1.10" - is-weakref "^1.0.2" - object-inspect "^1.12.2" - object-keys "^1.1.1" - object.assign "^4.1.4" - regexp.prototype.flags "^1.4.3" - safe-regex-test "^1.0.0" - string.prototype.trimend "^1.0.6" - string.prototype.trimstart "^1.0.6" - typed-array-length "^1.0.4" - unbox-primitive "^1.0.2" - which-typed-array "^1.1.9" - -es-set-tostringtag@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/es-set-tostringtag/-/es-set-tostringtag-2.0.1.tgz#338d502f6f674301d710b80c8592de8a15f09cd8" - integrity sha512-g3OMbtlwY3QewlqAiMLI47KywjWZoEytKr8pf6iTC8uJq5bIAH52Z9pnQ8pVL6whrCto53JZDuUIsifGeLorTg== - dependencies: - get-intrinsic "^1.1.3" - has "^1.0.3" - has-tostringtag "^1.0.0" - -es-shim-unscopables@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/es-shim-unscopables/-/es-shim-unscopables-1.0.0.tgz#702e632193201e3edf8713635d083d378e510241" - integrity sha512-Jm6GPcCdC30eMLbZ2x8z2WuRwAws3zTBBKuusffYVUrNj/GVSUAZ+xKMaUpfNDR5IbyNA5LJbaecoUVbmUcB1w== - dependencies: - has "^1.0.3" - -es-to-primitive@^1.2.1: - version "1.2.1" - resolved "https://registry.yarnpkg.com/es-to-primitive/-/es-to-primitive-1.2.1.tgz#e55cd4c9cdc188bcefb03b366c736323fc5c898a" - integrity sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA== - dependencies: - is-callable "^1.1.4" - is-date-object "^1.0.1" - is-symbol "^1.0.2" - -escalade@^3.1.1: - version "3.1.1" - resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.1.tgz#d8cfdc7000965c5a0174b4a82eaa5c0552742e40" - integrity sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw== - -escape-html@~1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/escape-html/-/escape-html-1.0.3.tgz#0258eae4d3d0c0974de1c169188ef0051d1d1988" - integrity sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow== - -escape-string-regexp@^1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" - integrity sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg== - -escape-string-regexp@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz#a30304e99daa32e23b2fd20f51babd07cffca344" - integrity sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w== - -escape-string-regexp@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz#14ba83a5d373e3d311e5afca29cf5bfad965bf34" - integrity sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA== - -eslint-config-prettier@^9.0.0: - version "9.0.0" - resolved "https://registry.yarnpkg.com/eslint-config-prettier/-/eslint-config-prettier-9.0.0.tgz#eb25485946dd0c66cd216a46232dc05451518d1f" - integrity sha512-IcJsTkJae2S35pRsRAwoCE+925rJJStOdkKnLVgtE+tEpqU0EVVM7OqrwxqgptKdX29NUwC82I5pXsGFIgSevw== - -eslint-config-qiwi@^2.1.3: - version "2.1.3" - resolved "https://registry.yarnpkg.com/eslint-config-qiwi/-/eslint-config-qiwi-2.1.3.tgz#d656d3e97af12583b03fcb3a51b28c033fc273f1" - integrity sha512-UE6mD+Q6f1RVHYHh7/pO7C0AsXx+hkwPNCxmf57DanPYB07QNV5hR9LpvGeszMH0ICFYr7o3qNsxWFVbTLvVhw== - dependencies: - "@typescript-eslint/eslint-plugin" "^5.59.2" - "@typescript-eslint/parser" "^5.59.2" - eslint-plugin-react "^7.32.2" - eslint-plugin-react-hooks "^4.6.0" - eslint-plugin-sonarjs "^0.19.0" - eslint-plugin-unicorn "^47.0.0" - -eslint-plugin-react-hooks@^4.6.0: - version "4.6.0" - resolved "https://registry.yarnpkg.com/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-4.6.0.tgz#4c3e697ad95b77e93f8646aaa1630c1ba607edd3" - integrity sha512-oFc7Itz9Qxh2x4gNHStv3BqJq54ExXmfC+a1NjAta66IAN87Wu0R/QArgIS9qKzX3dXKPI9H5crl9QchNMY9+g== - -eslint-plugin-react@^7.32.2: - version "7.32.2" - resolved "https://registry.yarnpkg.com/eslint-plugin-react/-/eslint-plugin-react-7.32.2.tgz#e71f21c7c265ebce01bcbc9d0955170c55571f10" - integrity sha512-t2fBMa+XzonrrNkyVirzKlvn5RXzzPwRHtMvLAtVZrt8oxgnTQaYbU6SXTOO1mwQgp1y5+toMSKInnzGr0Knqg== - dependencies: - array-includes "^3.1.6" - array.prototype.flatmap "^1.3.1" - array.prototype.tosorted "^1.1.1" - doctrine "^2.1.0" - estraverse "^5.3.0" - jsx-ast-utils "^2.4.1 || ^3.0.0" - minimatch "^3.1.2" - object.entries "^1.1.6" - object.fromentries "^2.0.6" - object.hasown "^1.1.2" - object.values "^1.1.6" - prop-types "^15.8.1" - resolve "^2.0.0-next.4" - semver "^6.3.0" - string.prototype.matchall "^4.0.8" - -eslint-plugin-sonarjs@^0.19.0: - version "0.19.0" - resolved "https://registry.yarnpkg.com/eslint-plugin-sonarjs/-/eslint-plugin-sonarjs-0.19.0.tgz#6654bc1c6d24c2183891b8bfe1175004dbba1e3c" - integrity sha512-6+s5oNk5TFtVlbRxqZN7FIGmjdPCYQKaTzFPmqieCmsU1kBYDzndTeQav0xtQNwZJWu5awWfTGe8Srq9xFOGnw== - -eslint-plugin-unicorn@^47.0.0: - version "47.0.0" - resolved "https://registry.yarnpkg.com/eslint-plugin-unicorn/-/eslint-plugin-unicorn-47.0.0.tgz#960e9d3789f656ba3e21982420793b069a911011" - integrity sha512-ivB3bKk7fDIeWOUmmMm9o3Ax9zbMz1Bsza/R2qm46ufw4T6VBFBaJIR1uN3pCKSmSXm8/9Nri8V+iUut1NhQGA== - dependencies: - "@babel/helper-validator-identifier" "^7.19.1" - "@eslint-community/eslint-utils" "^4.4.0" - ci-info "^3.8.0" - clean-regexp "^1.0.0" - esquery "^1.5.0" - indent-string "^4.0.0" - is-builtin-module "^3.2.1" - jsesc "^3.0.2" - lodash "^4.17.21" - pluralize "^8.0.0" - read-pkg-up "^7.0.1" - regexp-tree "^0.1.24" - regjsparser "^0.10.0" - safe-regex "^2.1.1" - semver "^7.3.8" - strip-indent "^3.0.0" - -eslint-scope@^5.1.1: - version "5.1.1" - resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-5.1.1.tgz#e786e59a66cb92b3f6c1fb0d508aab174848f48c" - integrity sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw== - dependencies: - esrecurse "^4.3.0" - estraverse "^4.1.1" - -eslint-scope@^7.2.0: - version "7.2.0" - resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-7.2.0.tgz#f21ebdafda02352f103634b96dd47d9f81ca117b" - integrity sha512-DYj5deGlHBfMt15J7rdtyKNq/Nqlv5KfU4iodrQ019XESsRnwXH9KAE0y3cwtUHDo2ob7CypAnCqefh6vioWRw== - dependencies: - esrecurse "^4.3.0" - estraverse "^5.2.0" - -eslint-visitor-keys@^3.3.0: - version "3.3.0" - resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-3.3.0.tgz#f6480fa6b1f30efe2d1968aa8ac745b862469826" - integrity sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA== - -eslint-visitor-keys@^3.4.1: - version "3.4.1" - resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-3.4.1.tgz#c22c48f48942d08ca824cc526211ae400478a994" - integrity sha512-pZnmmLwYzf+kWaM/Qgrvpen51upAktaaiI01nsJD/Yr3lMOdNtq0cxkrrg16w64VtisN6okbs7Q8AfGqj4c9fA== - -eslint@^8.44.0: - version "8.44.0" - resolved "https://registry.yarnpkg.com/eslint/-/eslint-8.44.0.tgz#51246e3889b259bbcd1d7d736a0c10add4f0e500" - integrity sha512-0wpHoUbDUHgNCyvFB5aXLiQVfK9B0at6gUvzy83k4kAsQ/u769TQDX6iKC+aO4upIHO9WSaA3QoXYQDHbNwf1A== - dependencies: - "@eslint-community/eslint-utils" "^4.2.0" - "@eslint-community/regexpp" "^4.4.0" - "@eslint/eslintrc" "^2.1.0" - "@eslint/js" "8.44.0" - "@humanwhocodes/config-array" "^0.11.10" - "@humanwhocodes/module-importer" "^1.0.1" - "@nodelib/fs.walk" "^1.2.8" - ajv "^6.10.0" - chalk "^4.0.0" - cross-spawn "^7.0.2" - debug "^4.3.2" - doctrine "^3.0.0" - escape-string-regexp "^4.0.0" - eslint-scope "^7.2.0" - eslint-visitor-keys "^3.4.1" - espree "^9.6.0" - esquery "^1.4.2" - esutils "^2.0.2" - fast-deep-equal "^3.1.3" - file-entry-cache "^6.0.1" - find-up "^5.0.0" - glob-parent "^6.0.2" - globals "^13.19.0" - graphemer "^1.4.0" - ignore "^5.2.0" - import-fresh "^3.0.0" - imurmurhash "^0.1.4" - is-glob "^4.0.0" - is-path-inside "^3.0.3" - js-yaml "^4.1.0" - json-stable-stringify-without-jsonify "^1.0.1" - levn "^0.4.1" - lodash.merge "^4.6.2" - minimatch "^3.1.2" - natural-compare "^1.4.0" - optionator "^0.9.3" - strip-ansi "^6.0.1" - strip-json-comments "^3.1.0" - text-table "^0.2.0" - -espree@^9.6.0: - version "9.6.0" - resolved "https://registry.yarnpkg.com/espree/-/espree-9.6.0.tgz#80869754b1c6560f32e3b6929194a3fe07c5b82f" - integrity sha512-1FH/IiruXZ84tpUlm0aCUEwMl2Ho5ilqVh0VvQXw+byAz/4SAciyHLlfmL5WYqsvD38oymdUwBss0LtK8m4s/A== - dependencies: - acorn "^8.9.0" - acorn-jsx "^5.3.2" - eslint-visitor-keys "^3.4.1" - -esprima@^4.0.0: - version "4.0.1" - resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.1.tgz#13b04cdb3e6c5d19df91ab6987a8695619b0aa71" - integrity sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A== - -esquery@^1.4.2, esquery@^1.5.0: - version "1.5.0" - resolved "https://registry.yarnpkg.com/esquery/-/esquery-1.5.0.tgz#6ce17738de8577694edd7361c57182ac8cb0db0b" - integrity sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg== - dependencies: - estraverse "^5.1.0" - -esrecurse@^4.3.0: - version "4.3.0" - resolved "https://registry.yarnpkg.com/esrecurse/-/esrecurse-4.3.0.tgz#7ad7964d679abb28bee72cec63758b1c5d2c9921" - integrity sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag== - dependencies: - estraverse "^5.2.0" - -estraverse@^4.1.1: - version "4.3.0" - resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.3.0.tgz#398ad3f3c5a24948be7725e83d11a7de28cdbd1d" - integrity sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw== - -estraverse@^5.1.0, estraverse@^5.2.0, estraverse@^5.3.0: - version "5.3.0" - resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-5.3.0.tgz#2eea5290702f26ab8fe5370370ff86c965d21123" - integrity sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA== - -esutils@^2.0.2: - version "2.0.3" - resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.3.tgz#74d2eb4de0b8da1293711910d50775b9b710ef64" - integrity sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g== - -etag@~1.8.1: - version "1.8.1" - resolved "https://registry.yarnpkg.com/etag/-/etag-1.8.1.tgz#41ae2eeb65efa62268aebfea83ac7d79299b0887" - integrity sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg== - -execa@^5.0.0: - version "5.1.1" - resolved "https://registry.yarnpkg.com/execa/-/execa-5.1.1.tgz#f80ad9cbf4298f7bd1d4c9555c21e93741c411dd" - integrity sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg== - dependencies: - cross-spawn "^7.0.3" - get-stream "^6.0.0" - human-signals "^2.1.0" - is-stream "^2.0.0" - merge-stream "^2.0.0" - npm-run-path "^4.0.1" - onetime "^5.1.2" - signal-exit "^3.0.3" - strip-final-newline "^2.0.0" - -exit@^0.1.2: - version "0.1.2" - resolved "https://registry.yarnpkg.com/exit/-/exit-0.1.2.tgz#0632638f8d877cc82107d30a0fff1a17cba1cd0c" - integrity sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ== - -expect@^29.5.0: - version "29.5.0" - resolved "https://registry.yarnpkg.com/expect/-/expect-29.5.0.tgz#68c0509156cb2a0adb8865d413b137eeaae682f7" - integrity sha512-yM7xqUrCO2JdpFo4XpM82t+PJBFybdqoQuJLDGeDX2ij8NZzqRHyu3Hp188/JX7SWqud+7t4MUdvcgGBICMHZg== - dependencies: - "@jest/expect-utils" "^29.5.0" - jest-get-type "^29.4.3" - jest-matcher-utils "^29.5.0" - jest-message-util "^29.5.0" - jest-util "^29.5.0" - -extend-shallow@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-2.0.1.tgz#51af7d614ad9a9f610ea1bafbb989d6b1c56890f" - integrity sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug== - dependencies: - is-extendable "^0.1.0" - -fast-deep-equal@^3.1.1, fast-deep-equal@^3.1.3: - version "3.1.3" - resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525" - integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q== - -fast-glob@^3.2.11, fast-glob@^3.2.12, fast-glob@^3.2.9: - version "3.2.12" - resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.2.12.tgz#7f39ec99c2e6ab030337142da9e0c18f37afae80" - integrity sha512-DVj4CQIYYow0BlaelwK1pHl5n5cRSJfM60UA0zK891sVInoPri2Ekj7+e1CT3/3qxXenpI+nBBmQAcJPJgaj4w== - dependencies: - "@nodelib/fs.stat" "^2.0.2" - "@nodelib/fs.walk" "^1.2.3" - glob-parent "^5.1.2" - merge2 "^1.3.0" - micromatch "^4.0.4" - -fast-json-stable-stringify@^2.0.0, fast-json-stable-stringify@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633" - integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw== - -fast-levenshtein@^2.0.6: - version "2.0.6" - resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917" - integrity sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw== - -fastq@^1.6.0: - version "1.15.0" - resolved "https://registry.yarnpkg.com/fastq/-/fastq-1.15.0.tgz#d04d07c6a2a68fe4599fea8d2e103a937fae6b3a" - integrity sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw== - dependencies: - reusify "^1.0.4" - -fb-watchman@^2.0.0: - version "2.0.2" - resolved "https://registry.yarnpkg.com/fb-watchman/-/fb-watchman-2.0.2.tgz#e9524ee6b5c77e9e5001af0f85f3adbb8623255c" - integrity sha512-p5161BqbuCaSnB8jIbzQHOlpgsPmK5rJVDfDKO91Axs5NC1uu3HRQm6wt9cd9/+GtQQIO53JdGXXoyDpTAsgYA== - dependencies: - bser "2.1.1" - -file-entry-cache@^6.0.1: - version "6.0.1" - resolved "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-6.0.1.tgz#211b2dd9659cb0394b073e7323ac3c933d522027" - integrity sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg== - dependencies: - flat-cache "^3.0.4" - -filelist@^1.0.1: - version "1.0.4" - resolved "https://registry.yarnpkg.com/filelist/-/filelist-1.0.4.tgz#f78978a1e944775ff9e62e744424f215e58352b5" - integrity sha512-w1cEuf3S+DrLCQL7ET6kz+gmlJdbq9J7yXCSjK/OZCPA+qEN1WyF4ZAf0YYJa4/shHJra2t/d/r8SV4Ji+x+8Q== - dependencies: - minimatch "^5.0.1" - -fill-range@^7.0.1: - version "7.0.1" - resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-7.0.1.tgz#1919a6a7c75fe38b2c7c77e5198535da9acdda40" - integrity sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ== - dependencies: - to-regex-range "^5.0.1" - -finalhandler@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/finalhandler/-/finalhandler-1.2.0.tgz#7d23fe5731b207b4640e4fcd00aec1f9207a7b32" - integrity sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg== - dependencies: - debug "2.6.9" - encodeurl "~1.0.2" - escape-html "~1.0.3" - on-finished "2.4.1" - parseurl "~1.3.3" - statuses "2.0.1" - unpipe "~1.0.0" - -find-up@^4.0.0, find-up@^4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/find-up/-/find-up-4.1.0.tgz#97afe7d6cdc0bc5928584b7c8d7b16e8a9aa5d19" - integrity sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw== - dependencies: - locate-path "^5.0.0" - path-exists "^4.0.0" - -find-up@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/find-up/-/find-up-5.0.0.tgz#4c92819ecb7083561e4f4a240a86be5198f536fc" - integrity sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng== - dependencies: - locate-path "^6.0.0" - path-exists "^4.0.0" - -find-up@^6.3.0: - version "6.3.0" - resolved "https://registry.yarnpkg.com/find-up/-/find-up-6.3.0.tgz#2abab3d3280b2dc7ac10199ef324c4e002c8c790" - integrity sha512-v2ZsoEuVHYy8ZIlYqwPe/39Cy+cFDzp4dXPaxNvkEuouymu+2Jbz0PxpKarJHYJTmv2HWT3O382qY8l4jMWthw== - dependencies: - locate-path "^7.1.0" - path-exists "^5.0.0" - -flat-cache@^3.0.4: - version "3.0.4" - resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-3.0.4.tgz#61b0338302b2fe9f957dcc32fc2a87f1c3048b11" - integrity sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg== - dependencies: - flatted "^3.1.0" - rimraf "^3.0.2" - -flatted@^3.1.0: - version "3.2.7" - resolved "https://registry.yarnpkg.com/flatted/-/flatted-3.2.7.tgz#609f39207cb614b89d0765b477cb2d437fbf9787" - integrity sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ== - -for-each@^0.3.3: - version "0.3.3" - resolved "https://registry.yarnpkg.com/for-each/-/for-each-0.3.3.tgz#69b447e88a0a5d32c3e7084f3f1710034b21376e" - integrity sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw== - dependencies: - is-callable "^1.1.3" - -fresh@0.5.2: - version "0.5.2" - resolved "https://registry.yarnpkg.com/fresh/-/fresh-0.5.2.tgz#3d8cadd90d976569fa835ab1f8e4b23a105605a7" - integrity sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q== - -fs-extra@^11.1.1: - version "11.1.1" - resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-11.1.1.tgz#da69f7c39f3b002378b0954bb6ae7efdc0876e2d" - integrity sha512-MGIE4HOvQCeUCzmlHs0vXpih4ysz4wg9qiSAu6cd42lVwPbTM1TjV7RusoyQqMmk/95gdQZX72u+YW+c3eEpFQ== - dependencies: - graceful-fs "^4.2.0" - jsonfile "^6.0.1" - universalify "^2.0.0" - -fs.realpath@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" - integrity sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw== - -fsevents@^2.3.2, fsevents@~2.3.2: - version "2.3.2" - resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.2.tgz#8a526f78b8fdf4623b709e0b975c52c24c02fd1a" - integrity sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA== - -function-bind@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d" - integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A== - -function.prototype.name@^1.1.5: - version "1.1.5" - resolved "https://registry.yarnpkg.com/function.prototype.name/-/function.prototype.name-1.1.5.tgz#cce0505fe1ffb80503e6f9e46cc64e46a12a9621" - integrity sha512-uN7m/BzVKQnCUF/iW8jYea67v++2u7m5UgENbHRtdDVclOUP+FMPlCNdmk0h/ysGyo2tavMJEDqJAkJdRa1vMA== - dependencies: - call-bind "^1.0.2" - define-properties "^1.1.3" - es-abstract "^1.19.0" - functions-have-names "^1.2.2" - -functions-have-names@^1.2.2: - version "1.2.3" - resolved "https://registry.yarnpkg.com/functions-have-names/-/functions-have-names-1.2.3.tgz#0404fe4ee2ba2f607f0e0ec3c80bae994133b834" - integrity sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ== - -gensync@^1.0.0-beta.2: - version "1.0.0-beta.2" - resolved "https://registry.yarnpkg.com/gensync/-/gensync-1.0.0-beta.2.tgz#32a6ee76c3d7f52d46b2b1ae5d93fea8580a25e0" - integrity sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg== - -get-caller-file@^2.0.5: - version "2.0.5" - resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-2.0.5.tgz#4f94412a82db32f36e3b0b9741f8a97feb031f7e" - integrity sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg== - -get-intrinsic@^1.0.2, get-intrinsic@^1.1.1, get-intrinsic@^1.1.3, get-intrinsic@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/get-intrinsic/-/get-intrinsic-1.2.0.tgz#7ad1dc0535f3a2904bba075772763e5051f6d05f" - integrity sha512-L049y6nFOuom5wGyRc3/gdTLO94dySVKRACj1RmJZBQXlbTMhtNIgkWkUHq+jYmZvKf14EW1EoJnnjbmoHij0Q== - dependencies: - function-bind "^1.1.1" - has "^1.0.3" - has-symbols "^1.0.3" - -get-package-type@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/get-package-type/-/get-package-type-0.1.0.tgz#8de2d803cff44df3bc6c456e6668b36c3926e11a" - integrity sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q== - -get-stream@^6.0.0: - version "6.0.1" - resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-6.0.1.tgz#a262d8eef67aced57c2852ad6167526a43cbf7b7" - integrity sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg== - -get-symbol-description@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/get-symbol-description/-/get-symbol-description-1.0.0.tgz#7fdb81c900101fbd564dd5f1a30af5aadc1e58d6" - integrity sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw== - dependencies: - call-bind "^1.0.2" - get-intrinsic "^1.1.1" - -glob-parent@^5.1.2, glob-parent@~5.1.2: - version "5.1.2" - resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.2.tgz#869832c58034fe68a4093c17dc15e8340d8401c4" - integrity sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow== - dependencies: - is-glob "^4.0.1" - -glob-parent@^6.0.2: - version "6.0.2" - resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-6.0.2.tgz#6d237d99083950c79290f24c7642a3de9a28f9e3" - integrity sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A== - dependencies: - is-glob "^4.0.3" - -glob@^7.1.3, glob@^7.1.4: - version "7.2.3" - resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.3.tgz#b8df0fb802bbfa8e89bd1d938b4e16578ed44f2b" - integrity sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q== - dependencies: - fs.realpath "^1.0.0" - inflight "^1.0.4" - inherits "2" - minimatch "^3.1.1" - once "^1.3.0" - path-is-absolute "^1.0.0" - -globals@^11.1.0: - version "11.12.0" - resolved "https://registry.yarnpkg.com/globals/-/globals-11.12.0.tgz#ab8795338868a0babd8525758018c2a7eb95c42e" - integrity sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA== - -globals@^13.19.0: - version "13.20.0" - resolved "https://registry.yarnpkg.com/globals/-/globals-13.20.0.tgz#ea276a1e508ffd4f1612888f9d1bad1e2717bf82" - integrity sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ== - dependencies: - type-fest "^0.20.2" - -globalthis@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/globalthis/-/globalthis-1.0.3.tgz#5852882a52b80dc301b0660273e1ed082f0b6ccf" - integrity sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA== - dependencies: - define-properties "^1.1.3" - -globby@^11.1.0: - version "11.1.0" - resolved "https://registry.yarnpkg.com/globby/-/globby-11.1.0.tgz#bd4be98bb042f83d796f7e3811991fbe82a0d34b" - integrity sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g== - dependencies: - array-union "^2.1.0" - dir-glob "^3.0.1" - fast-glob "^3.2.9" - ignore "^5.2.0" - merge2 "^1.4.1" - slash "^3.0.0" - -globby@^13.2.1: - version "13.2.1" - resolved "https://registry.yarnpkg.com/globby/-/globby-13.2.1.tgz#986d44187ba6a9fc4aa9b16caf0ab9a04db94ae9" - integrity sha512-DPCBxctI7dN4EeIqjW2KGqgdcUMbrhJ9AzON+PlxCtvppWhubTLD4+a0GFxiym14ZvacUydTPjLPc2DlKz7EIg== - dependencies: - dir-glob "^3.0.1" - fast-glob "^3.2.11" - ignore "^5.2.0" - merge2 "^1.4.1" - slash "^4.0.0" - -gopd@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/gopd/-/gopd-1.0.1.tgz#29ff76de69dac7489b7c0918a5788e56477c332c" - integrity sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA== - dependencies: - get-intrinsic "^1.1.3" - -graceful-fs@^4.1.4, graceful-fs@^4.1.6, graceful-fs@^4.1.9, graceful-fs@^4.2.0, graceful-fs@^4.2.9: - version "4.2.10" - resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.10.tgz#147d3a006da4ca3ce14728c7aefc287c367d7a6c" - integrity sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA== - -graceful-fs@^4.2.11: - version "4.2.11" - resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.11.tgz#4183e4e8bf08bb6e05bbb2f7d2e0c8f712ca40e3" - integrity sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ== - -grapheme-splitter@^1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/grapheme-splitter/-/grapheme-splitter-1.0.4.tgz#9cf3a665c6247479896834af35cf1dbb4400767e" - integrity sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ== - -graphemer@^1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/graphemer/-/graphemer-1.4.0.tgz#fb2f1d55e0e3a1849aeffc90c4fa0dd53a0e66c6" - integrity sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag== - -gray-matter@^4.0.3: - version "4.0.3" - resolved "https://registry.yarnpkg.com/gray-matter/-/gray-matter-4.0.3.tgz#e893c064825de73ea1f5f7d88c7a9f7274288798" - integrity sha512-5v6yZd4JK3eMI3FqqCouswVqwugaA9r4dNZB1wwcmrD02QkV5H0y7XBQW8QwQqEaZY1pM9aqORSORhJRdNK44Q== - dependencies: - js-yaml "^3.13.1" - kind-of "^6.0.2" - section-matter "^1.0.0" - strip-bom-string "^1.0.0" - -hamljs@^0.6.2: - version "0.6.2" - resolved "https://registry.yarnpkg.com/hamljs/-/hamljs-0.6.2.tgz#7b7116cf6dbe7278e42b3f6ef8725a33e177c8e3" - integrity sha512-/chXRp4WpL47I+HX1vCCdSbEXAljEG2FBMmgO7Am0bYsqgnEjreeWzUdX1onXqwZtcfgxbCg5WtEYYvuZ5muBg== - -handlebars@^4.7.7: - version "4.7.7" - resolved "https://registry.yarnpkg.com/handlebars/-/handlebars-4.7.7.tgz#9ce33416aad02dbd6c8fafa8240d5d98004945a1" - integrity sha512-aAcXm5OAfE/8IXkcZvCepKU3VzW1/39Fb5ZuqMtgI/hT8X2YgoMvBY5dLhq/cpOvw7Lk1nK/UF71aLG/ZnVYRA== - dependencies: - minimist "^1.2.5" - neo-async "^2.6.0" - source-map "^0.6.1" - wordwrap "^1.0.0" - optionalDependencies: - uglify-js "^3.1.4" - -hard-rejection@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/hard-rejection/-/hard-rejection-2.1.0.tgz#1c6eda5c1685c63942766d79bb40ae773cecd883" - integrity sha512-VIZB+ibDhx7ObhAe7OVtoEbuP4h/MuOTHJ+J8h/eBXotJYl0fBgR72xDFCKgIh22OJZIOVNxBMWuhAr10r8HdA== - -has-bigints@^1.0.1, has-bigints@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/has-bigints/-/has-bigints-1.0.2.tgz#0871bd3e3d51626f6ca0966668ba35d5602d6eaa" - integrity sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ== - -has-flag@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd" - integrity sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw== - -has-flag@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-4.0.0.tgz#944771fd9c81c81265c4d6941860da06bb59479b" - integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ== - -has-property-descriptors@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz#610708600606d36961ed04c196193b6a607fa861" - integrity sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ== - dependencies: - get-intrinsic "^1.1.1" - -has-proto@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/has-proto/-/has-proto-1.0.1.tgz#1885c1305538958aff469fef37937c22795408e0" - integrity sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg== - -has-symbols@^1.0.2, has-symbols@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.3.tgz#bb7b2c4349251dce87b125f7bdf874aa7c8b39f8" - integrity sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A== - -has-tostringtag@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/has-tostringtag/-/has-tostringtag-1.0.0.tgz#7e133818a7d394734f941e73c3d3f9291e658b25" - integrity sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ== - dependencies: - has-symbols "^1.0.2" - -has@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/has/-/has-1.0.3.tgz#722d7cbfc1f6aa8241f16dd814e011e1f41e8796" - integrity sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw== - dependencies: - function-bind "^1.1.1" - -he@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/he/-/he-1.2.0.tgz#84ae65fa7eafb165fddb61566ae14baf05664f0f" - integrity sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw== - -hosted-git-info@^2.1.4: - version "2.8.9" - resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.8.9.tgz#dffc0bf9a21c02209090f2aa69429e1414daf3f9" - integrity sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw== - -hosted-git-info@^4.0.1: - version "4.1.0" - resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-4.1.0.tgz#827b82867e9ff1c8d0c4d9d53880397d2c86d224" - integrity sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA== - dependencies: - lru-cache "^6.0.0" - -hosted-git-info@^6.0.0: - version "6.1.1" - resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-6.1.1.tgz#629442c7889a69c05de604d52996b74fe6f26d58" - integrity sha512-r0EI+HBMcXadMrugk0GCQ+6BQV39PiWAZVfq7oIckeGiN7sjRGyQxPdft3nQekFTCQbYxLBH+/axZMeH8UX6+w== - dependencies: - lru-cache "^7.5.1" - -html-escaper@^2.0.0: - version "2.0.2" - resolved "https://registry.yarnpkg.com/html-escaper/-/html-escaper-2.0.2.tgz#dfd60027da36a36dfcbe236262c00a5822681453" - integrity sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg== - -html-minifier@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/html-minifier/-/html-minifier-4.0.0.tgz#cca9aad8bce1175e02e17a8c33e46d8988889f56" - integrity sha512-aoGxanpFPLg7MkIl/DDFYtb0iWz7jMFGqFhvEDZga6/4QTjneiD8I/NXL1x5aaoCp7FSIT6h/OhykDdPsbtMig== - dependencies: - camel-case "^3.0.0" - clean-css "^4.2.1" - commander "^2.19.0" - he "^1.2.0" - param-case "^2.1.1" - relateurl "^0.2.7" - uglify-js "^3.5.1" - -htmlparser2@^7.1.1: - version "7.2.0" - resolved "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-7.2.0.tgz#8817cdea38bbc324392a90b1990908e81a65f5a5" - integrity sha512-H7MImA4MS6cw7nbyURtLPO1Tms7C5H602LRETv95z1MxO/7CP7rDVROehUYeYBUYEON94NXXDEPmZuq+hX4sog== - dependencies: - domelementtype "^2.0.1" - domhandler "^4.2.2" - domutils "^2.8.0" - entities "^3.0.1" - -http-equiv-refresh@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/http-equiv-refresh/-/http-equiv-refresh-1.0.0.tgz#8ec538866042be5f3f7afa737d198d94beb1b07b" - integrity sha512-TScO04soylRN9i/QdOdgZyhydXg9z6XdaGzEyOgDKycePeDeTT4KvigjBcI+tgfTlieLWauGORMq5F1eIDa+1w== - -http-errors@2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-2.0.0.tgz#b7774a1486ef73cf7667ac9ae0858c012c57b9d3" - integrity sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ== - dependencies: - depd "2.0.0" - inherits "2.0.4" - setprototypeof "1.2.0" - statuses "2.0.1" - toidentifier "1.0.1" - -human-signals@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/human-signals/-/human-signals-2.1.0.tgz#dc91fcba42e4d06e4abaed33b3e7a3c02f514ea0" - integrity sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw== - -ignore@^5.2.0: - version "5.2.4" - resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.2.4.tgz#a291c0c6178ff1b960befe47fcdec301674a6324" - integrity sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ== - -import-fresh@^3.0.0, import-fresh@^3.2.1: - version "3.3.0" - resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-3.3.0.tgz#37162c25fcb9ebaa2e6e53d5b4d88ce17d9e0c2b" - integrity sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw== - dependencies: - parent-module "^1.0.0" - resolve-from "^4.0.0" - -import-local@^3.0.2: - version "3.1.0" - resolved "https://registry.yarnpkg.com/import-local/-/import-local-3.1.0.tgz#b4479df8a5fd44f6cdce24070675676063c95cb4" - integrity sha512-ASB07uLtnDs1o6EHjKpX34BKYDSqnFerfTOJL2HvMqF70LnxpjkzDB8J44oT9pu4AMPkQwf8jl6szgvNd2tRIg== - dependencies: - pkg-dir "^4.2.0" - resolve-cwd "^3.0.0" - -imurmurhash@^0.1.4: - version "0.1.4" - resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" - integrity sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA== - -indent-string@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-4.0.0.tgz#624f8f4497d619b2d9768531d58f4122854d7251" - integrity sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg== - -indent-string@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-5.0.0.tgz#4fd2980fccaf8622d14c64d694f4cf33c81951a5" - integrity sha512-m6FAo/spmsW2Ab2fU35JTYwtOKa2yAwXSwgjSv1TJzh4Mh7mC3lzAOVLBprb72XsTrgkEIsl7YrFNAiDiRhIGg== - -inflight@^1.0.4: - version "1.0.6" - resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" - integrity sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA== - dependencies: - once "^1.3.0" - wrappy "1" - -inherits@2, inherits@2.0.4: - version "2.0.4" - resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" - integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== - -internal-slot@^1.0.3, internal-slot@^1.0.4: - version "1.0.5" - resolved "https://registry.yarnpkg.com/internal-slot/-/internal-slot-1.0.5.tgz#f2a2ee21f668f8627a4667f309dc0f4fb6674986" - integrity sha512-Y+R5hJrzs52QCG2laLn4udYVnxsfny9CpOhNhUvk/SSSVyF6T27FzRbF0sroPidSu3X8oEAkOn2K804mjpt6UQ== - dependencies: - get-intrinsic "^1.2.0" - has "^1.0.3" - side-channel "^1.0.4" - -is-alphabetical@^1.0.0: - version "1.0.4" - resolved "https://registry.yarnpkg.com/is-alphabetical/-/is-alphabetical-1.0.4.tgz#9e7d6b94916be22153745d184c298cbf986a686d" - integrity sha512-DwzsA04LQ10FHTZuL0/grVDk4rFoVH1pjAToYwBrHSxcrBIGQuXrQMtD5U1b0U2XVgKZCTLLP8u2Qxqhy3l2Vg== - -is-alphanumerical@^1.0.0: - version "1.0.4" - resolved "https://registry.yarnpkg.com/is-alphanumerical/-/is-alphanumerical-1.0.4.tgz#7eb9a2431f855f6b1ef1a78e326df515696c4dbf" - integrity sha512-UzoZUr+XfVz3t3v4KyGEniVL9BDRoQtY7tOyrRybkVNjDFWyo1yhXNGrrBTQxp3ib9BLAWs7k2YKBQsFRkZG9A== - dependencies: - is-alphabetical "^1.0.0" - is-decimal "^1.0.0" - -is-array-buffer@^3.0.1: - version "3.0.2" - resolved "https://registry.yarnpkg.com/is-array-buffer/-/is-array-buffer-3.0.2.tgz#f2653ced8412081638ecb0ebbd0c41c6e0aecbbe" - integrity sha512-y+FyyR/w8vfIRq4eQcM1EYgSTnmHXPqaF+IgzgraytCFq5Xh8lllDVmAZolPJiZttZLeFSINPYMaEJ7/vWUa1w== - dependencies: - call-bind "^1.0.2" - get-intrinsic "^1.2.0" - is-typed-array "^1.1.10" - -is-arrayish@^0.2.1: - version "0.2.1" - resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d" - integrity sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg== - -is-bigint@^1.0.1: - version "1.0.4" - resolved "https://registry.yarnpkg.com/is-bigint/-/is-bigint-1.0.4.tgz#08147a1875bc2b32005d41ccd8291dffc6691df3" - integrity sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg== - dependencies: - has-bigints "^1.0.1" - -is-binary-path@~2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/is-binary-path/-/is-binary-path-2.1.0.tgz#ea1f7f3b80f064236e83470f86c09c254fb45b09" - integrity sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw== - dependencies: - binary-extensions "^2.0.0" - -is-boolean-object@^1.1.0: - version "1.1.2" - resolved "https://registry.yarnpkg.com/is-boolean-object/-/is-boolean-object-1.1.2.tgz#5c6dc200246dd9321ae4b885a114bb1f75f63719" - integrity sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA== - dependencies: - call-bind "^1.0.2" - has-tostringtag "^1.0.0" - -is-builtin-module@^3.2.1: - version "3.2.1" - resolved "https://registry.yarnpkg.com/is-builtin-module/-/is-builtin-module-3.2.1.tgz#f03271717d8654cfcaf07ab0463faa3571581169" - integrity sha512-BSLE3HnV2syZ0FK0iMA/yUGplUeMmNz4AW5fnTunbCIqZi4vG3WjJT9FHMy5D69xmAYBHXQhJdALdpwVxV501A== - dependencies: - builtin-modules "^3.3.0" - -is-callable@^1.1.3, is-callable@^1.1.4, is-callable@^1.2.7: - version "1.2.7" - resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.2.7.tgz#3bc2a85ea742d9e36205dcacdd72ca1fdc51b055" - integrity sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA== - -is-core-module@^2.5.0, is-core-module@^2.8.1, is-core-module@^2.9.0: - version "2.11.0" - resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.11.0.tgz#ad4cb3e3863e814523c96f3f58d26cc570ff0144" - integrity sha512-RRjxlvLDkD1YJwDbroBHMb+cukurkDWNyHx7D3oNB5x9rb5ogcksMC5wHCadcXoo67gVr/+3GFySh3134zi6rw== - dependencies: - has "^1.0.3" - -is-date-object@^1.0.1: - version "1.0.5" - resolved "https://registry.yarnpkg.com/is-date-object/-/is-date-object-1.0.5.tgz#0841d5536e724c25597bf6ea62e1bd38298df31f" - integrity sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ== - dependencies: - has-tostringtag "^1.0.0" - -is-decimal@^1.0.0: - version "1.0.4" - resolved "https://registry.yarnpkg.com/is-decimal/-/is-decimal-1.0.4.tgz#65a3a5958a1c5b63a706e1b333d7cd9f630d3fa5" - integrity sha512-RGdriMmQQvZ2aqaQq3awNA6dCGtKpiDFcOzrTWrDAT2MiWrKQVPmxLGHl7Y2nNu6led0kEyoX0enY0qXYsv9zw== - -is-expression@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/is-expression/-/is-expression-4.0.0.tgz#c33155962abf21d0afd2552514d67d2ec16fd2ab" - integrity sha512-zMIXX63sxzG3XrkHkrAPvm/OVZVSCPNkwMHU8oTX7/U3AL78I0QXCEICXUM13BIa8TYGZ68PiTKfQz3yaTNr4A== - dependencies: - acorn "^7.1.1" - object-assign "^4.1.1" - -is-extendable@^0.1.0: - version "0.1.1" - resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-0.1.1.tgz#62b110e289a471418e3ec36a617d472e301dfc89" - integrity sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw== - -is-extglob@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2" - integrity sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ== - -is-fullwidth-code-point@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz#f116f8064fe90b3f7844a38997c0b75051269f1d" - integrity sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg== - -is-generator-fn@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/is-generator-fn/-/is-generator-fn-2.1.0.tgz#7d140adc389aaf3011a8f2a2a4cfa6faadffb118" - integrity sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ== - -is-glob@^4.0.0, is-glob@^4.0.1, is-glob@^4.0.3, is-glob@~4.0.1: - version "4.0.3" - resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.3.tgz#64f61e42cbbb2eec2071a9dac0b28ba1e65d5084" - integrity sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg== - dependencies: - is-extglob "^2.1.1" - -is-json@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/is-json/-/is-json-2.0.1.tgz#6be166d144828a131d686891b983df62c39491ff" - integrity sha512-6BEnpVn1rcf3ngfmViLM6vjUjGErbdrL4rwlv+u1NO1XO8kqT4YGL8+19Q+Z/bas8tY90BTWMk2+fW1g6hQjbA== - -is-negative-zero@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/is-negative-zero/-/is-negative-zero-2.0.2.tgz#7bf6f03a28003b8b3965de3ac26f664d765f3150" - integrity sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA== - -is-number-object@^1.0.4: - version "1.0.7" - resolved "https://registry.yarnpkg.com/is-number-object/-/is-number-object-1.0.7.tgz#59d50ada4c45251784e9904f5246c742f07a42fc" - integrity sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ== - dependencies: - has-tostringtag "^1.0.0" - -is-number@^7.0.0: - version "7.0.0" - resolved "https://registry.yarnpkg.com/is-number/-/is-number-7.0.0.tgz#7535345b896734d5f80c4d06c50955527a14f12b" - integrity sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng== - -is-path-inside@^3.0.3: - version "3.0.3" - resolved "https://registry.yarnpkg.com/is-path-inside/-/is-path-inside-3.0.3.tgz#d231362e53a07ff2b0e0ea7fed049161ffd16283" - integrity sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ== - -is-plain-obj@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-1.1.0.tgz#71a50c8429dfca773c92a390a4a03b39fcd51d3e" - integrity sha512-yvkRyxmFKEOQ4pNXCmJG5AEQNlXJS5LaONXo5/cLdTZdWvsZ1ioJEonLGAosKlMWE8lwUy/bJzMjcw8az73+Fg== - -is-promise@^2.0.0: - version "2.2.2" - resolved "https://registry.yarnpkg.com/is-promise/-/is-promise-2.2.2.tgz#39ab959ccbf9a774cf079f7b40c7a26f763135f1" - integrity sha512-+lP4/6lKUBfQjZ2pdxThZvLUAafmZb8OAxFb8XXtiQmS35INgr85hdOGoEs124ez1FCnZJt6jau/T+alh58QFQ== - -is-regex@^1.0.3, is-regex@^1.1.4: - version "1.1.4" - resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.1.4.tgz#eef5663cd59fa4c0ae339505323df6854bb15958" - integrity sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg== - dependencies: - call-bind "^1.0.2" - has-tostringtag "^1.0.0" - -is-shared-array-buffer@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz#8f259c573b60b6a32d4058a1a07430c0a7344c79" - integrity sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA== - dependencies: - call-bind "^1.0.2" - -is-stream@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-2.0.1.tgz#fac1e3d53b97ad5a9d0ae9cef2389f5810a5c077" - integrity sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg== - -is-string@^1.0.5, is-string@^1.0.7: - version "1.0.7" - resolved "https://registry.yarnpkg.com/is-string/-/is-string-1.0.7.tgz#0dd12bf2006f255bb58f695110eff7491eebc0fd" - integrity sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg== - dependencies: - has-tostringtag "^1.0.0" - -is-symbol@^1.0.2, is-symbol@^1.0.3: - version "1.0.4" - resolved "https://registry.yarnpkg.com/is-symbol/-/is-symbol-1.0.4.tgz#a6dac93b635b063ca6872236de88910a57af139c" - integrity sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg== - dependencies: - has-symbols "^1.0.2" - -is-typed-array@^1.1.10, is-typed-array@^1.1.9: - version "1.1.10" - resolved "https://registry.yarnpkg.com/is-typed-array/-/is-typed-array-1.1.10.tgz#36a5b5cb4189b575d1a3e4b08536bfb485801e3f" - integrity sha512-PJqgEHiWZvMpaFZ3uTc8kHPM4+4ADTlDniuQL7cU/UDA0Ql7F70yGfHph3cLNe+c9toaigv+DFzTJKhc2CtO6A== - dependencies: - available-typed-arrays "^1.0.5" - call-bind "^1.0.2" - for-each "^0.3.3" - gopd "^1.0.1" - has-tostringtag "^1.0.0" - -is-weakref@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/is-weakref/-/is-weakref-1.0.2.tgz#9529f383a9338205e89765e0392efc2f100f06f2" - integrity sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ== - dependencies: - call-bind "^1.0.2" - -isexe@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" - integrity sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw== - -iso-639-1@^2.1.15: - version "2.1.15" - resolved "https://registry.yarnpkg.com/iso-639-1/-/iso-639-1-2.1.15.tgz#20cf78a4f691aeb802c16f17a6bad7d99271e85d" - integrity sha512-7c7mBznZu2ktfvyT582E2msM+Udc1EjOyhVRE/0ZsjD9LBtWSm23h3PtiRh2a35XoUsTQQjJXaJzuLjXsOdFDg== - -istanbul-lib-coverage@^3.0.0, istanbul-lib-coverage@^3.2.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.0.tgz#189e7909d0a39fa5a3dfad5b03f71947770191d3" - integrity sha512-eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw== - -istanbul-lib-instrument@^5.0.4, istanbul-lib-instrument@^5.1.0: - version "5.2.1" - resolved "https://registry.yarnpkg.com/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.1.tgz#d10c8885c2125574e1c231cacadf955675e1ce3d" - integrity sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg== - dependencies: - "@babel/core" "^7.12.3" - "@babel/parser" "^7.14.7" - "@istanbuljs/schema" "^0.1.2" - istanbul-lib-coverage "^3.2.0" - semver "^6.3.0" - -istanbul-lib-report@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz#7518fe52ea44de372f460a76b5ecda9ffb73d8a6" - integrity sha512-wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw== - dependencies: - istanbul-lib-coverage "^3.0.0" - make-dir "^3.0.0" - supports-color "^7.1.0" - -istanbul-lib-source-maps@^4.0.0: - version "4.0.1" - resolved "https://registry.yarnpkg.com/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz#895f3a709fcfba34c6de5a42939022f3e4358551" - integrity sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw== - dependencies: - debug "^4.1.1" - istanbul-lib-coverage "^3.0.0" - source-map "^0.6.1" - -istanbul-reports@^3.1.3: - version "3.1.5" - resolved "https://registry.yarnpkg.com/istanbul-reports/-/istanbul-reports-3.1.5.tgz#cc9a6ab25cb25659810e4785ed9d9fb742578bae" - integrity sha512-nUsEMa9pBt/NOHqbcbeJEgqIlY/K7rVWUX6Lql2orY5e9roQOthbR3vtY4zzf2orPELg80fnxxk9zUyPlgwD1w== - dependencies: - html-escaper "^2.0.0" - istanbul-lib-report "^3.0.0" - -jake@^10.8.5: - version "10.8.5" - resolved "https://registry.yarnpkg.com/jake/-/jake-10.8.5.tgz#f2183d2c59382cb274226034543b9c03b8164c46" - integrity sha512-sVpxYeuAhWt0OTWITwT98oyV0GsXyMlXCF+3L1SuafBVUIr/uILGRB+NqwkzhgXKvoJpDIpQvqkUALgdmQsQxw== - dependencies: - async "^3.2.3" - chalk "^4.0.2" - filelist "^1.0.1" - minimatch "^3.0.4" - -javascript-natural-sort@0.7.1: - version "0.7.1" - resolved "https://registry.yarnpkg.com/javascript-natural-sort/-/javascript-natural-sort-0.7.1.tgz#f9e2303d4507f6d74355a73664d1440fb5a0ef59" - integrity sha512-nO6jcEfZWQXDhOiBtG2KvKyEptz7RVbpGP4vTD2hLBdmNQSsCiicO2Ioinv6UI4y9ukqnBpy+XZ9H6uLNgJTlw== - -jest-changed-files@^29.5.0: - version "29.5.0" - resolved "https://registry.yarnpkg.com/jest-changed-files/-/jest-changed-files-29.5.0.tgz#e88786dca8bf2aa899ec4af7644e16d9dcf9b23e" - integrity sha512-IFG34IUMUaNBIxjQXF/iu7g6EcdMrGRRxaUSw92I/2g2YC6vCdTltl4nHvt7Ci5nSJwXIkCu8Ka1DKF+X7Z1Ag== - dependencies: - execa "^5.0.0" - p-limit "^3.1.0" - -jest-circus@^29.5.0: - version "29.5.0" - resolved "https://registry.yarnpkg.com/jest-circus/-/jest-circus-29.5.0.tgz#b5926989449e75bff0d59944bae083c9d7fb7317" - integrity sha512-gq/ongqeQKAplVxqJmbeUOJJKkW3dDNPY8PjhJ5G0lBRvu0e3EWGxGy5cI4LAGA7gV2UHCtWBI4EMXK8c9nQKA== - dependencies: - "@jest/environment" "^29.5.0" - "@jest/expect" "^29.5.0" - "@jest/test-result" "^29.5.0" - "@jest/types" "^29.5.0" - "@types/node" "*" - chalk "^4.0.0" - co "^4.6.0" - dedent "^0.7.0" - is-generator-fn "^2.0.0" - jest-each "^29.5.0" - jest-matcher-utils "^29.5.0" - jest-message-util "^29.5.0" - jest-runtime "^29.5.0" - jest-snapshot "^29.5.0" - jest-util "^29.5.0" - p-limit "^3.1.0" - pretty-format "^29.5.0" - pure-rand "^6.0.0" - slash "^3.0.0" - stack-utils "^2.0.3" - -jest-cli@^29.5.0: - version "29.5.0" - resolved "https://registry.yarnpkg.com/jest-cli/-/jest-cli-29.5.0.tgz#b34c20a6d35968f3ee47a7437ff8e53e086b4a67" - integrity sha512-L1KcP1l4HtfwdxXNFCL5bmUbLQiKrakMUriBEcc1Vfz6gx31ORKdreuWvmQVBit+1ss9NNR3yxjwfwzZNdQXJw== - dependencies: - "@jest/core" "^29.5.0" - "@jest/test-result" "^29.5.0" - "@jest/types" "^29.5.0" - chalk "^4.0.0" - exit "^0.1.2" - graceful-fs "^4.2.9" - import-local "^3.0.2" - jest-config "^29.5.0" - jest-util "^29.5.0" - jest-validate "^29.5.0" - prompts "^2.0.1" - yargs "^17.3.1" - -jest-config@^29.5.0: - version "29.5.0" - resolved "https://registry.yarnpkg.com/jest-config/-/jest-config-29.5.0.tgz#3cc972faec8c8aaea9ae158c694541b79f3748da" - integrity sha512-kvDUKBnNJPNBmFFOhDbm59iu1Fii1Q6SxyhXfvylq3UTHbg6o7j/g8k2dZyXWLvfdKB1vAPxNZnMgtKJcmu3kA== - dependencies: - "@babel/core" "^7.11.6" - "@jest/test-sequencer" "^29.5.0" - "@jest/types" "^29.5.0" - babel-jest "^29.5.0" - chalk "^4.0.0" - ci-info "^3.2.0" - deepmerge "^4.2.2" - glob "^7.1.3" - graceful-fs "^4.2.9" - jest-circus "^29.5.0" - jest-environment-node "^29.5.0" - jest-get-type "^29.4.3" - jest-regex-util "^29.4.3" - jest-resolve "^29.5.0" - jest-runner "^29.5.0" - jest-util "^29.5.0" - jest-validate "^29.5.0" - micromatch "^4.0.4" - parse-json "^5.2.0" - pretty-format "^29.5.0" - slash "^3.0.0" - strip-json-comments "^3.1.1" - -jest-diff@^29.5.0: - version "29.5.0" - resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-29.5.0.tgz#e0d83a58eb5451dcc1fa61b1c3ee4e8f5a290d63" - integrity sha512-LtxijLLZBduXnHSniy0WMdaHjmQnt3g5sa16W4p0HqukYTTsyTW3GD1q41TyGl5YFXj/5B2U6dlh5FM1LIMgxw== - dependencies: - chalk "^4.0.0" - diff-sequences "^29.4.3" - jest-get-type "^29.4.3" - pretty-format "^29.5.0" - -jest-docblock@^29.4.3: - version "29.4.3" - resolved "https://registry.yarnpkg.com/jest-docblock/-/jest-docblock-29.4.3.tgz#90505aa89514a1c7dceeac1123df79e414636ea8" - integrity sha512-fzdTftThczeSD9nZ3fzA/4KkHtnmllawWrXO69vtI+L9WjEIuXWs4AmyME7lN5hU7dB0sHhuPfcKofRsUb/2Fg== - dependencies: - detect-newline "^3.0.0" - -jest-each@^29.5.0: - version "29.5.0" - resolved "https://registry.yarnpkg.com/jest-each/-/jest-each-29.5.0.tgz#fc6e7014f83eac68e22b7195598de8554c2e5c06" - integrity sha512-HM5kIJ1BTnVt+DQZ2ALp3rzXEl+g726csObrW/jpEGl+CDSSQpOJJX2KE/vEg8cxcMXdyEPu6U4QX5eruQv5hA== - dependencies: - "@jest/types" "^29.5.0" - chalk "^4.0.0" - jest-get-type "^29.4.3" - jest-util "^29.5.0" - pretty-format "^29.5.0" - -jest-environment-node@^29.5.0: - version "29.5.0" - resolved "https://registry.yarnpkg.com/jest-environment-node/-/jest-environment-node-29.5.0.tgz#f17219d0f0cc0e68e0727c58b792c040e332c967" - integrity sha512-ExxuIK/+yQ+6PRGaHkKewYtg6hto2uGCgvKdb2nfJfKXgZ17DfXjvbZ+jA1Qt9A8EQSfPnt5FKIfnOO3u1h9qw== - dependencies: - "@jest/environment" "^29.5.0" - "@jest/fake-timers" "^29.5.0" - "@jest/types" "^29.5.0" - "@types/node" "*" - jest-mock "^29.5.0" - jest-util "^29.5.0" - -jest-get-type@^29.4.3: - version "29.4.3" - resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-29.4.3.tgz#1ab7a5207c995161100b5187159ca82dd48b3dd5" - integrity sha512-J5Xez4nRRMjk8emnTpWrlkyb9pfRQQanDrvWHhsR1+VUfbwxi30eVcZFlcdGInRibU4G5LwHXpI7IRHU0CY+gg== - -jest-haste-map@^29.5.0: - version "29.5.0" - resolved "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-29.5.0.tgz#69bd67dc9012d6e2723f20a945099e972b2e94de" - integrity sha512-IspOPnnBro8YfVYSw6yDRKh/TiCdRngjxeacCps1cQ9cgVN6+10JUcuJ1EabrgYLOATsIAigxA0rLR9x/YlrSA== - dependencies: - "@jest/types" "^29.5.0" - "@types/graceful-fs" "^4.1.3" - "@types/node" "*" - anymatch "^3.0.3" - fb-watchman "^2.0.0" - graceful-fs "^4.2.9" - jest-regex-util "^29.4.3" - jest-util "^29.5.0" - jest-worker "^29.5.0" - micromatch "^4.0.4" - walker "^1.0.8" - optionalDependencies: - fsevents "^2.3.2" - -jest-leak-detector@^29.5.0: - version "29.5.0" - resolved "https://registry.yarnpkg.com/jest-leak-detector/-/jest-leak-detector-29.5.0.tgz#cf4bdea9615c72bac4a3a7ba7e7930f9c0610c8c" - integrity sha512-u9YdeeVnghBUtpN5mVxjID7KbkKE1QU4f6uUwuxiY0vYRi9BUCLKlPEZfDGR67ofdFmDz9oPAy2G92Ujrntmow== - dependencies: - jest-get-type "^29.4.3" - pretty-format "^29.5.0" - -jest-matcher-utils@^29.5.0: - version "29.5.0" - resolved "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-29.5.0.tgz#d957af7f8c0692c5453666705621ad4abc2c59c5" - integrity sha512-lecRtgm/rjIK0CQ7LPQwzCs2VwW6WAahA55YBuI+xqmhm7LAaxokSB8C97yJeYyT+HvQkH741StzpU41wohhWw== - dependencies: - chalk "^4.0.0" - jest-diff "^29.5.0" - jest-get-type "^29.4.3" - pretty-format "^29.5.0" - -jest-message-util@^29.5.0: - version "29.5.0" - resolved "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-29.5.0.tgz#1f776cac3aca332ab8dd2e3b41625435085c900e" - integrity sha512-Kijeg9Dag6CKtIDA7O21zNTACqD5MD/8HfIV8pdD94vFyFuer52SigdC3IQMhab3vACxXMiFk+yMHNdbqtyTGA== - dependencies: - "@babel/code-frame" "^7.12.13" - "@jest/types" "^29.5.0" - "@types/stack-utils" "^2.0.0" - chalk "^4.0.0" - graceful-fs "^4.2.9" - micromatch "^4.0.4" - pretty-format "^29.5.0" - slash "^3.0.0" - stack-utils "^2.0.3" - -jest-mock@^29.5.0: - version "29.5.0" - resolved "https://registry.yarnpkg.com/jest-mock/-/jest-mock-29.5.0.tgz#26e2172bcc71d8b0195081ff1f146ac7e1518aed" - integrity sha512-GqOzvdWDE4fAV2bWQLQCkujxYWL7RxjCnj71b5VhDAGOevB3qj3Ovg26A5NI84ZpODxyzaozXLOh2NCgkbvyaw== - dependencies: - "@jest/types" "^29.5.0" - "@types/node" "*" - jest-util "^29.5.0" - -jest-pnp-resolver@^1.2.2: - version "1.2.3" - resolved "https://registry.yarnpkg.com/jest-pnp-resolver/-/jest-pnp-resolver-1.2.3.tgz#930b1546164d4ad5937d5540e711d4d38d4cad2e" - integrity sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w== - -jest-regex-util@^29.4.3: - version "29.4.3" - resolved "https://registry.yarnpkg.com/jest-regex-util/-/jest-regex-util-29.4.3.tgz#a42616141e0cae052cfa32c169945d00c0aa0bb8" - integrity sha512-O4FglZaMmWXbGHSQInfXewIsd1LMn9p3ZXB/6r4FOkyhX2/iP/soMG98jGvk/A3HAN78+5VWcBGO0BJAPRh4kg== - -jest-resolve-dependencies@^29.5.0: - version "29.5.0" - resolved "https://registry.yarnpkg.com/jest-resolve-dependencies/-/jest-resolve-dependencies-29.5.0.tgz#f0ea29955996f49788bf70996052aa98e7befee4" - integrity sha512-sjV3GFr0hDJMBpYeUuGduP+YeCRbd7S/ck6IvL3kQ9cpySYKqcqhdLLC2rFwrcL7tz5vYibomBrsFYWkIGGjOg== - dependencies: - jest-regex-util "^29.4.3" - jest-snapshot "^29.5.0" - -jest-resolve@^29.5.0: - version "29.5.0" - resolved "https://registry.yarnpkg.com/jest-resolve/-/jest-resolve-29.5.0.tgz#b053cc95ad1d5f6327f0ac8aae9f98795475ecdc" - integrity sha512-1TzxJ37FQq7J10jPtQjcc+MkCkE3GBpBecsSUWJ0qZNJpmg6m0D9/7II03yJulm3H/fvVjgqLh/k2eYg+ui52w== - dependencies: - chalk "^4.0.0" - graceful-fs "^4.2.9" - jest-haste-map "^29.5.0" - jest-pnp-resolver "^1.2.2" - jest-util "^29.5.0" - jest-validate "^29.5.0" - resolve "^1.20.0" - resolve.exports "^2.0.0" - slash "^3.0.0" - -jest-runner@^29.5.0: - version "29.5.0" - resolved "https://registry.yarnpkg.com/jest-runner/-/jest-runner-29.5.0.tgz#6a57c282eb0ef749778d444c1d758c6a7693b6f8" - integrity sha512-m7b6ypERhFghJsslMLhydaXBiLf7+jXy8FwGRHO3BGV1mcQpPbwiqiKUR2zU2NJuNeMenJmlFZCsIqzJCTeGLQ== - dependencies: - "@jest/console" "^29.5.0" - "@jest/environment" "^29.5.0" - "@jest/test-result" "^29.5.0" - "@jest/transform" "^29.5.0" - "@jest/types" "^29.5.0" - "@types/node" "*" - chalk "^4.0.0" - emittery "^0.13.1" - graceful-fs "^4.2.9" - jest-docblock "^29.4.3" - jest-environment-node "^29.5.0" - jest-haste-map "^29.5.0" - jest-leak-detector "^29.5.0" - jest-message-util "^29.5.0" - jest-resolve "^29.5.0" - jest-runtime "^29.5.0" - jest-util "^29.5.0" - jest-watcher "^29.5.0" - jest-worker "^29.5.0" - p-limit "^3.1.0" - source-map-support "0.5.13" - -jest-runtime@^29.5.0: - version "29.5.0" - resolved "https://registry.yarnpkg.com/jest-runtime/-/jest-runtime-29.5.0.tgz#c83f943ee0c1da7eb91fa181b0811ebd59b03420" - integrity sha512-1Hr6Hh7bAgXQP+pln3homOiEZtCDZFqwmle7Ew2j8OlbkIu6uE3Y/etJQG8MLQs3Zy90xrp2C0BRrtPHG4zryw== - dependencies: - "@jest/environment" "^29.5.0" - "@jest/fake-timers" "^29.5.0" - "@jest/globals" "^29.5.0" - "@jest/source-map" "^29.4.3" - "@jest/test-result" "^29.5.0" - "@jest/transform" "^29.5.0" - "@jest/types" "^29.5.0" - "@types/node" "*" - chalk "^4.0.0" - cjs-module-lexer "^1.0.0" - collect-v8-coverage "^1.0.0" - glob "^7.1.3" - graceful-fs "^4.2.9" - jest-haste-map "^29.5.0" - jest-message-util "^29.5.0" - jest-mock "^29.5.0" - jest-regex-util "^29.4.3" - jest-resolve "^29.5.0" - jest-snapshot "^29.5.0" - jest-util "^29.5.0" - slash "^3.0.0" - strip-bom "^4.0.0" - -jest-snapshot@^29.5.0: - version "29.5.0" - resolved "https://registry.yarnpkg.com/jest-snapshot/-/jest-snapshot-29.5.0.tgz#c9c1ce0331e5b63cd444e2f95a55a73b84b1e8ce" - integrity sha512-x7Wolra5V0tt3wRs3/ts3S6ciSQVypgGQlJpz2rsdQYoUKxMxPNaoHMGJN6qAuPJqS+2iQ1ZUn5kl7HCyls84g== - dependencies: - "@babel/core" "^7.11.6" - "@babel/generator" "^7.7.2" - "@babel/plugin-syntax-jsx" "^7.7.2" - "@babel/plugin-syntax-typescript" "^7.7.2" - "@babel/traverse" "^7.7.2" - "@babel/types" "^7.3.3" - "@jest/expect-utils" "^29.5.0" - "@jest/transform" "^29.5.0" - "@jest/types" "^29.5.0" - "@types/babel__traverse" "^7.0.6" - "@types/prettier" "^2.1.5" - babel-preset-current-node-syntax "^1.0.0" - chalk "^4.0.0" - expect "^29.5.0" - graceful-fs "^4.2.9" - jest-diff "^29.5.0" - jest-get-type "^29.4.3" - jest-matcher-utils "^29.5.0" - jest-message-util "^29.5.0" - jest-util "^29.5.0" - natural-compare "^1.4.0" - pretty-format "^29.5.0" - semver "^7.3.5" - -jest-util@^29.5.0: - version "29.5.0" - resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-29.5.0.tgz#24a4d3d92fc39ce90425311b23c27a6e0ef16b8f" - integrity sha512-RYMgG/MTadOr5t8KdhejfvUU82MxsCu5MF6KuDUHl+NuwzUt+Sm6jJWxTJVrDR1j5M/gJVCPKQEpWXY+yIQ6lQ== - dependencies: - "@jest/types" "^29.5.0" - "@types/node" "*" - chalk "^4.0.0" - ci-info "^3.2.0" - graceful-fs "^4.2.9" - picomatch "^2.2.3" - -jest-validate@^29.5.0: - version "29.5.0" - resolved "https://registry.yarnpkg.com/jest-validate/-/jest-validate-29.5.0.tgz#8e5a8f36178d40e47138dc00866a5f3bd9916ffc" - integrity sha512-pC26etNIi+y3HV8A+tUGr/lph9B18GnzSRAkPaaZJIE1eFdiYm6/CewuiJQ8/RlfHd1u/8Ioi8/sJ+CmbA+zAQ== - dependencies: - "@jest/types" "^29.5.0" - camelcase "^6.2.0" - chalk "^4.0.0" - jest-get-type "^29.4.3" - leven "^3.1.0" - pretty-format "^29.5.0" - -jest-watcher@^29.5.0: - version "29.5.0" - resolved "https://registry.yarnpkg.com/jest-watcher/-/jest-watcher-29.5.0.tgz#cf7f0f949828ba65ddbbb45c743a382a4d911363" - integrity sha512-KmTojKcapuqYrKDpRwfqcQ3zjMlwu27SYext9pt4GlF5FUgB+7XE1mcCnSm6a4uUpFyQIkb6ZhzZvHl+jiBCiA== - dependencies: - "@jest/test-result" "^29.5.0" - "@jest/types" "^29.5.0" - "@types/node" "*" - ansi-escapes "^4.2.1" - chalk "^4.0.0" - emittery "^0.13.1" - jest-util "^29.5.0" - string-length "^4.0.1" - -jest-worker@^29.5.0: - version "29.5.0" - resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-29.5.0.tgz#bdaefb06811bd3384d93f009755014d8acb4615d" - integrity sha512-NcrQnevGoSp4b5kg+akIpthoAFHxPBcb5P6mYPY0fUNT+sSvmtu6jlkEle3anczUKIKEbMxFimk9oTP/tpIPgA== - dependencies: - "@types/node" "*" - jest-util "^29.5.0" - merge-stream "^2.0.0" - supports-color "^8.0.0" - -jest@^29.5.0: - version "29.5.0" - resolved "https://registry.yarnpkg.com/jest/-/jest-29.5.0.tgz#f75157622f5ce7ad53028f2f8888ab53e1f1f24e" - integrity sha512-juMg3he2uru1QoXX078zTa7pO85QyB9xajZc6bU+d9yEGwrKX6+vGmJQ3UdVZsvTEUARIdObzH68QItim6OSSQ== - dependencies: - "@jest/core" "^29.5.0" - "@jest/types" "^29.5.0" - import-local "^3.0.2" - jest-cli "^29.5.0" - -js-stringify@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/js-stringify/-/js-stringify-1.0.2.tgz#1736fddfd9724f28a3682adc6230ae7e4e9679db" - integrity sha512-rtS5ATOo2Q5k1G+DADISilDA6lv79zIiwFd6CcjuIxGKLFm5C+RLImRscVap9k55i+MOZwgliw+NejvkLuGD5g== - -"js-tokens@^3.0.0 || ^4.0.0", js-tokens@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499" - integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ== - -js-yaml@^3.13.1: - version "3.14.1" - resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.14.1.tgz#dae812fdb3825fa306609a8717383c50c36a0537" - integrity sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g== - dependencies: - argparse "^1.0.7" - esprima "^4.0.0" - -js-yaml@^4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-4.1.0.tgz#c1fb65f8f5017901cdd2c951864ba18458a10602" - integrity sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA== - dependencies: - argparse "^2.0.1" - -js2xmlparser@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/js2xmlparser/-/js2xmlparser-4.0.2.tgz#2a1fdf01e90585ef2ae872a01bc169c6a8d5e60a" - integrity sha512-6n4D8gLlLf1n5mNLQPRfViYzu9RATblzPEtm1SthMX1Pjao0r9YI9nw7ZIfRxQMERS87mcswrg+r/OYrPRX6jA== - dependencies: - xmlcreate "^2.0.4" - -jsdoc@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/jsdoc/-/jsdoc-4.0.2.tgz#a1273beba964cf433ddf7a70c23fd02c3c60296e" - integrity sha512-e8cIg2z62InH7azBBi3EsSEqrKx+nUtAS5bBcYTSpZFA+vhNPyhv8PTFZ0WsjOPDj04/dOLlm08EDcQJDqaGQg== - dependencies: - "@babel/parser" "^7.20.15" - "@jsdoc/salty" "^0.2.1" - "@types/markdown-it" "^12.2.3" - bluebird "^3.7.2" - catharsis "^0.9.0" - escape-string-regexp "^2.0.0" - js2xmlparser "^4.0.2" - klaw "^3.0.0" - markdown-it "^12.3.2" - markdown-it-anchor "^8.4.1" - marked "^4.0.10" - mkdirp "^1.0.4" - requizzle "^0.2.3" - strip-json-comments "^3.1.0" - underscore "~1.13.2" - -jsesc@^2.5.1: - version "2.5.2" - resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-2.5.2.tgz#80564d2e483dacf6e8ef209650a67df3f0c283a4" - integrity sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA== - -jsesc@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-3.0.2.tgz#bb8b09a6597ba426425f2e4a07245c3d00b9343e" - integrity sha512-xKqzzWXDttJuOcawBt4KnKHHIf5oQ/Cxax+0PWFG+DFDgHNAdi+TXECADI+RYiFUMmx8792xsMbbgXj4CwnP4g== - -jsesc@~0.5.0: - version "0.5.0" - resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-0.5.0.tgz#e7dee66e35d6fc16f710fe91d5cf69f70f08911d" - integrity sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA== - -json-parse-even-better-errors@^2.3.0: - version "2.3.1" - resolved "https://registry.yarnpkg.com/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz#7c47805a94319928e05777405dc12e1f7a4ee02d" - integrity sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w== - -json-schema-traverse@^0.4.1: - version "0.4.1" - resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz#69f6a87d9513ab8bb8fe63bdb0979c448e684660" - integrity sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg== - -json-schema-traverse@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz#ae7bcb3656ab77a73ba5c49bf654f38e6b6860e2" - integrity sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug== - -json-stable-stringify-without-jsonify@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz#9db7b59496ad3f3cfef30a75142d2d930ad72651" - integrity sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw== - -json5@^2.2.2: - version "2.2.3" - resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.3.tgz#78cd6f1a19bdc12b73db5ad0c61efd66c1e29283" - integrity sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg== - -jsonfile@^6.0.1: - version "6.1.0" - resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-6.1.0.tgz#bc55b2634793c679ec6403094eb13698a6ec0aae" - integrity sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ== - dependencies: - universalify "^2.0.0" - optionalDependencies: - graceful-fs "^4.1.6" - -jstransformer@1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/jstransformer/-/jstransformer-1.0.0.tgz#ed8bf0921e2f3f1ed4d5c1a44f68709ed24722c3" - integrity sha512-C9YK3Rf8q6VAPDCCU9fnqo3mAfOH6vUGnMcP4AQAYIEpWtfGLpwOTmZ+igtdK5y+VvI2n3CyYSzy4Qh34eq24A== - dependencies: - is-promise "^2.0.0" - promise "^7.0.1" - -"jsx-ast-utils@^2.4.1 || ^3.0.0": - version "3.3.3" - resolved "https://registry.yarnpkg.com/jsx-ast-utils/-/jsx-ast-utils-3.3.3.tgz#76b3e6e6cece5c69d49a5792c3d01bd1a0cdc7ea" - integrity sha512-fYQHZTZ8jSfmWZ0iyzfwiU4WDX4HpHbMCZ3gPlWYiCl3BoeOTsqKBqnTVfH2rYT7eP5c3sVbeSPHnnJOaTrWiw== - dependencies: - array-includes "^3.1.5" - object.assign "^4.1.3" - -junk@^1.0.1: - version "1.0.3" - resolved "https://registry.yarnpkg.com/junk/-/junk-1.0.3.tgz#87be63488649cbdca6f53ab39bec9ccd2347f592" - integrity sha512-3KF80UaaSSxo8jVnRYtMKNGFOoVPBdkkVPsw+Ad0y4oxKXPduS6G6iHkrf69yJVff/VAaYXkV42rtZ7daJxU3w== - -kind-of@^6.0.0, kind-of@^6.0.2, kind-of@^6.0.3: - version "6.0.3" - resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-6.0.3.tgz#07c05034a6c349fa06e24fa35aa76db4580ce4dd" - integrity sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw== - -klaw@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/klaw/-/klaw-3.0.0.tgz#b11bec9cf2492f06756d6e809ab73a2910259146" - integrity sha512-0Fo5oir+O9jnXu5EefYbVK+mHMBeEVEy2cmctR1O1NECcCkPRreJKrS6Qt/j3KC2C148Dfo9i3pCmCMsdqGr0g== - dependencies: - graceful-fs "^4.1.9" - -kleur@^3.0.3: - version "3.0.3" - resolved "https://registry.yarnpkg.com/kleur/-/kleur-3.0.3.tgz#a79c9ecc86ee1ce3fa6206d1216c501f147fc07e" - integrity sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w== - -kleur@^4.1.5: - version "4.1.5" - resolved "https://registry.yarnpkg.com/kleur/-/kleur-4.1.5.tgz#95106101795f7050c6c650f350c683febddb1780" - integrity sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ== - -leven@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/leven/-/leven-3.1.0.tgz#77891de834064cccba82ae7842bb6b14a13ed7f2" - integrity sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A== - -levn@^0.4.1: - version "0.4.1" - resolved "https://registry.yarnpkg.com/levn/-/levn-0.4.1.tgz#ae4562c007473b932a6200d403268dd2fffc6ade" - integrity sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ== - dependencies: - prelude-ls "^1.2.1" - type-check "~0.4.0" - -lines-and-columns@^1.1.6: - version "1.2.4" - resolved "https://registry.yarnpkg.com/lines-and-columns/-/lines-and-columns-1.2.4.tgz#eca284f75d2965079309dc0ad9255abb2ebc1632" - integrity sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg== - -linkify-it@^3.0.1: - version "3.0.3" - resolved "https://registry.yarnpkg.com/linkify-it/-/linkify-it-3.0.3.tgz#a98baf44ce45a550efb4d49c769d07524cc2fa2e" - integrity sha512-ynTsyrFSdE5oZ/O9GEf00kPngmOfVwazR5GKDq6EYfhlpFug3J2zybX56a2PRRpc9P+FuSoGNAwjlbDs9jJBPQ== - dependencies: - uc.micro "^1.0.1" - -linkify-it@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/linkify-it/-/linkify-it-4.0.1.tgz#01f1d5e508190d06669982ba31a7d9f56a5751ec" - integrity sha512-C7bfi1UZmoj8+PQx22XyeXCuBlokoyWQL5pWSP+EI6nzRylyThouddufc2c1NDIcP9k5agmN9fLpA7VNJfIiqw== - dependencies: - uc.micro "^1.0.1" - -liquidjs@^10.7.0: - version "10.7.1" - resolved "https://registry.yarnpkg.com/liquidjs/-/liquidjs-10.7.1.tgz#c74b9f2cecedb8f5975eac439d536bd019b7ade2" - integrity sha512-tl9nWBZrrKcC61yfih3lbtSjAn+k7e0HhwydPjQKI4+metLk927HYBfXfbf6yrCcYjnBnLzk8xMjUF83yknAQQ== - dependencies: - commander "^10.0.0" - -list-to-array@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/list-to-array/-/list-to-array-1.1.0.tgz#ca7dff640606433cac75cbe8446acd864b15bf6f" - integrity sha512-+dAZZ2mM+/m+vY9ezfoueVvrgnHIGi5FvgSymbIgJOFwiznWyA59mav95L+Mc6xPtL3s9gm5eNTlNtxJLbNM1g== - -locate-path@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-5.0.0.tgz#1afba396afd676a6d42504d0a67a3a7eb9f62aa0" - integrity sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g== - dependencies: - p-locate "^4.1.0" - -locate-path@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-6.0.0.tgz#55321eb309febbc59c4801d931a72452a681d286" - integrity sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw== - dependencies: - p-locate "^5.0.0" - -locate-path@^7.1.0: - version "7.2.0" - resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-7.2.0.tgz#69cb1779bd90b35ab1e771e1f2f89a202c2a8a8a" - integrity sha512-gvVijfZvn7R+2qyPX8mAuKcFGDf6Nc61GdvGafQsHL0sBIxfKzA+usWn4GFC/bk+QdwPUD4kWFJLhElipq+0VA== - dependencies: - p-locate "^6.0.0" - -lodash-es@^4.17.21: - version "4.17.21" - resolved "https://registry.yarnpkg.com/lodash-es/-/lodash-es-4.17.21.tgz#43e626c46e6591b7750beb2b50117390c609e3ee" - integrity sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw== - -lodash.deburr@^4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/lodash.deburr/-/lodash.deburr-4.1.0.tgz#ddb1bbb3ef07458c0177ba07de14422cb033ff9b" - integrity sha512-m/M1U1f3ddMCs6Hq2tAsYThTBDaAKFDX3dwDo97GEYzamXi9SqUpjWi/Rrj/gf3X2n8ktwgZrlP1z6E3v/IExQ== - -lodash.merge@^4.6.2: - version "4.6.2" - resolved "https://registry.yarnpkg.com/lodash.merge/-/lodash.merge-4.6.2.tgz#558aa53b43b661e1925a0afdfa36a9a1085fe57a" - integrity sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ== - -lodash@^4.17.15, lodash@^4.17.21: - version "4.17.21" - resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c" - integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg== - -loose-envify@^1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.4.0.tgz#71ee51fa7be4caec1a63839f7e682d8132d30caf" - integrity sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q== - dependencies: - js-tokens "^3.0.0 || ^4.0.0" - -lower-case@^1.1.1: - version "1.1.4" - resolved "https://registry.yarnpkg.com/lower-case/-/lower-case-1.1.4.tgz#9a2cabd1b9e8e0ae993a4bf7d5875c39c42e8eac" - integrity sha512-2Fgx1Ycm599x+WGpIYwJOvsjmXFzTSc34IwDWALRA/8AopUKAVPwfJ+h5+f85BCp0PWmmJcWzEpxOpoXycMpdA== - -lru-cache@^5.1.1: - version "5.1.1" - resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-5.1.1.tgz#1da27e6710271947695daf6848e847f01d84b920" - integrity sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w== - dependencies: - yallist "^3.0.2" - -lru-cache@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-6.0.0.tgz#6d6fe6570ebd96aaf90fcad1dafa3b2566db3a94" - integrity sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA== - dependencies: - yallist "^4.0.0" - -lru-cache@^7.5.1: - version "7.18.3" - resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-7.18.3.tgz#f793896e0fd0e954a59dfdd82f0773808df6aa89" - integrity sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA== - -luxon@^3.3.0: - version "3.3.0" - resolved "https://registry.yarnpkg.com/luxon/-/luxon-3.3.0.tgz#d73ab5b5d2b49a461c47cedbc7e73309b4805b48" - integrity sha512-An0UCfG/rSiqtAIiBPO0Y9/zAnHUZxAMiCpTd5h2smgsj7GGmcenvrvww2cqNA8/4A5ZrD1gJpHN2mIHZQF+Mg== - -make-dir@^3.0.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-3.1.0.tgz#415e967046b3a7f1d185277d84aa58203726a13f" - integrity sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw== - dependencies: - semver "^6.0.0" - -makeerror@1.0.12: - version "1.0.12" - resolved "https://registry.yarnpkg.com/makeerror/-/makeerror-1.0.12.tgz#3e5dd2079a82e812e983cc6610c4a2cb0eaa801a" - integrity sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg== - dependencies: - tmpl "1.0.5" - -map-obj@^4.3.0: - version "4.3.0" - resolved "https://registry.yarnpkg.com/map-obj/-/map-obj-4.3.0.tgz#9304f906e93faae70880da102a9f1df0ea8bb05a" - integrity sha512-hdN1wVrZbb29eBGiGjJbeP8JbKjq1urkHJ/LIP/NY48MZ1QVXUsQBV1G1zvYFHn1XE06cwjBsOI2K3Ulnj1YXQ== - -markdown-it-anchor@^8.4.1: - version "8.6.7" - resolved "https://registry.yarnpkg.com/markdown-it-anchor/-/markdown-it-anchor-8.6.7.tgz#ee6926daf3ad1ed5e4e3968b1740eef1c6399634" - integrity sha512-FlCHFwNnutLgVTflOYHPW2pPcl2AACqVzExlkGQNsi4CJgqOHN7YTgDd4LuhgN1BFO3TS0vLAruV1Td6dwWPJA== - -markdown-it@^12.3.2: - version "12.3.2" - resolved "https://registry.yarnpkg.com/markdown-it/-/markdown-it-12.3.2.tgz#bf92ac92283fe983fe4de8ff8abfb5ad72cd0c90" - integrity sha512-TchMembfxfNVpHkbtriWltGWc+m3xszaRD0CZup7GFFhzIgQqxIfn3eGj1yZpfuflzPvfkt611B2Q/Bsk1YnGg== - dependencies: - argparse "^2.0.1" - entities "~2.1.0" - linkify-it "^3.0.1" - mdurl "^1.0.1" - uc.micro "^1.0.5" - -markdown-it@^13.0.1: - version "13.0.1" - resolved "https://registry.yarnpkg.com/markdown-it/-/markdown-it-13.0.1.tgz#c6ecc431cacf1a5da531423fc6a42807814af430" - integrity sha512-lTlxriVoy2criHP0JKRhO2VDG9c2ypWCsT237eDiLqi09rmbKoUetyGHq2uOIRoRS//kfoJckS0eUzzkDR+k2Q== - dependencies: - argparse "^2.0.1" - entities "~3.0.1" - linkify-it "^4.0.1" - mdurl "^1.0.1" - uc.micro "^1.0.5" - -marked@^4.0.10: - version "4.2.12" - resolved "https://registry.yarnpkg.com/marked/-/marked-4.2.12.tgz#d69a64e21d71b06250da995dcd065c11083bebb5" - integrity sha512-yr8hSKa3Fv4D3jdZmtMMPghgVt6TWbk86WQaWhDloQjRSQhMMYCAro7jP7VDJrjjdV8pxVxMssXS8B8Y5DZ5aw== - -maximatch@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/maximatch/-/maximatch-0.1.0.tgz#86cd8d6b04c9f307c05a6b9419906d0360fb13a2" - integrity sha512-9ORVtDUFk4u/NFfo0vG/ND/z7UQCVZBL539YW0+U1I7H1BkZwizcPx5foFv7LCPcBnm2U6RjFnQOsIvN4/Vm2A== - dependencies: - array-differ "^1.0.0" - array-union "^1.0.1" - arrify "^1.0.0" - minimatch "^3.0.0" - -mdurl@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/mdurl/-/mdurl-1.0.1.tgz#fe85b2ec75a59037f2adfec100fd6c601761152e" - integrity sha512-/sKlQJCBYVY9Ers9hqzKou4H6V5UWc/M59TH2dvkt+84itfnq7uFOMLpOiOS4ujvHP4etln18fmIxA5R5fll0g== - -memorystream@^0.3.1: - version "0.3.1" - resolved "https://registry.yarnpkg.com/memorystream/-/memorystream-0.3.1.tgz#86d7090b30ce455d63fbae12dda51a47ddcaf9b2" - integrity sha512-S3UwM3yj5mtUSEfP41UZmt/0SCoVYUcU1rkXv+BQ5Ig8ndL4sPoJNBUJERafdPb5jjHJGuMgytgKvKIf58XNBw== - -meow@^12.0.1: - version "12.0.1" - resolved "https://registry.yarnpkg.com/meow/-/meow-12.0.1.tgz#b158fee6e319da4c54835f4c6c98f193978199fd" - integrity sha512-/QOqMALNoKQcJAOOdIXjNLtfcCdLXbMFyB1fOOPdm6RzfBTlsuodOCTBDjVbeUSmgDQb8UI2oONqYGtq1PKKKA== - dependencies: - "@types/minimist" "^1.2.2" - camelcase-keys "^8.0.2" - decamelize "^6.0.0" - decamelize-keys "^2.0.1" - hard-rejection "^2.1.0" - minimist-options "4.1.0" - normalize-package-data "^5.0.0" - read-pkg-up "^9.1.0" - redent "^4.0.0" - trim-newlines "^5.0.0" - type-fest "^3.9.0" - yargs-parser "^21.1.1" - -merge-stream@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/merge-stream/-/merge-stream-2.0.0.tgz#52823629a14dd00c9770fb6ad47dc6310f2c1f60" - integrity sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w== - -merge2@^1.3.0, merge2@^1.4.1: - version "1.4.1" - resolved "https://registry.yarnpkg.com/merge2/-/merge2-1.4.1.tgz#4368892f885e907455a6fd7dc55c0c9d404990ae" - integrity sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg== - -micromatch@^4.0.4, micromatch@^4.0.5: - version "4.0.5" - resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.5.tgz#bc8999a7cbbf77cdc89f132f6e467051b49090c6" - integrity sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA== - dependencies: - braces "^3.0.2" - picomatch "^2.3.1" - -mime@1.6.0: - version "1.6.0" - resolved "https://registry.yarnpkg.com/mime/-/mime-1.6.0.tgz#32cd9e5c64553bd58d19a568af452acff04981b1" - integrity sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg== - -mime@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/mime/-/mime-3.0.0.tgz#b374550dca3a0c18443b0c950a6a58f1931cf7a7" - integrity sha512-jSCU7/VB1loIWBZe14aEYHU/+1UMEHoaO7qxCOVJOw9GgH72VAWppxNcjU+x9a2k3GSIBXNKxXQFqRvvZ7vr3A== - -mimic-fn@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-2.1.0.tgz#7ed2c2ccccaf84d3ffcb7a69b57711fc2083401b" - integrity sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg== - -min-indent@^1.0.0, min-indent@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/min-indent/-/min-indent-1.0.1.tgz#a63f681673b30571fbe8bc25686ae746eefa9869" - integrity sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg== - -minimatch@^3.0.0, minimatch@^3.0.4, minimatch@^3.0.5, minimatch@^3.1.1, minimatch@^3.1.2: - version "3.1.2" - resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.1.2.tgz#19cd194bfd3e428f049a70817c038d89ab4be35b" - integrity sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw== - dependencies: - brace-expansion "^1.1.7" - -minimatch@^5.0.1: - version "5.1.6" - resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-5.1.6.tgz#1cfcb8cf5522ea69952cd2af95ae09477f122a96" - integrity sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g== - dependencies: - brace-expansion "^2.0.1" - -minimist-options@4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/minimist-options/-/minimist-options-4.1.0.tgz#c0655713c53a8a2ebd77ffa247d342c40f010619" - integrity sha512-Q4r8ghd80yhO/0j1O3B2BjweX3fiHg9cdOwjJd2J76Q135c+NDxGCqdYKQ1SKBuFfgWbAUzBfvYjPUEeNgqN1A== - dependencies: - arrify "^1.0.1" - is-plain-obj "^1.1.0" - kind-of "^6.0.3" - -minimist@^1.2.5, minimist@^1.2.6, minimist@^1.2.8: - version "1.2.8" - resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.8.tgz#c1a464e7693302e082a075cee0c057741ac4772c" - integrity sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA== - -minipass@^3.1.1: - version "3.3.6" - resolved "https://registry.yarnpkg.com/minipass/-/minipass-3.3.6.tgz#7bba384db3a1520d18c9c0e5251c3444e95dd94a" - integrity sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw== - dependencies: - yallist "^4.0.0" - -mkdirp@^0.5.1: - version "0.5.6" - resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.6.tgz#7def03d2432dcae4ba1d611445c48396062255f6" - integrity sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw== - dependencies: - minimist "^1.2.6" - -mkdirp@^1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-1.0.4.tgz#3eb5ed62622756d79a5f0e2a221dfebad75c2f7e" - integrity sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw== - -moo@^0.5.2: - version "0.5.2" - resolved "https://registry.yarnpkg.com/moo/-/moo-0.5.2.tgz#f9fe82473bc7c184b0d32e2215d3f6e67278733c" - integrity sha512-iSAJLHYKnX41mKcJKjqvnAN9sf0LMDTXDEvFv+ffuRR9a1MIuXLjMNL6EsnDHSkKLTWNqQQ5uo61P4EbU4NU+Q== - -morphdom@^2.7.0: - version "2.7.0" - resolved "https://registry.yarnpkg.com/morphdom/-/morphdom-2.7.0.tgz#9ef0c4bc15ac8725df398d127c6984f62e7f89e8" - integrity sha512-8L8DwbdjjWwM/aNqj7BSoSn4G7SQLNiDcxCnMWbf506jojR6lNQ5YOmQqXEIE8u3C492UlkN4d0hQwz97+M1oQ== - -ms@2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8" - integrity sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A== - -ms@2.1.2: - version "2.1.2" - resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009" - integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== - -ms@2.1.3: - version "2.1.3" - resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2" - integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA== - -multimatch@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/multimatch/-/multimatch-5.0.0.tgz#932b800963cea7a31a033328fa1e0c3a1874dbe6" - integrity sha512-ypMKuglUrZUD99Tk2bUQ+xNQj43lPEfAeX2o9cTteAmShXy2VHDJpuwu1o0xqoKCt9jLVAvwyFKdLTPXKAfJyA== - dependencies: - "@types/minimatch" "^3.0.3" - array-differ "^3.0.0" - array-union "^2.1.0" - arrify "^2.0.1" - minimatch "^3.0.4" - -mustache@^4.2.0: - version "4.2.0" - resolved "https://registry.yarnpkg.com/mustache/-/mustache-4.2.0.tgz#e5892324d60a12ec9c2a73359edca52972bf6f64" - integrity sha512-71ippSywq5Yb7/tVYyGbkBggbU8H3u5Rz56fH60jGFgr8uHwxs+aSKeqmluIVzM0m0kB7xQjKS6qPfd0b2ZoqQ== - -nanoid@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-4.0.2.tgz#140b3c5003959adbebf521c170f282c5e7f9fb9e" - integrity sha512-7ZtY5KTCNheRGfEFxnedV5zFiORN1+Y1N6zvPTnHQd8ENUvfaDBeuJDZb2bN/oXwXxu3qkTXDzy57W5vAmDTBw== - -natural-compare-lite@^1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/natural-compare-lite/-/natural-compare-lite-1.4.0.tgz#17b09581988979fddafe0201e931ba933c96cbb4" - integrity sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g== - -natural-compare@^1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" - integrity sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw== - -neo-async@^2.6.0: - version "2.6.2" - resolved "https://registry.yarnpkg.com/neo-async/-/neo-async-2.6.2.tgz#b4aafb93e3aeb2d8174ca53cf163ab7d7308305f" - integrity sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw== - -no-case@^2.2.0: - version "2.3.2" - resolved "https://registry.yarnpkg.com/no-case/-/no-case-2.3.2.tgz#60b813396be39b3f1288a4c1ed5d1e7d28b464ac" - integrity sha512-rmTZ9kz+f3rCvK2TD1Ue/oZlns7OGoIWP4fc3llxxRXlOkHKoWPPWJOfFYpITabSow43QJbRIoHQXtt10VldyQ== - dependencies: - lower-case "^1.1.1" - -node-int64@^0.4.0: - version "0.4.0" - resolved "https://registry.yarnpkg.com/node-int64/-/node-int64-0.4.0.tgz#87a9065cdb355d3182d8f94ce11188b825c68a3b" - integrity sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw== - -node-releases@^2.0.8: - version "2.0.10" - resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.10.tgz#c311ebae3b6a148c89b1813fd7c4d3c024ef537f" - integrity sha512-5GFldHPXVG/YZmFzJvKK2zDSzPKhEp0+ZR5SVaoSag9fsL5YgHbUHDfnG5494ISANDcK4KwPXAx2xqVEydmd7w== - -normalize-package-data@^2.5.0: - version "2.5.0" - resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.5.0.tgz#e66db1838b200c1dfc233225d12cb36520e234a8" - integrity sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA== - dependencies: - hosted-git-info "^2.1.4" - resolve "^1.10.0" - semver "2 || 3 || 4 || 5" - validate-npm-package-license "^3.0.1" - -normalize-package-data@^3.0.2: - version "3.0.3" - resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-3.0.3.tgz#dbcc3e2da59509a0983422884cd172eefdfa525e" - integrity sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA== - dependencies: - hosted-git-info "^4.0.1" - is-core-module "^2.5.0" - semver "^7.3.4" - validate-npm-package-license "^3.0.1" - -normalize-package-data@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-5.0.0.tgz#abcb8d7e724c40d88462b84982f7cbf6859b4588" - integrity sha512-h9iPVIfrVZ9wVYQnxFgtw1ugSvGEMOlyPWWtm8BMJhnwyEL/FLbYbTY3V3PpjI/BUK67n9PEWDu6eHzu1fB15Q== - dependencies: - hosted-git-info "^6.0.0" - is-core-module "^2.8.1" - semver "^7.3.5" - validate-npm-package-license "^3.0.4" - -normalize-path@^3.0.0, normalize-path@~3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65" - integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA== - -npm-run-path@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-4.0.1.tgz#b7ecd1e5ed53da8e37a55e1c2269e0b97ed748ea" - integrity sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw== - dependencies: - path-key "^3.0.0" - -nunjucks@^3.2.3: - version "3.2.4" - resolved "https://registry.yarnpkg.com/nunjucks/-/nunjucks-3.2.4.tgz#f0878eef528ce7b0aa35d67cc6898635fd74649e" - integrity sha512-26XRV6BhkgK0VOxfbU5cQI+ICFUtMLixv1noZn1tGU38kQH5A5nmmbk/O45xdyBhD1esk47nKrY0mvQpZIhRjQ== - dependencies: - a-sync-waterfall "^1.0.0" - asap "^2.0.3" - commander "^5.1.0" - -object-assign@^4.1.1: - version "4.1.1" - resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" - integrity sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg== - -object-inspect@^1.12.2, object-inspect@^1.9.0: - version "1.12.3" - resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.12.3.tgz#ba62dffd67ee256c8c086dfae69e016cd1f198b9" - integrity sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g== - -object-keys@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.1.1.tgz#1c47f272df277f3b1daf061677d9c82e2322c60e" - integrity sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA== - -object.assign@^4.1.3, object.assign@^4.1.4: - version "4.1.4" - resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.4.tgz#9673c7c7c351ab8c4d0b516f4343ebf4dfb7799f" - integrity sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ== - dependencies: - call-bind "^1.0.2" - define-properties "^1.1.4" - has-symbols "^1.0.3" - object-keys "^1.1.1" - -object.entries@^1.1.6: - version "1.1.6" - resolved "https://registry.yarnpkg.com/object.entries/-/object.entries-1.1.6.tgz#9737d0e5b8291edd340a3e3264bb8a3b00d5fa23" - integrity sha512-leTPzo4Zvg3pmbQ3rDK69Rl8GQvIqMWubrkxONG9/ojtFE2rD9fjMKfSI5BxW3osRH1m6VdzmqK8oAY9aT4x5w== - dependencies: - call-bind "^1.0.2" - define-properties "^1.1.4" - es-abstract "^1.20.4" - -object.fromentries@^2.0.6: - version "2.0.6" - resolved "https://registry.yarnpkg.com/object.fromentries/-/object.fromentries-2.0.6.tgz#cdb04da08c539cffa912dcd368b886e0904bfa73" - integrity sha512-VciD13dswC4j1Xt5394WR4MzmAQmlgN72phd/riNp9vtD7tp4QQWJ0R4wvclXcafgcYK8veHRed2W6XeGBvcfg== - dependencies: - call-bind "^1.0.2" - define-properties "^1.1.4" - es-abstract "^1.20.4" - -object.hasown@^1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/object.hasown/-/object.hasown-1.1.2.tgz#f919e21fad4eb38a57bc6345b3afd496515c3f92" - integrity sha512-B5UIT3J1W+WuWIU55h0mjlwaqxiE5vYENJXIXZ4VFe05pNYrkKuK0U/6aFcb0pKywYJh7IhfoqUfKVmrJJHZHw== - dependencies: - define-properties "^1.1.4" - es-abstract "^1.20.4" - -object.values@^1.1.6: - version "1.1.6" - resolved "https://registry.yarnpkg.com/object.values/-/object.values-1.1.6.tgz#4abbaa71eba47d63589d402856f908243eea9b1d" - integrity sha512-FVVTkD1vENCsAcwNs9k6jea2uHC/X0+JcjG8YA60FN5CMaJmG95wT9jek/xX9nornqGRrBkKtzuAu2wuHpKqvw== - dependencies: - call-bind "^1.0.2" - define-properties "^1.1.4" - es-abstract "^1.20.4" - -on-finished@2.4.1: - version "2.4.1" - resolved "https://registry.yarnpkg.com/on-finished/-/on-finished-2.4.1.tgz#58c8c44116e54845ad57f14ab10b03533184ac3f" - integrity sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg== - dependencies: - ee-first "1.1.1" - -once@^1.3.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" - integrity sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w== - dependencies: - wrappy "1" - -onetime@^5.1.2: - version "5.1.2" - resolved "https://registry.yarnpkg.com/onetime/-/onetime-5.1.2.tgz#d0e96ebb56b07476df1dd9c4806e5237985ca45e" - integrity sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg== - dependencies: - mimic-fn "^2.1.0" - -optionator@^0.9.3: - version "0.9.3" - resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.9.3.tgz#007397d44ed1872fdc6ed31360190f81814e2c64" - integrity sha512-JjCoypp+jKn1ttEFExxhetCKeJt9zhAgAve5FXHixTvFDW/5aEktX9bufBKLRRMdU7bNtpLfcGu94B3cdEJgjg== - dependencies: - "@aashutoshrathi/word-wrap" "^1.2.3" - deep-is "^0.1.3" - fast-levenshtein "^2.0.6" - levn "^0.4.1" - prelude-ls "^1.2.1" - type-check "^0.4.0" - -p-limit@^2.2.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-2.3.0.tgz#3dd33c647a214fdfffd835933eb086da0dc21db1" - integrity sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w== - dependencies: - p-try "^2.0.0" - -p-limit@^3.0.2, p-limit@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-3.1.0.tgz#e1daccbe78d0d1388ca18c64fea38e3e57e3706b" - integrity sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ== - dependencies: - yocto-queue "^0.1.0" - -p-limit@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-4.0.0.tgz#914af6544ed32bfa54670b061cafcbd04984b644" - integrity sha512-5b0R4txpzjPWVw/cXXUResoD4hb6U/x9BH08L7nw+GN1sezDzPdxeRvpc9c433fZhBan/wusjbCsqwqm4EIBIQ== - dependencies: - yocto-queue "^1.0.0" - -p-locate@^4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-4.1.0.tgz#a3428bb7088b3a60292f66919278b7c297ad4f07" - integrity sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A== - dependencies: - p-limit "^2.2.0" - -p-locate@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-5.0.0.tgz#83c8315c6785005e3bd021839411c9e110e6d834" - integrity sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw== - dependencies: - p-limit "^3.0.2" - -p-locate@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-6.0.0.tgz#3da9a49d4934b901089dca3302fa65dc5a05c04f" - integrity sha512-wPrq66Llhl7/4AGC6I+cqxT07LhXvWL08LNXz1fENOw0Ap4sRZZ/gZpTTJ5jpurzzzfS2W/Ge9BY3LgLjCShcw== - dependencies: - p-limit "^4.0.0" - -p-try@^2.0.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/p-try/-/p-try-2.2.0.tgz#cb2868540e313d61de58fafbe35ce9004d5540e6" - integrity sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ== - -param-case@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/param-case/-/param-case-2.1.1.tgz#df94fd8cf6531ecf75e6bef9a0858fbc72be2247" - integrity sha512-eQE845L6ot89sk2N8liD8HAuH4ca6Vvr7VWAWwt7+kvvG5aBcPmmphQ68JsEG2qa9n1TykS2DLeMt363AAH8/w== - dependencies: - no-case "^2.2.0" - -parent-module@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/parent-module/-/parent-module-1.0.1.tgz#691d2709e78c79fae3a156622452d00762caaaa2" - integrity sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g== - dependencies: - callsites "^3.0.0" - -parse-json@^5.0.0, parse-json@^5.2.0: - version "5.2.0" - resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-5.2.0.tgz#c76fc66dee54231c962b22bcc8a72cf2f99753cd" - integrity sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg== - dependencies: - "@babel/code-frame" "^7.0.0" - error-ex "^1.3.1" - json-parse-even-better-errors "^2.3.0" - lines-and-columns "^1.1.6" - -parse-srcset@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/parse-srcset/-/parse-srcset-1.0.2.tgz#f2bd221f6cc970a938d88556abc589caaaa2bde1" - integrity sha512-/2qh0lav6CmI15FzA3i/2Bzk2zCgQhGMkvhOhKNcBVQ1ldgpbfiNTVslmooUmWJcADi1f1kIeynbDRVzNlfR6Q== - -parseurl@~1.3.3: - version "1.3.3" - resolved "https://registry.yarnpkg.com/parseurl/-/parseurl-1.3.3.tgz#9da19e7bee8d12dff0513ed5b76957793bc2e8d4" - integrity sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ== - -path-exists@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-4.0.0.tgz#513bdbe2d3b95d7762e8c1137efa195c6c61b5b3" - integrity sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w== - -path-exists@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-5.0.0.tgz#a6aad9489200b21fab31e49cf09277e5116fb9e7" - integrity sha512-RjhtfwJOxzcFmNOi6ltcbcu4Iu+FL3zEj83dk4kAS+fVpTxXLO1b38RvJgT/0QwvV/L3aY9TAnyv0EOqW4GoMQ== - -path-is-absolute@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" - integrity sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg== - -path-key@^3.0.0, path-key@^3.1.0: - version "3.1.1" - resolved "https://registry.yarnpkg.com/path-key/-/path-key-3.1.1.tgz#581f6ade658cbba65a0d3380de7753295054f375" - integrity sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q== - -path-parse@^1.0.7: - version "1.0.7" - resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.7.tgz#fbc114b60ca42b30d9daf5858e4bd68bbedb6735" - integrity sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw== - -path-to-regexp@^6.2.1: - version "6.2.1" - resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-6.2.1.tgz#d54934d6798eb9e5ef14e7af7962c945906918e5" - integrity sha512-JLyh7xT1kizaEvcaXOQwOc2/Yhw6KZOvPf1S8401UyLk86CU79LN3vl7ztXGm/pZ+YjoyAJ4rxmHwbkBXJX+yw== - -path-type@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/path-type/-/path-type-4.0.0.tgz#84ed01c0a7ba380afe09d90a8c180dcd9d03043b" - integrity sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw== - -picocolors@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.0.0.tgz#cb5bdc74ff3f51892236eaf79d68bc44564ab81c" - integrity sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ== - -picomatch@^2.0.4, picomatch@^2.2.1, picomatch@^2.2.3, picomatch@^2.3.1: - version "2.3.1" - resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.3.1.tgz#3ba3833733646d9d3e4995946c1365a67fb07a42" - integrity sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA== - -pidtree@^0.5.0: - version "0.5.0" - resolved "https://registry.yarnpkg.com/pidtree/-/pidtree-0.5.0.tgz#ad5fbc1de78b8a5f99d6fbdd4f6e4eee21d1aca1" - integrity sha512-9nxspIM7OpZuhBxPg73Zvyq7j1QMPMPsGKTqRc2XOaFQauDvoNz9fM1Wdkjmeo7l9GXOZiRs97sPkuayl39wjA== - -pify@^2.3.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c" - integrity sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog== - -pirates@^4.0.4: - version "4.0.5" - resolved "https://registry.yarnpkg.com/pirates/-/pirates-4.0.5.tgz#feec352ea5c3268fb23a37c702ab1699f35a5f3b" - integrity sha512-8V9+HQPupnaXMA23c5hvl69zXvTwTzyAYasnkb0Tts4XvO4CliqONMOnvlq26rkhLC3nWDFBJf73LU1e1VZLaQ== - -pkg-dir@^4.2.0: - version "4.2.0" - resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-4.2.0.tgz#f099133df7ede422e81d1d8448270eeb3e4261f3" - integrity sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ== - dependencies: - find-up "^4.0.0" - -please-upgrade-node@^3.2.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/please-upgrade-node/-/please-upgrade-node-3.2.0.tgz#aeddd3f994c933e4ad98b99d9a556efa0e2fe942" - integrity sha512-gQR3WpIgNIKwBMVLkpMUeR3e1/E1y42bqDQZfql+kDeXd8COYfM8PQA4X6y7a8u9Ua9FHmsrrmirW2vHs45hWg== - dependencies: - semver-compare "^1.0.0" - -pluralize@^8.0.0: - version "8.0.0" - resolved "https://registry.yarnpkg.com/pluralize/-/pluralize-8.0.0.tgz#1a6fa16a38d12a1901e0320fa017051c539ce3b1" - integrity sha512-Nc3IT5yHzflTfbjgqWcCPpo7DaKy4FnpB0l/zCAW0Tc7jxAiuqSxHasntB3D7887LSrA93kDJ9IXovxJYxyLCA== - -posthtml-parser@^0.11.0: - version "0.11.0" - resolved "https://registry.yarnpkg.com/posthtml-parser/-/posthtml-parser-0.11.0.tgz#25d1c7bf811ea83559bc4c21c189a29747a24b7a" - integrity sha512-QecJtfLekJbWVo/dMAA+OSwY79wpRmbqS5TeXvXSX+f0c6pW4/SE6inzZ2qkU7oAMCPqIDkZDvd/bQsSFUnKyw== - dependencies: - htmlparser2 "^7.1.1" - -posthtml-render@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/posthtml-render/-/posthtml-render-3.0.0.tgz#97be44931496f495b4f07b99e903cc70ad6a3205" - integrity sha512-z+16RoxK3fUPgwaIgH9NGnK1HKY9XIDpydky5eQGgAFVXTCSezalv9U2jQuNV+Z9qV1fDWNzldcw4eK0SSbqKA== - dependencies: - is-json "^2.0.1" - -posthtml-urls@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/posthtml-urls/-/posthtml-urls-1.0.0.tgz#3102d7b9e5c2fbdf19c8ec7ca825600dad3b9164" - integrity sha512-CMJ0L009sGQVUuYM/g6WJdscsq6ooAwhUuF6CDlYPMLxKp2rmCYVebEU+wZGxnQstGJhZPMvXsRhtqekILd5/w== - dependencies: - http-equiv-refresh "^1.0.0" - list-to-array "^1.1.0" - parse-srcset "^1.0.2" - promise-each "^2.2.0" - -posthtml@^0.16.6: - version "0.16.6" - resolved "https://registry.yarnpkg.com/posthtml/-/posthtml-0.16.6.tgz#e2fc407f67a64d2fa3567afe770409ffdadafe59" - integrity sha512-JcEmHlyLK/o0uGAlj65vgg+7LIms0xKXe60lcDOTU7oVX/3LuEuLwrQpW3VJ7de5TaFKiW4kWkaIpJL42FEgxQ== - dependencies: - posthtml-parser "^0.11.0" - posthtml-render "^3.0.0" - -prelude-ls@^1.2.1: - version "1.2.1" - resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.2.1.tgz#debc6489d7a6e6b0e7611888cec880337d316396" - integrity sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g== - -prettier-config-qiwi@^2.1.2: - version "2.1.2" - resolved "https://registry.yarnpkg.com/prettier-config-qiwi/-/prettier-config-qiwi-2.1.2.tgz#ca9526f45ae6003552df94c61a2db4bc71e42e2d" - integrity sha512-u2SVc5IQi22J0qOKtAPEDzRngA8UKGT4b+r3aw+9gNdNXce6yddklucF/XGFSvVA6Za3bATJ4UKsVHHu5BNxzg== - dependencies: - "@trivago/prettier-plugin-sort-imports" "^4.1.1" - -prettier@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/prettier/-/prettier-3.0.0.tgz#e7b19f691245a21d618c68bc54dc06122f6105ae" - integrity sha512-zBf5eHpwHOGPC47h0zrPyNn+eAEIdEzfywMoYn2XPi0P44Zp0tSq64rq0xAREh4auw2cJZHo9QUob+NqCQky4g== - -pretty-format@^29.5.0: - version "29.5.0" - resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-29.5.0.tgz#283134e74f70e2e3e7229336de0e4fce94ccde5a" - integrity sha512-V2mGkI31qdttvTFX7Mt4efOqHXqJWMu4/r66Xh3Z3BwZaPfPJgp6/gbwoujRpPUtfEF6AUUWx3Jim3GCw5g/Qw== - dependencies: - "@jest/schemas" "^29.4.3" - ansi-styles "^5.0.0" - react-is "^18.0.0" - -promise-each@^2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/promise-each/-/promise-each-2.2.0.tgz#3353174eff2694481037e04e01f77aa0fb6d1b60" - integrity sha512-67roqt1k3QDA41DZ8xi0V+rF3GoaMiX7QilbXu0vXimut+9RcKBNZ/t60xCRgcsihmNUsEjh48xLfNqOrKblUg== - dependencies: - any-promise "^0.1.0" - -promise@^7.0.1: - version "7.3.1" - resolved "https://registry.yarnpkg.com/promise/-/promise-7.3.1.tgz#064b72602b18f90f29192b8b1bc418ffd1ebd3bf" - integrity sha512-nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg== - dependencies: - asap "~2.0.3" - -prompts@^2.0.1: - version "2.4.2" - resolved "https://registry.yarnpkg.com/prompts/-/prompts-2.4.2.tgz#7b57e73b3a48029ad10ebd44f74b01722a4cb069" - integrity sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q== - dependencies: - kleur "^3.0.3" - sisteransi "^1.0.5" - -prop-types@^15.8.1: - version "15.8.1" - resolved "https://registry.yarnpkg.com/prop-types/-/prop-types-15.8.1.tgz#67d87bf1a694f48435cf332c24af10214a3140b5" - integrity sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg== - dependencies: - loose-envify "^1.4.0" - object-assign "^4.1.1" - react-is "^16.13.1" - -prr@~1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/prr/-/prr-1.0.1.tgz#d3fc114ba06995a45ec6893f484ceb1d78f5f476" - integrity sha512-yPw4Sng1gWghHQWj0B3ZggWUm4qVbPwPFcRG8KyxiU7J2OHFSoEHKS+EZ3fv5l1t9CyCiop6l/ZYeWbrgoQejw== - -pug-attrs@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/pug-attrs/-/pug-attrs-3.0.0.tgz#b10451e0348165e31fad1cc23ebddd9dc7347c41" - integrity sha512-azINV9dUtzPMFQktvTXciNAfAuVh/L/JCl0vtPCwvOA21uZrC08K/UnmrL+SXGEVc1FwzjW62+xw5S/uaLj6cA== - dependencies: - constantinople "^4.0.1" - js-stringify "^1.0.2" - pug-runtime "^3.0.0" - -pug-code-gen@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/pug-code-gen/-/pug-code-gen-3.0.2.tgz#ad190f4943133bf186b60b80de483100e132e2ce" - integrity sha512-nJMhW16MbiGRiyR4miDTQMRWDgKplnHyeLvioEJYbk1RsPI3FuA3saEP8uwnTb2nTJEKBU90NFVWJBk4OU5qyg== - dependencies: - constantinople "^4.0.1" - doctypes "^1.1.0" - js-stringify "^1.0.2" - pug-attrs "^3.0.0" - pug-error "^2.0.0" - pug-runtime "^3.0.0" - void-elements "^3.1.0" - with "^7.0.0" - -pug-error@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/pug-error/-/pug-error-2.0.0.tgz#5c62173cb09c34de2a2ce04f17b8adfec74d8ca5" - integrity sha512-sjiUsi9M4RAGHktC1drQfCr5C5eriu24Lfbt4s+7SykztEOwVZtbFk1RRq0tzLxcMxMYTBR+zMQaG07J/btayQ== - -pug-filters@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/pug-filters/-/pug-filters-4.0.0.tgz#d3e49af5ba8472e9b7a66d980e707ce9d2cc9b5e" - integrity sha512-yeNFtq5Yxmfz0f9z2rMXGw/8/4i1cCFecw/Q7+D0V2DdtII5UvqE12VaZ2AY7ri6o5RNXiweGH79OCq+2RQU4A== - dependencies: - constantinople "^4.0.1" - jstransformer "1.0.0" - pug-error "^2.0.0" - pug-walk "^2.0.0" - resolve "^1.15.1" - -pug-lexer@^5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/pug-lexer/-/pug-lexer-5.0.1.tgz#ae44628c5bef9b190b665683b288ca9024b8b0d5" - integrity sha512-0I6C62+keXlZPZkOJeVam9aBLVP2EnbeDw3An+k0/QlqdwH6rv8284nko14Na7c0TtqtogfWXcRoFE4O4Ff20w== - dependencies: - character-parser "^2.2.0" - is-expression "^4.0.0" - pug-error "^2.0.0" - -pug-linker@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/pug-linker/-/pug-linker-4.0.0.tgz#12cbc0594fc5a3e06b9fc59e6f93c146962a7708" - integrity sha512-gjD1yzp0yxbQqnzBAdlhbgoJL5qIFJw78juN1NpTLt/mfPJ5VgC4BvkoD3G23qKzJtIIXBbcCt6FioLSFLOHdw== - dependencies: - pug-error "^2.0.0" - pug-walk "^2.0.0" - -pug-load@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/pug-load/-/pug-load-3.0.0.tgz#9fd9cda52202b08adb11d25681fb9f34bd41b662" - integrity sha512-OCjTEnhLWZBvS4zni/WUMjH2YSUosnsmjGBB1An7CsKQarYSWQ0GCVyd4eQPMFJqZ8w9xgs01QdiZXKVjk92EQ== - dependencies: - object-assign "^4.1.1" - pug-walk "^2.0.0" - -pug-parser@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/pug-parser/-/pug-parser-6.0.0.tgz#a8fdc035863a95b2c1dc5ebf4ecf80b4e76a1260" - integrity sha512-ukiYM/9cH6Cml+AOl5kETtM9NR3WulyVP2y4HOU45DyMim1IeP/OOiyEWRr6qk5I5klpsBnbuHpwKmTx6WURnw== - dependencies: - pug-error "^2.0.0" - token-stream "1.0.0" - -pug-runtime@^3.0.0, pug-runtime@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/pug-runtime/-/pug-runtime-3.0.1.tgz#f636976204723f35a8c5f6fad6acda2a191b83d7" - integrity sha512-L50zbvrQ35TkpHwv0G6aLSuueDRwc/97XdY8kL3tOT0FmhgG7UypU3VztfV/LATAvmUfYi4wNxSajhSAeNN+Kg== - -pug-strip-comments@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/pug-strip-comments/-/pug-strip-comments-2.0.0.tgz#f94b07fd6b495523330f490a7f554b4ff876303e" - integrity sha512-zo8DsDpH7eTkPHCXFeAk1xZXJbyoTfdPlNR0bK7rpOMuhBYb0f5qUVCO1xlsitYd3w5FQTK7zpNVKb3rZoUrrQ== - dependencies: - pug-error "^2.0.0" - -pug-walk@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/pug-walk/-/pug-walk-2.0.0.tgz#417aabc29232bb4499b5b5069a2b2d2a24d5f5fe" - integrity sha512-yYELe9Q5q9IQhuvqsZNwA5hfPkMJ8u92bQLIMcsMxf/VADjNtEYptU+inlufAFYcWdHlwNfZOEnOOQrZrcyJCQ== - -pug@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/pug/-/pug-3.0.2.tgz#f35c7107343454e43bc27ae0ff76c731b78ea535" - integrity sha512-bp0I/hiK1D1vChHh6EfDxtndHji55XP/ZJKwsRqrz6lRia6ZC2OZbdAymlxdVFwd1L70ebrVJw4/eZ79skrIaw== - dependencies: - pug-code-gen "^3.0.2" - pug-filters "^4.0.0" - pug-lexer "^5.0.1" - pug-linker "^4.0.0" - pug-load "^3.0.0" - pug-parser "^6.0.0" - pug-runtime "^3.0.1" - pug-strip-comments "^2.0.0" - -punycode@^2.1.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.3.0.tgz#f67fa67c94da8f4d0cfff981aee4118064199b8f" - integrity sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA== - -pure-rand@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/pure-rand/-/pure-rand-6.0.0.tgz#701996ceefa253507923a0e864c17ab421c04a7c" - integrity sha512-rLSBxJjP+4DQOgcJAx6RZHT2he2pkhQdSnofG5VWyVl6GRq/K02ISOuOLcsMOrtKDIJb8JN2zm3FFzWNbezdPw== - -queue-microtask@^1.2.2: - version "1.2.3" - resolved "https://registry.yarnpkg.com/queue-microtask/-/queue-microtask-1.2.3.tgz#4929228bbc724dfac43e0efb058caf7b6cfb6243" - integrity sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A== - -quick-lru@^6.1.1: - version "6.1.1" - resolved "https://registry.yarnpkg.com/quick-lru/-/quick-lru-6.1.1.tgz#f8e5bf9010376c126c80c1a62827a526c0e60adf" - integrity sha512-S27GBT+F0NTRiehtbrgaSE1idUAJ5bX8dPAQTdylEyNlrdcH5X4Lz7Edz3DYzecbsCluD5zO8ZNEe04z3D3u6Q== - -range-parser@~1.2.1: - version "1.2.1" - resolved "https://registry.yarnpkg.com/range-parser/-/range-parser-1.2.1.tgz#3cf37023d199e1c24d1a55b84800c2f3e6468031" - integrity sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg== - -react-is@^16.13.1: - version "16.13.1" - resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.13.1.tgz#789729a4dc36de2999dc156dd6c1d9c18cea56a4" - integrity sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ== - -react-is@^18.0.0: - version "18.2.0" - resolved "https://registry.yarnpkg.com/react-is/-/react-is-18.2.0.tgz#199431eeaaa2e09f86427efbb4f1473edb47609b" - integrity sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w== - -read-pkg-up@^7.0.1: - version "7.0.1" - resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-7.0.1.tgz#f3a6135758459733ae2b95638056e1854e7ef507" - integrity sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg== - dependencies: - find-up "^4.1.0" - read-pkg "^5.2.0" - type-fest "^0.8.1" - -read-pkg-up@^9.1.0: - version "9.1.0" - resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-9.1.0.tgz#38ca48e0bc6c6b260464b14aad9bcd4e5b1fbdc3" - integrity sha512-vaMRR1AC1nrd5CQM0PhlRsO5oc2AAigqr7cCrZ/MW/Rsaflz4RlgzkpL4qoU/z1F6wrbd85iFv1OQj/y5RdGvg== - dependencies: - find-up "^6.3.0" - read-pkg "^7.1.0" - type-fest "^2.5.0" - -read-pkg@^5.2.0: - version "5.2.0" - resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-5.2.0.tgz#7bf295438ca5a33e56cd30e053b34ee7250c93cc" - integrity sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg== - dependencies: - "@types/normalize-package-data" "^2.4.0" - normalize-package-data "^2.5.0" - parse-json "^5.0.0" - type-fest "^0.6.0" - -read-pkg@^7.1.0: - version "7.1.0" - resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-7.1.0.tgz#438b4caed1ad656ba359b3e00fd094f3c427a43e" - integrity sha512-5iOehe+WF75IccPc30bWTbpdDQLOCc3Uu8bi3Dte3Eueij81yx1Mrufk8qBx/YAbR4uL1FdUr+7BKXDwEtisXg== - dependencies: - "@types/normalize-package-data" "^2.4.1" - normalize-package-data "^3.0.2" - parse-json "^5.2.0" - type-fest "^2.0.0" - -readdirp@~3.6.0: - version "3.6.0" - resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-3.6.0.tgz#74a370bd857116e245b29cc97340cd431a02a6c7" - integrity sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA== - dependencies: - picomatch "^2.2.1" - -recursive-copy@^2.0.14: - version "2.0.14" - resolved "https://registry.yarnpkg.com/recursive-copy/-/recursive-copy-2.0.14.tgz#6358af3b5f8da89562f000db44720c4daa94b6d7" - integrity sha512-K8WNY8f8naTpfbA+RaXmkaQuD1IeW9EgNEfyGxSqqTQukpVtoOKros9jUqbpEsSw59YOmpd8nCBgtqJZy5nvog== - dependencies: - errno "^0.1.2" - graceful-fs "^4.1.4" - junk "^1.0.1" - maximatch "^0.1.0" - mkdirp "^0.5.1" - pify "^2.3.0" - promise "^7.0.1" - rimraf "^2.7.1" - slash "^1.0.0" - -redent@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/redent/-/redent-4.0.0.tgz#0c0ba7caabb24257ab3bb7a4fd95dd1d5c5681f9" - integrity sha512-tYkDkVVtYkSVhuQ4zBgfvciymHaeuel+zFKXShfDnFP5SyVEP7qo70Rf1jTOTCx3vGNAbnEi/xFkcfQVMIBWag== - dependencies: - indent-string "^5.0.0" - strip-indent "^4.0.0" - -regexp-tree@^0.1.24, regexp-tree@~0.1.1: - version "0.1.24" - resolved "https://registry.yarnpkg.com/regexp-tree/-/regexp-tree-0.1.24.tgz#3d6fa238450a4d66e5bc9c4c14bb720e2196829d" - integrity sha512-s2aEVuLhvnVJW6s/iPgEGK6R+/xngd2jNQ+xy4bXNDKxZKJH6jpPHY6kVeVv1IeLCHgswRj+Kl3ELaDjG6V1iw== - -regexp.prototype.flags@^1.4.3: - version "1.4.3" - resolved "https://registry.yarnpkg.com/regexp.prototype.flags/-/regexp.prototype.flags-1.4.3.tgz#87cab30f80f66660181a3bb7bf5981a872b367ac" - integrity sha512-fjggEOO3slI6Wvgjwflkc4NFRCTZAu5CnNfBd5qOMYhWdn67nJBBu34/TkD++eeFmd8C9r9jfXJ27+nSiRkSUA== - dependencies: - call-bind "^1.0.2" - define-properties "^1.1.3" - functions-have-names "^1.2.2" - -regjsparser@^0.10.0: - version "0.10.0" - resolved "https://registry.yarnpkg.com/regjsparser/-/regjsparser-0.10.0.tgz#b1ed26051736b436f22fdec1c8f72635f9f44892" - integrity sha512-qx+xQGZVsy55CH0a1hiVwHmqjLryfh7wQyF5HO07XJ9f7dQMY/gPQHhlyDkIzJKC+x2fUCpCcUODUUUFrm7SHA== - dependencies: - jsesc "~0.5.0" - -relateurl@^0.2.7: - version "0.2.7" - resolved "https://registry.yarnpkg.com/relateurl/-/relateurl-0.2.7.tgz#54dbf377e51440aca90a4cd274600d3ff2d888a9" - integrity sha512-G08Dxvm4iDN3MLM0EsP62EDV9IuhXPR6blNz6Utcp7zyV3tr4HVNINt6MpaRWbxoOHT3Q7YN2P+jaHX8vUbgog== - -require-directory@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42" - integrity sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q== - -require-from-string@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/require-from-string/-/require-from-string-2.0.2.tgz#89a7fdd938261267318eafe14f9c32e598c36909" - integrity sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw== - -requizzle@^0.2.3: - version "0.2.4" - resolved "https://registry.yarnpkg.com/requizzle/-/requizzle-0.2.4.tgz#319eb658b28c370f0c20f968fa8ceab98c13d27c" - integrity sha512-JRrFk1D4OQ4SqovXOgdav+K8EAhSB/LJZqCz8tbX0KObcdeM15Ss59ozWMBWmmINMagCwmqn4ZNryUGpBsl6Jw== - dependencies: - lodash "^4.17.21" - -resolve-cwd@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/resolve-cwd/-/resolve-cwd-3.0.0.tgz#0f0075f1bb2544766cf73ba6a6e2adfebcb13f2d" - integrity sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg== - dependencies: - resolve-from "^5.0.0" - -resolve-from@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-4.0.0.tgz#4abcd852ad32dd7baabfe9b40e00a36db5f392e6" - integrity sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g== - -resolve-from@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-5.0.0.tgz#c35225843df8f776df21c57557bc087e9dfdfc69" - integrity sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw== - -resolve.exports@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/resolve.exports/-/resolve.exports-2.0.1.tgz#cee884cd4e3f355660e501fa3276b27d7ffe5a20" - integrity sha512-OEJWVeimw8mgQuj3HfkNl4KqRevH7lzeQNaWRPfx0PPse7Jk6ozcsG4FKVgtzDsC1KUF+YlTHh17NcgHOPykLw== - -resolve@^1.10.0, resolve@^1.15.1, resolve@^1.20.0: - version "1.22.1" - resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.1.tgz#27cb2ebb53f91abb49470a928bba7558066ac177" - integrity sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw== - dependencies: - is-core-module "^2.9.0" - path-parse "^1.0.7" - supports-preserve-symlinks-flag "^1.0.0" - -resolve@^2.0.0-next.4: - version "2.0.0-next.4" - resolved "https://registry.yarnpkg.com/resolve/-/resolve-2.0.0-next.4.tgz#3d37a113d6429f496ec4752d2a2e58efb1fd4660" - integrity sha512-iMDbmAWtfU+MHpxt/I5iWI7cY6YVEZUQ3MBgPQ++XD1PELuJHIl82xBmObyP2KyQmkNB2dsqF7seoQQiAn5yDQ== - dependencies: - is-core-module "^2.9.0" - path-parse "^1.0.7" - supports-preserve-symlinks-flag "^1.0.0" - -reusify@^1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/reusify/-/reusify-1.0.4.tgz#90da382b1e126efc02146e90845a88db12925d76" - integrity sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw== - -rimraf@^2.7.1: - version "2.7.1" - resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.7.1.tgz#35797f13a7fdadc566142c29d4f07ccad483e3ec" - integrity sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w== - dependencies: - glob "^7.1.3" - -rimraf@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-3.0.2.tgz#f1a5402ba6220ad52cc1282bac1ae3aa49fd061a" - integrity sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA== - dependencies: - glob "^7.1.3" - -run-parallel@^1.1.9: - version "1.2.0" - resolved "https://registry.yarnpkg.com/run-parallel/-/run-parallel-1.2.0.tgz#66d1368da7bdf921eb9d95bd1a9229e7f21a43ee" - integrity sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA== - dependencies: - queue-microtask "^1.2.2" - -safe-regex-test@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/safe-regex-test/-/safe-regex-test-1.0.0.tgz#793b874d524eb3640d1873aad03596db2d4f2295" - integrity sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA== - dependencies: - call-bind "^1.0.2" - get-intrinsic "^1.1.3" - is-regex "^1.1.4" - -safe-regex@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/safe-regex/-/safe-regex-2.1.1.tgz#f7128f00d056e2fe5c11e81a1324dd974aadced2" - integrity sha512-rx+x8AMzKb5Q5lQ95Zoi6ZbJqwCLkqi3XuJXp5P3rT8OEc6sZCJG5AE5dU3lsgRr/F4Bs31jSlVN+j5KrsGu9A== - dependencies: - regexp-tree "~0.1.1" - -section-matter@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/section-matter/-/section-matter-1.0.0.tgz#e9041953506780ec01d59f292a19c7b850b84167" - integrity sha512-vfD3pmTzGpufjScBh50YHKzEu2lxBWhVEHsNGoEXmCmn2hKGfeNLYMzCJpe8cD7gqX7TJluOVpBkAequ6dgMmA== - dependencies: - extend-shallow "^2.0.1" - kind-of "^6.0.0" - -semver-compare@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/semver-compare/-/semver-compare-1.0.0.tgz#0dee216a1c941ab37e9efb1788f6afc5ff5537fc" - integrity sha512-YM3/ITh2MJ5MtzaM429anh+x2jiLVjqILF4m4oyQB18W7Ggea7BfqdH/wGMK7dDiMghv/6WG7znWMwUDzJiXow== - -"semver@2 || 3 || 4 || 5": - version "5.7.2" - resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.2.tgz#48d55db737c3287cd4835e17fa13feace1c41ef8" - integrity sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g== - -semver@^6.0.0, semver@^6.3.0: - version "6.3.1" - resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.1.tgz#556d2ef8689146e46dcea4bfdd095f3434dffcb4" - integrity sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA== - -semver@^7.3.4, semver@^7.3.5, semver@^7.3.7, semver@^7.3.8: - version "7.5.4" - resolved "https://registry.yarnpkg.com/semver/-/semver-7.5.4.tgz#483986ec4ed38e1c6c48c34894a9182dbff68a6e" - integrity sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA== - dependencies: - lru-cache "^6.0.0" - -send@0.18.0: - version "0.18.0" - resolved "https://registry.yarnpkg.com/send/-/send-0.18.0.tgz#670167cc654b05f5aa4a767f9113bb371bc706be" - integrity sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg== - dependencies: - debug "2.6.9" - depd "2.0.0" - destroy "1.2.0" - encodeurl "~1.0.2" - escape-html "~1.0.3" - etag "~1.8.1" - fresh "0.5.2" - http-errors "2.0.0" - mime "1.6.0" - ms "2.1.3" - on-finished "2.4.1" - range-parser "~1.2.1" - statuses "2.0.1" - -serve-static@^1.15.0: - version "1.15.0" - resolved "https://registry.yarnpkg.com/serve-static/-/serve-static-1.15.0.tgz#faaef08cffe0a1a62f60cad0c4e513cff0ac9540" - integrity sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g== - dependencies: - encodeurl "~1.0.2" - escape-html "~1.0.3" - parseurl "~1.3.3" - send "0.18.0" - -setprototypeof@1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.2.0.tgz#66c9a24a73f9fc28cbe66b09fed3d33dcaf1b424" - integrity sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw== - -shebang-command@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-2.0.0.tgz#ccd0af4f8835fbdc265b82461aaf0c36663f34ea" - integrity sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA== - dependencies: - shebang-regex "^3.0.0" - -shebang-regex@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-3.0.0.tgz#ae16f1644d873ecad843b0307b143362d4c42172" - integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A== - -shell-quote@^1.7.2: - version "1.8.0" - resolved "https://registry.yarnpkg.com/shell-quote/-/shell-quote-1.8.0.tgz#20d078d0eaf71d54f43bd2ba14a1b5b9bfa5c8ba" - integrity sha512-QHsz8GgQIGKlRi24yFc6a6lN69Idnx634w49ay6+jA5yFh7a1UY+4Rp6HPx/L/1zcEDPEij8cIsiqR6bQsE5VQ== - -side-channel@^1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/side-channel/-/side-channel-1.0.4.tgz#efce5c8fdc104ee751b25c58d4290011fa5ea2cf" - integrity sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw== - dependencies: - call-bind "^1.0.0" - get-intrinsic "^1.0.2" - object-inspect "^1.9.0" - -signal-exit@^3.0.3, signal-exit@^3.0.7: - version "3.0.7" - resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.7.tgz#a9a1767f8af84155114eaabd73f99273c8f59ad9" - integrity sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ== - -sisteransi@^1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/sisteransi/-/sisteransi-1.0.5.tgz#134d681297756437cc05ca01370d3a7a571075ed" - integrity sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg== - -slash@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/slash/-/slash-1.0.0.tgz#c41f2f6c39fc16d1cd17ad4b5d896114ae470d55" - integrity sha512-3TYDR7xWt4dIqV2JauJr+EJeW356RXijHeUlO+8djJ+uBXPn8/2dpzBc8yQhh583sVvc9CvFAeQVgijsH+PNNg== - -slash@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/slash/-/slash-3.0.0.tgz#6539be870c165adbd5240220dbe361f1bc4d4634" - integrity sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q== - -slash@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/slash/-/slash-4.0.0.tgz#2422372176c4c6c5addb5e2ada885af984b396a7" - integrity sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew== - -slugify@^1.6.6: - version "1.6.6" - resolved "https://registry.yarnpkg.com/slugify/-/slugify-1.6.6.tgz#2d4ac0eacb47add6af9e04d3be79319cbcc7924b" - integrity sha512-h+z7HKHYXj6wJU+AnS/+IH8Uh9fdcX1Lrhg1/VMdf9PwoBQXFcXiAdsy2tSK0P6gKwJLXp02r90ahUCqHk9rrw== - -source-map-support@0.5.13: - version "0.5.13" - resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.13.tgz#31b24a9c2e73c2de85066c0feb7d44767ed52932" - integrity sha512-SHSKFHadjVA5oR4PPqhtAVdcBWwRYVd6g6cAXnIbRiIwc2EhPrTuKUBdSLvlEKyIP3GCf89fltvcZiP9MMFA1w== - dependencies: - buffer-from "^1.0.0" - source-map "^0.6.0" - -source-map-support@~0.5.20: - version "0.5.21" - resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.21.tgz#04fe7c7f9e1ed2d662233c28cb2b35b9f63f6e4f" - integrity sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w== - dependencies: - buffer-from "^1.0.0" - source-map "^0.6.0" - -source-map@^0.5.0: - version "0.5.7" - resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc" - integrity sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ== - -source-map@^0.6.0, source-map@^0.6.1, source-map@~0.6.0: - version "0.6.1" - resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263" - integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g== - -spdx-correct@^3.0.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/spdx-correct/-/spdx-correct-3.2.0.tgz#4f5ab0668f0059e34f9c00dce331784a12de4e9c" - integrity sha512-kN9dJbvnySHULIluDHy32WHRUu3Og7B9sbY7tsFLctQkIqnMh3hErYgdMjTYuqmcXX+lK5T1lnUt3G7zNswmZA== - dependencies: - spdx-expression-parse "^3.0.0" - spdx-license-ids "^3.0.0" - -spdx-exceptions@^2.1.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz#3f28ce1a77a00372683eade4a433183527a2163d" - integrity sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A== - -spdx-expression-parse@^3.0.0: - version "3.0.1" - resolved "https://registry.yarnpkg.com/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz#cf70f50482eefdc98e3ce0a6833e4a53ceeba679" - integrity sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q== - dependencies: - spdx-exceptions "^2.1.0" - spdx-license-ids "^3.0.0" - -spdx-license-ids@^3.0.0: - version "3.0.13" - resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.13.tgz#7189a474c46f8d47c7b0da4b987bb45e908bd2d5" - integrity sha512-XkD+zwiqXHikFZm4AX/7JSCXA98U5Db4AFd5XUg/+9UNtnH75+Z9KxtpYiJZx36mUDVOwH83pl7yvCer6ewM3w== - -sprintf-js@~1.0.2: - version "1.0.3" - resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" - integrity sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g== - -ssri@^8.0.1: - version "8.0.1" - resolved "https://registry.yarnpkg.com/ssri/-/ssri-8.0.1.tgz#638e4e439e2ffbd2cd289776d5ca457c4f51a2af" - integrity sha512-97qShzy1AiyxvPNIkLWoGua7xoQzzPjQ0HAH4B0rWKo7SZ6USuPcrUiAFrws0UH8RrbWmgq3LMTObhPIHbbBeQ== - dependencies: - minipass "^3.1.1" - -stack-utils@^2.0.3: - version "2.0.6" - resolved "https://registry.yarnpkg.com/stack-utils/-/stack-utils-2.0.6.tgz#aaf0748169c02fc33c8232abccf933f54a1cc34f" - integrity sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ== - dependencies: - escape-string-regexp "^2.0.0" - -statuses@2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/statuses/-/statuses-2.0.1.tgz#55cb000ccf1d48728bd23c685a063998cf1a1b63" - integrity sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ== - -string-length@^4.0.1: - version "4.0.2" - resolved "https://registry.yarnpkg.com/string-length/-/string-length-4.0.2.tgz#a8a8dc7bd5c1a82b9b3c8b87e125f66871b6e57a" - integrity sha512-+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ== - dependencies: - char-regex "^1.0.2" - strip-ansi "^6.0.0" - -string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.3: - version "4.2.3" - resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" - integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== - dependencies: - emoji-regex "^8.0.0" - is-fullwidth-code-point "^3.0.0" - strip-ansi "^6.0.1" - -string.prototype.matchall@^4.0.8: - version "4.0.8" - resolved "https://registry.yarnpkg.com/string.prototype.matchall/-/string.prototype.matchall-4.0.8.tgz#3bf85722021816dcd1bf38bb714915887ca79fd3" - integrity sha512-6zOCOcJ+RJAQshcTvXPHoxoQGONa3e/Lqx90wUA+wEzX78sg5Bo+1tQo4N0pohS0erG9qtCqJDjNCQBjeWVxyg== - dependencies: - call-bind "^1.0.2" - define-properties "^1.1.4" - es-abstract "^1.20.4" - get-intrinsic "^1.1.3" - has-symbols "^1.0.3" - internal-slot "^1.0.3" - regexp.prototype.flags "^1.4.3" - side-channel "^1.0.4" - -string.prototype.padend@^3.1.2: - version "3.1.4" - resolved "https://registry.yarnpkg.com/string.prototype.padend/-/string.prototype.padend-3.1.4.tgz#2c43bb3a89eb54b6750de5942c123d6c98dd65b6" - integrity sha512-67otBXoksdjsnXXRUq+KMVTdlVRZ2af422Y0aTyTjVaoQkGr3mxl2Bc5emi7dOQ3OGVVQQskmLEWwFXwommpNw== - dependencies: - call-bind "^1.0.2" - define-properties "^1.1.4" - es-abstract "^1.20.4" - -string.prototype.trimend@^1.0.6: - version "1.0.6" - resolved "https://registry.yarnpkg.com/string.prototype.trimend/-/string.prototype.trimend-1.0.6.tgz#c4a27fa026d979d79c04f17397f250a462944533" - integrity sha512-JySq+4mrPf9EsDBEDYMOb/lM7XQLulwg5R/m1r0PXEFqrV0qHvl58sdTilSXtKOflCsK2E8jxf+GKC0T07RWwQ== - dependencies: - call-bind "^1.0.2" - define-properties "^1.1.4" - es-abstract "^1.20.4" - -string.prototype.trimstart@^1.0.6: - version "1.0.6" - resolved "https://registry.yarnpkg.com/string.prototype.trimstart/-/string.prototype.trimstart-1.0.6.tgz#e90ab66aa8e4007d92ef591bbf3cd422c56bdcf4" - integrity sha512-omqjMDaY92pbn5HOX7f9IccLA+U1tA9GvtU4JrodiXFfYB7jPzzHpRzpglLAjtUV6bB557zwClJezTqnAiYnQA== - dependencies: - call-bind "^1.0.2" - define-properties "^1.1.4" - es-abstract "^1.20.4" - -strip-ansi@^6.0.0, strip-ansi@^6.0.1: - version "6.0.1" - resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" - integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A== - dependencies: - ansi-regex "^5.0.1" - -strip-bom-string@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/strip-bom-string/-/strip-bom-string-1.0.0.tgz#e5211e9224369fbb81d633a2f00044dc8cedad92" - integrity sha512-uCC2VHvQRYu+lMh4My/sFNmF2klFymLX1wHJeXnbEJERpV/ZsVuonzerjfrGpIGF7LBVa1O7i9kjiWvJiFck8g== - -strip-bom@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-4.0.0.tgz#9c3505c1db45bcedca3d9cf7a16f5c5aa3901878" - integrity sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w== - -strip-final-newline@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/strip-final-newline/-/strip-final-newline-2.0.0.tgz#89b852fb2fcbe936f6f4b3187afb0a12c1ab58ad" - integrity sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA== - -strip-indent@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/strip-indent/-/strip-indent-3.0.0.tgz#c32e1cee940b6b3432c771bc2c54bcce73cd3001" - integrity sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ== - dependencies: - min-indent "^1.0.0" - -strip-indent@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/strip-indent/-/strip-indent-4.0.0.tgz#b41379433dd06f5eae805e21d631e07ee670d853" - integrity sha512-mnVSV2l+Zv6BLpSD/8V87CW/y9EmmbYzGCIavsnsI6/nwn26DwffM/yztm30Z/I2DY9wdS3vXVCMnHDgZaVNoA== - dependencies: - min-indent "^1.0.1" - -strip-json-comments@^3.1.0, strip-json-comments@^3.1.1: - version "3.1.1" - resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-3.1.1.tgz#31f1281b3832630434831c310c01cccda8cbe006" - integrity sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig== - -supports-color@^5.3.0: - version "5.5.0" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f" - integrity sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow== - dependencies: - has-flag "^3.0.0" - -supports-color@^7.1.0: - version "7.2.0" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-7.2.0.tgz#1b7dcdcb32b8138801b3e478ba6a51caa89648da" - integrity sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw== - dependencies: - has-flag "^4.0.0" - -supports-color@^8.0.0: - version "8.1.1" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-8.1.1.tgz#cd6fc17e28500cff56c1b86c0a7fd4a54a73005c" - integrity sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q== - dependencies: - has-flag "^4.0.0" - -supports-preserve-symlinks-flag@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz#6eda4bd344a3c94aea376d4cc31bc77311039e09" - integrity sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w== - -temp-dir@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/temp-dir/-/temp-dir-3.0.0.tgz#7f147b42ee41234cc6ba3138cd8e8aa2302acffa" - integrity sha512-nHc6S/bwIilKHNRgK/3jlhDoIHcp45YgyiwcAk46Tr0LfEqGBVpmiAyuiuxeVE44m3mXnEeVhaipLOEWmH+Njw== - -terser@^5.18.2: - version "5.18.2" - resolved "https://registry.yarnpkg.com/terser/-/terser-5.18.2.tgz#ff3072a0faf21ffd38f99acc9a0ddf7b5f07b948" - integrity sha512-Ah19JS86ypbJzTzvUCX7KOsEIhDaRONungA4aYBjEP3JZRf4ocuDzTg4QWZnPn9DEMiMYGJPiSOy7aykoCc70w== - dependencies: - "@jridgewell/source-map" "^0.3.3" - acorn "^8.8.2" - commander "^2.20.0" - source-map-support "~0.5.20" - -test-exclude@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/test-exclude/-/test-exclude-6.0.0.tgz#04a8698661d805ea6fa293b6cb9e63ac044ef15e" - integrity sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w== - dependencies: - "@istanbuljs/schema" "^0.1.2" - glob "^7.1.4" - minimatch "^3.0.4" - -text-table@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4" - integrity sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw== - -tmpl@1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/tmpl/-/tmpl-1.0.5.tgz#8683e0b902bb9c20c4f726e3c0b69f36518c07cc" - integrity sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw== - -to-fast-properties@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-2.0.0.tgz#dc5e698cbd079265bc73e0377681a4e4e83f616e" - integrity sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog== - -to-regex-range@^5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-5.0.1.tgz#1648c44aae7c8d988a326018ed72f5b4dd0392e4" - integrity sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ== - dependencies: - is-number "^7.0.0" - -toidentifier@1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/toidentifier/-/toidentifier-1.0.1.tgz#3be34321a88a820ed1bd80dfaa33e479fbb8dd35" - integrity sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA== - -token-stream@1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/token-stream/-/token-stream-1.0.0.tgz#cc200eab2613f4166d27ff9afc7ca56d49df6eb4" - integrity sha512-VSsyNPPW74RpHwR8Fc21uubwHY7wMDeJLys2IX5zJNih+OnAnaifKHo+1LHT7DAdloQ7apeaaWg8l7qnf/TnEg== - -trim-newlines@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/trim-newlines/-/trim-newlines-5.0.0.tgz#fbe350dc9d5fe15e80793b86c09bc7436a3da383" - integrity sha512-kstfs+hgwmdsOadN3KgA+C68wPJwnZq4DN6WMDCvZapDWEF34W2TyPKN2v2+BJnZgIz5QOfxFeldLyYvdgRAwg== - -tslib@^1.8.1: - version "1.14.1" - resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.14.1.tgz#cf2d38bdc34a134bcaf1091c41f6619e2f672d00" - integrity sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg== - -tsutils@^3.21.0: - version "3.21.0" - resolved "https://registry.yarnpkg.com/tsutils/-/tsutils-3.21.0.tgz#b48717d394cea6c1e096983eed58e9d61715b623" - integrity sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA== - dependencies: - tslib "^1.8.1" - -type-check@^0.4.0, type-check@~0.4.0: - version "0.4.0" - resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.4.0.tgz#07b8203bfa7056c0657050e3ccd2c37730bab8f1" - integrity sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew== - dependencies: - prelude-ls "^1.2.1" - -type-detect@4.0.8: - version "4.0.8" - resolved "https://registry.yarnpkg.com/type-detect/-/type-detect-4.0.8.tgz#7646fb5f18871cfbb7749e69bd39a6388eb7450c" - integrity sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g== - -type-fest@^0.20.2: - version "0.20.2" - resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.20.2.tgz#1bf207f4b28f91583666cb5fbd327887301cd5f4" - integrity sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ== - -type-fest@^0.21.3: - version "0.21.3" - resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.21.3.tgz#d260a24b0198436e133fa26a524a6d65fa3b2e37" - integrity sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w== - -type-fest@^0.6.0: - version "0.6.0" - resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.6.0.tgz#8d2a2370d3df886eb5c90ada1c5bf6188acf838b" - integrity sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg== - -type-fest@^0.8.1: - version "0.8.1" - resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.8.1.tgz#09e249ebde851d3b1e48d27c105444667f17b83d" - integrity sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA== - -type-fest@^2.0.0, type-fest@^2.13.0, type-fest@^2.5.0: - version "2.19.0" - resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-2.19.0.tgz#88068015bb33036a598b952e55e9311a60fd3a9b" - integrity sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA== - -type-fest@^3.1.0: - version "3.6.1" - resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-3.6.1.tgz#cf8025edeebfd6cf48de73573a5e1423350b9993" - integrity sha512-htXWckxlT6U4+ilVgweNliPqlsVSSucbxVexRYllyMVJDtf5rTjv6kF/s+qAd4QSL1BZcnJPEJavYBPQiWuZDA== - -type-fest@^3.9.0: - version "3.9.0" - resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-3.9.0.tgz#36a9e46e6583649f9e6098b267bc577275e9e4f4" - integrity sha512-hR8JP2e8UiH7SME5JZjsobBlEiatFoxpzCP+R3ZeCo7kAaG1jXQE5X/buLzogM6GJu8le9Y4OcfNuIQX0rZskA== - -typed-array-length@^1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/typed-array-length/-/typed-array-length-1.0.4.tgz#89d83785e5c4098bec72e08b319651f0eac9c1bb" - integrity sha512-KjZypGq+I/H7HI5HlOoGHkWUUGq+Q0TPhQurLbyrVrvnKTBgzLhIJ7j6J/XTQOi0d1RjyZ0wdas8bKs2p0x3Ng== - dependencies: - call-bind "^1.0.2" - for-each "^0.3.3" - is-typed-array "^1.1.9" - -uc.micro@^1.0.1, uc.micro@^1.0.5: - version "1.0.6" - resolved "https://registry.yarnpkg.com/uc.micro/-/uc.micro-1.0.6.tgz#9c411a802a409a91fc6cf74081baba34b24499ac" - integrity sha512-8Y75pvTYkLJW2hWQHXxoqRgV7qb9B+9vFEtidML+7koHUFapnVJAZ6cKs+Qjz5Aw3aZWHMC6u0wJE3At+nSGwA== - -uglify-js@^3.1.4, uglify-js@^3.5.1: - version "3.17.4" - resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-3.17.4.tgz#61678cf5fa3f5b7eb789bb345df29afb8257c22c" - integrity sha512-T9q82TJI9e/C1TAxYvfb16xO120tMVFZrGA3f9/P4424DNu6ypK103y0GPFVa17yotwSyZW5iYXgjYHkGrJW/g== - -unbox-primitive@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/unbox-primitive/-/unbox-primitive-1.0.2.tgz#29032021057d5e6cdbd08c5129c226dff8ed6f9e" - integrity sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw== - dependencies: - call-bind "^1.0.2" - has-bigints "^1.0.2" - has-symbols "^1.0.3" - which-boxed-primitive "^1.0.2" - -underscore@~1.13.2: - version "1.13.6" - resolved "https://registry.yarnpkg.com/underscore/-/underscore-1.13.6.tgz#04786a1f589dc6c09f761fc5f45b89e935136441" - integrity sha512-+A5Sja4HP1M08MaXya7p5LvjuM7K6q/2EaC0+iovj/wOcMsTzMvDFbasi/oSapiwOlt252IqsKqPjCl7huKS0A== - -universalify@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/universalify/-/universalify-2.0.0.tgz#75a4984efedc4b08975c5aeb73f530d02df25717" - integrity sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ== - -unpipe@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/unpipe/-/unpipe-1.0.0.tgz#b2bf4ee8514aae6165b4817829d21b2ef49904ec" - integrity sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ== - -update-browserslist-db@^1.0.10: - version "1.0.10" - resolved "https://registry.yarnpkg.com/update-browserslist-db/-/update-browserslist-db-1.0.10.tgz#0f54b876545726f17d00cd9a2561e6dade943ff3" - integrity sha512-OztqDenkfFkbSG+tRxBeAnCVPckDBcvibKd35yDONx6OU8N7sqgwc7rCbkJ/WcYtVRZ4ba68d6byhC21GFh7sQ== - dependencies: - escalade "^3.1.1" - picocolors "^1.0.0" - -upper-case@^1.1.1: - version "1.1.3" - resolved "https://registry.yarnpkg.com/upper-case/-/upper-case-1.1.3.tgz#f6b4501c2ec4cdd26ba78be7222961de77621598" - integrity sha512-WRbjgmYzgXkCV7zNVpy5YgrHgbBv126rMALQQMrmzOVC4GM2waQ9x7xtm8VU+1yF2kWyPzI9zbZ48n4vSxwfSA== - -uri-js@^4.2.2: - version "4.4.1" - resolved "https://registry.yarnpkg.com/uri-js/-/uri-js-4.4.1.tgz#9b1a52595225859e55f669d928f88c6c57f2a77e" - integrity sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg== - dependencies: - punycode "^2.1.0" - -v8-to-istanbul@^9.0.1: - version "9.1.0" - resolved "https://registry.yarnpkg.com/v8-to-istanbul/-/v8-to-istanbul-9.1.0.tgz#1b83ed4e397f58c85c266a570fc2558b5feb9265" - integrity sha512-6z3GW9x8G1gd+JIIgQQQxXuiJtCXeAjp6RaPEPLv62mH3iPHPxV6W3robxtCzNErRo6ZwTmzWhsbNvjyEBKzKA== - dependencies: - "@jridgewell/trace-mapping" "^0.3.12" - "@types/istanbul-lib-coverage" "^2.0.1" - convert-source-map "^1.6.0" - -validate-npm-package-license@^3.0.1, validate-npm-package-license@^3.0.4: - version "3.0.4" - resolved "https://registry.yarnpkg.com/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz#fc91f6b9c7ba15c857f4cb2c5defeec39d4f410a" - integrity sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew== - dependencies: - spdx-correct "^3.0.0" - spdx-expression-parse "^3.0.0" - -void-elements@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/void-elements/-/void-elements-3.1.0.tgz#614f7fbf8d801f0bb5f0661f5b2f5785750e4f09" - integrity sha512-Dhxzh5HZuiHQhbvTW9AMetFfBHDMYpo23Uo9btPXgdYP+3T5S+p+jgNy7spra+veYhBP2dCSgxR/i2Y02h5/6w== - -walker@^1.0.8: - version "1.0.8" - resolved "https://registry.yarnpkg.com/walker/-/walker-1.0.8.tgz#bd498db477afe573dc04185f011d3ab8a8d7653f" - integrity sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ== - dependencies: - makeerror "1.0.12" - -which-boxed-primitive@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz#13757bc89b209b049fe5d86430e21cf40a89a8e6" - integrity sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg== - dependencies: - is-bigint "^1.0.1" - is-boolean-object "^1.1.0" - is-number-object "^1.0.4" - is-string "^1.0.5" - is-symbol "^1.0.3" - -which-typed-array@^1.1.9: - version "1.1.9" - resolved "https://registry.yarnpkg.com/which-typed-array/-/which-typed-array-1.1.9.tgz#307cf898025848cf995e795e8423c7f337efbde6" - integrity sha512-w9c4xkx6mPidwp7180ckYWfMmvxpjlZuIudNtDf4N/tTAUB8VJbX25qZoAsrtGuYNnGw3pa0AXgbGKRB8/EceA== - dependencies: - available-typed-arrays "^1.0.5" - call-bind "^1.0.2" - for-each "^0.3.3" - gopd "^1.0.1" - has-tostringtag "^1.0.0" - is-typed-array "^1.1.10" - -which@^2.0.1: - version "2.0.2" - resolved "https://registry.yarnpkg.com/which/-/which-2.0.2.tgz#7c6a8dd0a636a0327e10b59c9286eee93f3f51b1" - integrity sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA== - dependencies: - isexe "^2.0.0" - -with@^7.0.0: - version "7.0.2" - resolved "https://registry.yarnpkg.com/with/-/with-7.0.2.tgz#ccee3ad542d25538a7a7a80aad212b9828495bac" - integrity sha512-RNGKj82nUPg3g5ygxkQl0R937xLyho1J24ItRCBTr/m1YnZkzJy1hUiHUJrc/VlsDQzsCnInEGSg3bci0Lmd4w== - dependencies: - "@babel/parser" "^7.9.6" - "@babel/types" "^7.9.6" - assert-never "^1.2.1" - babel-walk "3.0.0-canary-5" - -wordwrap@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-1.0.0.tgz#27584810891456a4171c8d0226441ade90cbcaeb" - integrity sha512-gvVzJFlPycKc5dZN4yPkP8w7Dc37BtP1yczEneOb4uq34pXZcvrtRTmWV8W+Ume+XCxKgbjM+nevkyFPMybd4Q== - -wrap-ansi@^7.0.0: - version "7.0.0" - resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43" - integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q== - dependencies: - ansi-styles "^4.0.0" - string-width "^4.1.0" - strip-ansi "^6.0.0" - -wrappy@1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" - integrity sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ== - -write-file-atomic@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-4.0.2.tgz#a9df01ae5b77858a027fd2e80768ee433555fcfd" - integrity sha512-7KxauUdBmSdWnmpaGFg+ppNjKF8uNLry8LyzjauQDOVONfFLNKrKvQOxZ/VuTIcS/gge/YNahf5RIIQWTSarlg== - dependencies: - imurmurhash "^0.1.4" - signal-exit "^3.0.7" - -ws@^8.13.0: - version "8.13.0" - resolved "https://registry.yarnpkg.com/ws/-/ws-8.13.0.tgz#9a9fb92f93cf41512a0735c8f4dd09b8a1211cd0" - integrity sha512-x9vcZYTrFPC7aSIbj7sRCYo7L/Xb8Iy+pW0ng0wt2vCJv7M9HOMy0UoN3rr+IFC7hb7vXoqS+P9ktyLLLhO+LA== - -xmlcreate@^2.0.4: - version "2.0.4" - resolved "https://registry.yarnpkg.com/xmlcreate/-/xmlcreate-2.0.4.tgz#0c5ab0f99cdd02a81065fa9cd8f8ae87624889be" - integrity sha512-nquOebG4sngPmGPICTS5EnxqhKbCmz5Ox5hsszI2T6U5qdrJizBc+0ilYSEjTSzU0yZcmvppztXe/5Al5fUwdg== - -y18n@^5.0.5: - version "5.0.8" - resolved "https://registry.yarnpkg.com/y18n/-/y18n-5.0.8.tgz#7f4934d0f7ca8c56f95314939ddcd2dd91ce1d55" - integrity sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA== - -yallist@^3.0.2: - version "3.1.1" - resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.1.1.tgz#dbb7daf9bfd8bac9ab45ebf602b8cbad0d5d08fd" - integrity sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g== - -yallist@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/yallist/-/yallist-4.0.0.tgz#9bb92790d9c0effec63be73519e11a35019a3a72" - integrity sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A== - -yargs-parser@^21.1.1: - version "21.1.1" - resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-21.1.1.tgz#9096bceebf990d21bb31fa9516e0ede294a77d35" - integrity sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw== - -yargs@^17.3.1: - version "17.7.1" - resolved "https://registry.yarnpkg.com/yargs/-/yargs-17.7.1.tgz#34a77645201d1a8fc5213ace787c220eabbd0967" - integrity sha512-cwiTb08Xuv5fqF4AovYacTFNxk62th7LKJ6BL9IGUpTJrWoU7/7WdQGTP2SjKf1dUNBGzDd28p/Yfs/GI6JrLw== - dependencies: - cliui "^8.0.1" - escalade "^3.1.1" - get-caller-file "^2.0.5" - require-directory "^2.1.1" - string-width "^4.2.3" - y18n "^5.0.5" - yargs-parser "^21.1.1" - -yocto-queue@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/yocto-queue/-/yocto-queue-0.1.0.tgz#0294eb3dee05028d31ee1a5fa2c556a6aaf10a1b" - integrity sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q== - -yocto-queue@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/yocto-queue/-/yocto-queue-1.0.0.tgz#7f816433fb2cbc511ec8bf7d263c3b58a1a3c251" - integrity sha512-9bnSc/HEW2uRy67wc+T8UwauLuPJVn28jb+GtJY16iiKWyvmYJRXVT4UamsAEGQfPohgr2q4Tq0sQbQlxTfi1g== +# This file is generated by running "yarn install" inside your project. +# Manual changes might be lost - proceed with caution! + +__metadata: + version: 8 + cacheKey: 10 + +"@esbuild/android-arm64@npm:0.18.20": + version: 0.18.20 + resolution: "@esbuild/android-arm64@npm:0.18.20" + conditions: os=android & cpu=arm64 + languageName: node + linkType: hard + +"@esbuild/android-arm@npm:0.18.20": + version: 0.18.20 + resolution: "@esbuild/android-arm@npm:0.18.20" + conditions: os=android & cpu=arm + languageName: node + linkType: hard + +"@esbuild/android-x64@npm:0.18.20": + version: 0.18.20 + resolution: "@esbuild/android-x64@npm:0.18.20" + conditions: os=android & cpu=x64 + languageName: node + linkType: hard + +"@esbuild/darwin-arm64@npm:0.18.20": + version: 0.18.20 + resolution: "@esbuild/darwin-arm64@npm:0.18.20" + conditions: os=darwin & cpu=arm64 + languageName: node + linkType: hard + +"@esbuild/darwin-x64@npm:0.18.20": + version: 0.18.20 + resolution: "@esbuild/darwin-x64@npm:0.18.20" + conditions: os=darwin & cpu=x64 + languageName: node + linkType: hard + +"@esbuild/freebsd-arm64@npm:0.18.20": + version: 0.18.20 + resolution: "@esbuild/freebsd-arm64@npm:0.18.20" + conditions: os=freebsd & cpu=arm64 + languageName: node + linkType: hard + +"@esbuild/freebsd-x64@npm:0.18.20": + version: 0.18.20 + resolution: "@esbuild/freebsd-x64@npm:0.18.20" + conditions: os=freebsd & cpu=x64 + languageName: node + linkType: hard + +"@esbuild/linux-arm64@npm:0.18.20": + version: 0.18.20 + resolution: "@esbuild/linux-arm64@npm:0.18.20" + conditions: os=linux & cpu=arm64 + languageName: node + linkType: hard + +"@esbuild/linux-arm@npm:0.18.20": + version: 0.18.20 + resolution: "@esbuild/linux-arm@npm:0.18.20" + conditions: os=linux & cpu=arm + languageName: node + linkType: hard + +"@esbuild/linux-ia32@npm:0.18.20": + version: 0.18.20 + resolution: "@esbuild/linux-ia32@npm:0.18.20" + conditions: os=linux & cpu=ia32 + languageName: node + linkType: hard + +"@esbuild/linux-loong64@npm:0.18.20": + version: 0.18.20 + resolution: "@esbuild/linux-loong64@npm:0.18.20" + conditions: os=linux & cpu=loong64 + languageName: node + linkType: hard + +"@esbuild/linux-mips64el@npm:0.18.20": + version: 0.18.20 + resolution: "@esbuild/linux-mips64el@npm:0.18.20" + conditions: os=linux & cpu=mips64el + languageName: node + linkType: hard + +"@esbuild/linux-ppc64@npm:0.18.20": + version: 0.18.20 + resolution: "@esbuild/linux-ppc64@npm:0.18.20" + conditions: os=linux & cpu=ppc64 + languageName: node + linkType: hard + +"@esbuild/linux-riscv64@npm:0.18.20": + version: 0.18.20 + resolution: "@esbuild/linux-riscv64@npm:0.18.20" + conditions: os=linux & cpu=riscv64 + languageName: node + linkType: hard + +"@esbuild/linux-s390x@npm:0.18.20": + version: 0.18.20 + resolution: "@esbuild/linux-s390x@npm:0.18.20" + conditions: os=linux & cpu=s390x + languageName: node + linkType: hard + +"@esbuild/linux-x64@npm:0.18.20": + version: 0.18.20 + resolution: "@esbuild/linux-x64@npm:0.18.20" + conditions: os=linux & cpu=x64 + languageName: node + linkType: hard + +"@esbuild/netbsd-x64@npm:0.18.20": + version: 0.18.20 + resolution: "@esbuild/netbsd-x64@npm:0.18.20" + conditions: os=netbsd & cpu=x64 + languageName: node + linkType: hard + +"@esbuild/openbsd-x64@npm:0.18.20": + version: 0.18.20 + resolution: "@esbuild/openbsd-x64@npm:0.18.20" + conditions: os=openbsd & cpu=x64 + languageName: node + linkType: hard + +"@esbuild/sunos-x64@npm:0.18.20": + version: 0.18.20 + resolution: "@esbuild/sunos-x64@npm:0.18.20" + conditions: os=sunos & cpu=x64 + languageName: node + linkType: hard + +"@esbuild/win32-arm64@npm:0.18.20": + version: 0.18.20 + resolution: "@esbuild/win32-arm64@npm:0.18.20" + conditions: os=win32 & cpu=arm64 + languageName: node + linkType: hard + +"@esbuild/win32-ia32@npm:0.18.20": + version: 0.18.20 + resolution: "@esbuild/win32-ia32@npm:0.18.20" + conditions: os=win32 & cpu=ia32 + languageName: node + linkType: hard + +"@esbuild/win32-x64@npm:0.18.20": + version: 0.18.20 + resolution: "@esbuild/win32-x64@npm:0.18.20" + conditions: os=win32 & cpu=x64 + languageName: node + linkType: hard + +"@fastify/accept-negotiator@npm:^1.0.0": + version: 1.1.0 + resolution: "@fastify/accept-negotiator@npm:1.1.0" + checksum: 5c8f263680af0aece8c1fdea4d4c094a7f82cc5ed90b709357eb52a01e3388d1ac74a17e5a1d5d53f2d3ca93ae50d283ee451a6435b2cbe1b9847fff4d7d0732 + languageName: node + linkType: hard + +"@fastify/ajv-compiler@npm:^3.5.0": + version: 3.5.0 + resolution: "@fastify/ajv-compiler@npm:3.5.0" + dependencies: + ajv: "npm:^8.11.0" + ajv-formats: "npm:^2.1.1" + fast-uri: "npm:^2.0.0" + checksum: c46c4680bf583e37b97ffc85b69070712c9c47e18ddf89b9fb93dbc0b6ba3c6496cf624aabe9aac25dafc4a404b738ab0fedcff66503df0ce18d9dcad9e44b26 + languageName: node + linkType: hard + +"@fastify/deepmerge@npm:^1.0.0": + version: 1.3.0 + resolution: "@fastify/deepmerge@npm:1.3.0" + checksum: 6ddfc230ed46bfb158dbf83c2cc7f6119c9c1afb96d885cf5d95ac17b56126d04eef83ddb1ee7a1b044e65a128c76ebf8b391a26490b19f5812fa0d2d2a3a675 + languageName: node + linkType: hard + +"@fastify/error@npm:^3.0.0": + version: 3.4.0 + resolution: "@fastify/error@npm:3.4.0" + checksum: a3ccd963dbc91ca3e0912ab43d459a3488bdc565c0ccc7d4ca63c9b771329679ce8db5b9351bd3a0ff733de274f534a98542ca437ca8441ff347f2ec3b7cc75d + languageName: node + linkType: hard + +"@fastify/fast-json-stringify-compiler@npm:^4.2.0": + version: 4.3.0 + resolution: "@fastify/fast-json-stringify-compiler@npm:4.3.0" + dependencies: + fast-json-stringify: "npm:^5.7.0" + checksum: 9ad575907d44bbd371dbc23a51853fd349a459092340fe91c50317f92707961f2e6ca6c9d17707a8e4a087c635e09bce1166e082d54f191769a582339c94badd + languageName: node + linkType: hard + +"@fastify/send@npm:^2.0.0": + version: 2.1.0 + resolution: "@fastify/send@npm:2.1.0" + dependencies: + "@lukeed/ms": "npm:^2.0.1" + escape-html: "npm:~1.0.3" + fast-decode-uri-component: "npm:^1.0.1" + http-errors: "npm:2.0.0" + mime: "npm:^3.0.0" + checksum: 22bc3e51962eb6261174b3cacada51284fe40450aa060206166d6ef501935153c6bee39f87b534288c8dee39d3fd9d83f6846a3bdaaf07625b1318c538ffc82b + languageName: node + linkType: hard + +"@fastify/static@npm:6.12.0": + version: 6.12.0 + resolution: "@fastify/static@npm:6.12.0" + dependencies: + "@fastify/accept-negotiator": "npm:^1.0.0" + "@fastify/send": "npm:^2.0.0" + content-disposition: "npm:^0.5.3" + fastify-plugin: "npm:^4.0.0" + glob: "npm:^8.0.1" + p-limit: "npm:^3.1.0" + checksum: 33304062bd2cc0dd3b79c5f2544a87be8e27a6c9360ffa0d2d290e8d10d50ab8d2e04802193d4727e113f6b71728f5482f5c7082d8b798d52a080e170cec3ce5 + languageName: node + linkType: hard + +"@isaacs/cliui@npm:^8.0.2": + version: 8.0.2 + resolution: "@isaacs/cliui@npm:8.0.2" + dependencies: + string-width: "npm:^5.1.2" + string-width-cjs: "npm:string-width@^4.2.0" + strip-ansi: "npm:^7.0.1" + strip-ansi-cjs: "npm:strip-ansi@^6.0.1" + wrap-ansi: "npm:^8.1.0" + wrap-ansi-cjs: "npm:wrap-ansi@^7.0.0" + checksum: e9ed5fd27c3aec1095e3a16e0c0cf148d1fee55a38665c35f7b3f86a9b5d00d042ddaabc98e8a1cb7463b9378c15f22a94eb35e99469c201453eb8375191f243 + languageName: node + linkType: hard + +"@lukeed/ms@npm:^2.0.1": + version: 2.0.1 + resolution: "@lukeed/ms@npm:2.0.1" + checksum: c7b46933bf7bad3e024dcbbe2ad6201392b4ed2a05a717c0ef7e96a03fb885d44f08b4b749c392cc51c2736a6a45a08c77f1863ace1c072928fbfd9908a13db3 + languageName: node + linkType: hard + +"@next/env@npm:13.4.19": + version: 13.4.19 + resolution: "@next/env@npm:13.4.19" + checksum: 9454485caf50292d4b1b4ffdd4794d408a07c43ac3e4688bcca023cd10980232a0a283f6fc48129ae4f3c21ad547b8404beeb84b5e1883815f940cb36a18c2fa + languageName: node + linkType: hard + +"@next/swc-darwin-arm64@npm:13.4.19": + version: 13.4.19 + resolution: "@next/swc-darwin-arm64@npm:13.4.19" + conditions: os=darwin & cpu=arm64 + languageName: node + linkType: hard + +"@next/swc-darwin-x64@npm:13.4.19": + version: 13.4.19 + resolution: "@next/swc-darwin-x64@npm:13.4.19" + conditions: os=darwin & cpu=x64 + languageName: node + linkType: hard + +"@next/swc-linux-arm64-gnu@npm:13.4.19": + version: 13.4.19 + resolution: "@next/swc-linux-arm64-gnu@npm:13.4.19" + conditions: os=linux & cpu=arm64 & libc=glibc + languageName: node + linkType: hard + +"@next/swc-linux-arm64-musl@npm:13.4.19": + version: 13.4.19 + resolution: "@next/swc-linux-arm64-musl@npm:13.4.19" + conditions: os=linux & cpu=arm64 & libc=musl + languageName: node + linkType: hard + +"@next/swc-linux-x64-gnu@npm:13.4.19": + version: 13.4.19 + resolution: "@next/swc-linux-x64-gnu@npm:13.4.19" + conditions: os=linux & cpu=x64 & libc=glibc + languageName: node + linkType: hard + +"@next/swc-linux-x64-musl@npm:13.4.19": + version: 13.4.19 + resolution: "@next/swc-linux-x64-musl@npm:13.4.19" + conditions: os=linux & cpu=x64 & libc=musl + languageName: node + linkType: hard + +"@next/swc-win32-arm64-msvc@npm:13.4.19": + version: 13.4.19 + resolution: "@next/swc-win32-arm64-msvc@npm:13.4.19" + conditions: os=win32 & cpu=arm64 + languageName: node + linkType: hard + +"@next/swc-win32-ia32-msvc@npm:13.4.19": + version: 13.4.19 + resolution: "@next/swc-win32-ia32-msvc@npm:13.4.19" + conditions: os=win32 & cpu=ia32 + languageName: node + linkType: hard + +"@next/swc-win32-x64-msvc@npm:13.4.19": + version: 13.4.19 + resolution: "@next/swc-win32-x64-msvc@npm:13.4.19" + conditions: os=win32 & cpu=x64 + languageName: node + linkType: hard + +"@npmcli/agent@npm:^2.0.0": + version: 2.2.0 + resolution: "@npmcli/agent@npm:2.2.0" + dependencies: + agent-base: "npm:^7.1.0" + http-proxy-agent: "npm:^7.0.0" + https-proxy-agent: "npm:^7.0.1" + lru-cache: "npm:^10.0.1" + socks-proxy-agent: "npm:^8.0.1" + checksum: 822ea077553cd9cfc5cbd6d92380b0950fcb054a7027cd1b63a33bd0cbb16b0c6626ea75d95ec0e804643c8904472d3361d2da8c2444b1fb02a9b525d9c07c41 + languageName: node + linkType: hard + +"@npmcli/fs@npm:^3.1.0": + version: 3.1.0 + resolution: "@npmcli/fs@npm:3.1.0" + dependencies: + semver: "npm:^7.3.5" + checksum: f3a7ab3a31de65e42aeb6ed03ed035ef123d2de7af4deb9d4a003d27acc8618b57d9fb9d259fe6c28ca538032a028f37337264388ba27d26d37fff7dde22476e + languageName: node + linkType: hard + +"@pkgjs/parseargs@npm:^0.11.0": + version: 0.11.0 + resolution: "@pkgjs/parseargs@npm:0.11.0" + checksum: 115e8ceeec6bc69dff2048b35c0ab4f8bbee12d8bb6c1f4af758604586d802b6e669dcb02dda61d078de42c2b4ddce41b3d9e726d7daa6b4b850f4adbf7333ff + languageName: node + linkType: hard + +"@qiwi/tech-radar@workspace:.": + version: 0.0.0-use.local + resolution: "@qiwi/tech-radar@workspace:." + dependencies: + "@fastify/static": "npm:6.12.0" + "@types/css-modules": "npm:1.0.4" + "@types/d3": "npm:7.4.2" + "@types/node": "npm:20.8.9" + "@types/react": "npm:18.2.33" + "@types/react-dom": "npm:18.2.14" + commander: "npm:11.1.0" + d3: "npm:7.8.5" + execa: "npm:8.0.1" + fastify: "npm:4.15.0" + next: "npm:13.4.19" + ora: "npm:7.0.1" + pkg-dir: "npm:7.0.0" + query-string: "npm:8.1.0" + react: "npm:18.2.0" + react-dom: "npm:18.2.0" + sync-directory: "npm:6.0.4" + tempy: "npm:3.1.0" + tsx: "npm:3.14.0" + typescript: "npm:5.2.2" + languageName: unknown + linkType: soft + +"@swc/helpers@npm:0.5.1": + version: 0.5.1 + resolution: "@swc/helpers@npm:0.5.1" + dependencies: + tslib: "npm:^2.4.0" + checksum: 4954c4d2dd97bf965e863a10ffa44c3fdaf7653f2fa9ef1a6cf7ffffd67f3f832216588f9751afd75fdeaea60c4688c75c01e2405119c448f1a109c9a7958c54 + languageName: node + linkType: hard + +"@types/css-modules@npm:1.0.4": + version: 1.0.4 + resolution: "@types/css-modules@npm:1.0.4" + checksum: cf5ad1ac49e14a097a38239cfbeb53a956dd2569f7f06c145943ca4a0da764f128e66746f5e534e133fe75074e1e960683993b4d2555235367674501debbe553 + languageName: node + linkType: hard + +"@types/d3-array@npm:*": + version: 3.0.9 + resolution: "@types/d3-array@npm:3.0.9" + checksum: 2a8cc4aa544fcfe7b60e4821b83b2ca8336bd59eaaf6a0487069a4dcd854168dec660105fe092cdc489459abb5bfd99bdd2d2cb0da5ccf09ae5e83d589f03bb7 + languageName: node + linkType: hard + +"@types/d3-axis@npm:*": + version: 3.0.5 + resolution: "@types/d3-axis@npm:3.0.5" + dependencies: + "@types/d3-selection": "npm:*" + checksum: 16fe18143146c78621e9ee5cd5e65aaf57eebcae23af65fdc19338eac387a22b91ad2cf0edb0c4875a01b7744217240eb53227916ce3646e619cfa78620bb626 + languageName: node + linkType: hard + +"@types/d3-brush@npm:*": + version: 3.0.5 + resolution: "@types/d3-brush@npm:3.0.5" + dependencies: + "@types/d3-selection": "npm:*" + checksum: 4d3848dd105d24d873a10c5fa058fa21cc1371b52853e84bbb5b5b1e5cae3564f05c2cda5b4dbddfbd3a955d9bb2b2d1835615310d24bc2f1137537fbfe02010 + languageName: node + linkType: hard + +"@types/d3-chord@npm:*": + version: 3.0.5 + resolution: "@types/d3-chord@npm:3.0.5" + checksum: 540f56ab7ae77977cb15e90df8cdcb97dad9e5f21c726aa1e29a8225d4ac40ba75df266d8b14db1b616a27c965e3070c6c0c6a137481de572177c6db5f67c571 + languageName: node + linkType: hard + +"@types/d3-color@npm:*": + version: 3.1.2 + resolution: "@types/d3-color@npm:3.1.2" + checksum: 71c531142bab03165f6af7126777dc6bbd229227582655ea1e183a29b3f76ce80aa618847aa83c4ab74ec1fcd5b416da1c50f5bcdc2180bb02e14e0593c196c7 + languageName: node + linkType: hard + +"@types/d3-contour@npm:*": + version: 3.0.5 + resolution: "@types/d3-contour@npm:3.0.5" + dependencies: + "@types/d3-array": "npm:*" + "@types/geojson": "npm:*" + checksum: 093b30af63715e7720248465a3b0700b26b48859107f1507f3699076fa8f3853709a4fd769d1f7f2353a904365f08e0616d57be71bdc141a68e9817a4459b0dd + languageName: node + linkType: hard + +"@types/d3-delaunay@npm:*": + version: 6.0.3 + resolution: "@types/d3-delaunay@npm:6.0.3" + checksum: e836094b47a926626747afdd33374f530f10dfe0b7256ebc4817a61e15ef30dd3c09c92fb774fca0341cd03d6a3c15bd9de5bd971bca954f1ac9c509c9480bfc + languageName: node + linkType: hard + +"@types/d3-dispatch@npm:*": + version: 3.0.5 + resolution: "@types/d3-dispatch@npm:3.0.5" + checksum: 9648423c071d359deca43de8dca387a21b931aefd0fdb00543f1d9c0289b7cc881e4c5fa840cd422a03a2edfca73ee1f57acb03447f35097d661667f77ff138c + languageName: node + linkType: hard + +"@types/d3-drag@npm:*": + version: 3.0.5 + resolution: "@types/d3-drag@npm:3.0.5" + dependencies: + "@types/d3-selection": "npm:*" + checksum: 026697faa34408f12f4f7668b510714efa583479fb8b8a6609d3bff64a993c99a8a0a70a91fbd0e537efe881c566cc7aa1db6e6d9d3dcc695268af53173788a6 + languageName: node + linkType: hard + +"@types/d3-dsv@npm:*": + version: 3.0.5 + resolution: "@types/d3-dsv@npm:3.0.5" + checksum: 0a4c6316198c32c564bdb6a08df2e798de9a540ea87d946e154fe4c02f74926d13af53c5ae9bb481cc73d3e2aa710bcaa94b89cb6bf1dea27f3bd4d6fe0b2827 + languageName: node + linkType: hard + +"@types/d3-ease@npm:*": + version: 3.0.1 + resolution: "@types/d3-ease@npm:3.0.1" + checksum: e24afd19c34a0855d4fad54ed9bbc93cdf4da07d4ac2c6ae75aa3b62cdf6cee34450140705e068ea0347287e5af0ad65c3571d785ea573f1f3ac6a3cd1b0a69b + languageName: node + linkType: hard + +"@types/d3-fetch@npm:*": + version: 3.0.5 + resolution: "@types/d3-fetch@npm:3.0.5" + dependencies: + "@types/d3-dsv": "npm:*" + checksum: 3d51513ec44461e434335b25a5155bcc7c2fe1171eae16082fb54164a6fd7abcc3e27eede5fe0bcf7d946ecdf29baaf808db9a4af53c0aff9b501bddcca34070 + languageName: node + linkType: hard + +"@types/d3-force@npm:*": + version: 3.0.7 + resolution: "@types/d3-force@npm:3.0.7" + checksum: 8fbe7a59c505605da30e6ef965bece29078dd87f2205021200b0f9ddf511343fb77a0aff5de52e84c98dd9bfd9328666a01928309570ca9bd3c6b31d923cb89d + languageName: node + linkType: hard + +"@types/d3-format@npm:*": + version: 3.0.3 + resolution: "@types/d3-format@npm:3.0.3" + checksum: cbc8570774aa15bae5163db0314ac402053b0c80745ea151b9fad62d0ea7c6b7bd4238dc83510a5807be3a5960a83bc3924f848036736702286c2fd4b360f7cb + languageName: node + linkType: hard + +"@types/d3-geo@npm:*": + version: 3.0.6 + resolution: "@types/d3-geo@npm:3.0.6" + dependencies: + "@types/geojson": "npm:*" + checksum: 92f0d6f52e08e9e6fa2404e77a424b9636f42e77bb144a1e7b7ccee87d63cbc01745ab6681643bc7bb8c0e32761c00096a100dece460eb17fa5e8096e684b414 + languageName: node + linkType: hard + +"@types/d3-hierarchy@npm:*": + version: 3.1.5 + resolution: "@types/d3-hierarchy@npm:3.1.5" + checksum: d1bf4020a6080a41110ca911f820c2ea71e1b1723ce2b49608e5bd99714b0b06ab5054a30a1cef6e3625033f92596849872edcb4f6e2a55698fb73ed6d53ce71 + languageName: node + linkType: hard + +"@types/d3-interpolate@npm:*": + version: 3.0.3 + resolution: "@types/d3-interpolate@npm:3.0.3" + dependencies: + "@types/d3-color": "npm:*" + checksum: 3ab12571465c4f136b4f09b8643d53429d5745e9126f7e6ddd9ae9df42683f46c77a6e5c0010fe357668b4dd090e7532f298a7cbfec7325aa3d8611db92e6480 + languageName: node + linkType: hard + +"@types/d3-path@npm:*": + version: 3.0.1 + resolution: "@types/d3-path@npm:3.0.1" + checksum: 9b318d91ab8fd7ae4f913eeef4a2c34be934386714d628bdb2552a2ef21ac34abe3116c807bb26fcd0b65faedcbdefa9ecf3615527ac2f2d4bf0f8d26f0b006f + languageName: node + linkType: hard + +"@types/d3-polygon@npm:*": + version: 3.0.1 + resolution: "@types/d3-polygon@npm:3.0.1" + checksum: 59074386ac232417d4776b4d1dbab98cec63973658c3871d516317c64a9916fe6c9b4aaf7f1d453343c7b7d58dc3306296bab9e69508eeb0f194173e9ff45cba + languageName: node + linkType: hard + +"@types/d3-quadtree@npm:*": + version: 3.0.4 + resolution: "@types/d3-quadtree@npm:3.0.4" + checksum: 42427d1db19dad013029b5f35e654f22a3583955d1ace0d812523f92576f0beeb6f8a02d8663634eb2d2b7d928dbdaf993cf5f21733a5292c0c903ab49b238e3 + languageName: node + linkType: hard + +"@types/d3-random@npm:*": + version: 3.0.2 + resolution: "@types/d3-random@npm:3.0.2" + checksum: 161f0d3db1485c427e3f1a4258e9e232fe70d4a48a4cb12419e9b0635cfbe720a3f52e4a6bb58b45e48a7bc55346bcfa38937387da8b630e2135e2f95130241b + languageName: node + linkType: hard + +"@types/d3-scale-chromatic@npm:*": + version: 3.0.1 + resolution: "@types/d3-scale-chromatic@npm:3.0.1" + checksum: 5a5e7b146ef56a3f5e86f8f9da2eb9ccc1a8809e4c0a676541b1ce4c9b04a8000b4f51e6d56a4ca807979f4a582b0ce0ac550a93ca09de3e3a265a90583922f5 + languageName: node + linkType: hard + +"@types/d3-scale@npm:*": + version: 4.0.6 + resolution: "@types/d3-scale@npm:4.0.6" + dependencies: + "@types/d3-time": "npm:*" + checksum: 632bd6d7a33f8d2c23b519d4da7dc12f97c4da7ebf710885d2e2d81b995443e7bd798ef09a99b5a5033d11ea2ff81866f4d3b7bd6ec3cf45bc8f94fcd7f0b31c + languageName: node + linkType: hard + +"@types/d3-selection@npm:*": + version: 3.0.8 + resolution: "@types/d3-selection@npm:3.0.8" + checksum: 81c091d0ba25048ad3dca95e3c424d568343c0ffb2cf9afb614207ab18c3eb208b3df02fdc296c5944cbdb37ae78cc5a9c5155a9514a92196dfa5649194ee74d + languageName: node + linkType: hard + +"@types/d3-shape@npm:*": + version: 3.1.4 + resolution: "@types/d3-shape@npm:3.1.4" + dependencies: + "@types/d3-path": "npm:*" + checksum: da44d3e89173f1833c8f1618321581999c8394266ac41f25b61a451d381c4add438d9e8134c710adb73e5baea1fbc8db5d82f09ee94087025f2034348fa994dd + languageName: node + linkType: hard + +"@types/d3-time-format@npm:*": + version: 4.0.2 + resolution: "@types/d3-time-format@npm:4.0.2" + checksum: 5d30299aea2d910039cc8662643b7f852e076f5b39cdcb8432285c5c59501ba70c8c969877f6fc86b92be1b7c77972c0588ce75ddd8b94c72030b5c0b8291f4b + languageName: node + linkType: hard + +"@types/d3-time@npm:*": + version: 3.0.2 + resolution: "@types/d3-time@npm:3.0.2" + checksum: a3d9fdd4f6cbca7437619ebf7770b550858761454aa00637af519e58ae79cd2643409055d804414a86827342242b611a1b7ed71afc23fecbacd89a2e9646198c + languageName: node + linkType: hard + +"@types/d3-timer@npm:*": + version: 3.0.1 + resolution: "@types/d3-timer@npm:3.0.1" + checksum: e6b986d2e397ea38babd6799b52fb46b5d8554e2a383a8d551b803996a6470032e5c57a92ff961c5fdef71ce2b34ff206b42e9e337edc3b331b898c06d73062b + languageName: node + linkType: hard + +"@types/d3-transition@npm:*": + version: 3.0.6 + resolution: "@types/d3-transition@npm:3.0.6" + dependencies: + "@types/d3-selection": "npm:*" + checksum: 0629454cc7c96da999ade43ba40f810ceb614543b58bcaf7f3484ec4f03698bd7d9f61a319e88c6705faf60de0407779e960b069741e9b786c38432f0133be75 + languageName: node + linkType: hard + +"@types/d3-zoom@npm:*": + version: 3.0.6 + resolution: "@types/d3-zoom@npm:3.0.6" + dependencies: + "@types/d3-interpolate": "npm:*" + "@types/d3-selection": "npm:*" + checksum: dc07f4f7ca35b68dedd510aa152aea5d8ecb590d53a631625226daeb476f4e8c277bad6e28ac9ce08e539eb340b5944455a2614d523c8107436f1e9ef8dabbd1 + languageName: node + linkType: hard + +"@types/d3@npm:7.4.2": + version: 7.4.2 + resolution: "@types/d3@npm:7.4.2" + dependencies: + "@types/d3-array": "npm:*" + "@types/d3-axis": "npm:*" + "@types/d3-brush": "npm:*" + "@types/d3-chord": "npm:*" + "@types/d3-color": "npm:*" + "@types/d3-contour": "npm:*" + "@types/d3-delaunay": "npm:*" + "@types/d3-dispatch": "npm:*" + "@types/d3-drag": "npm:*" + "@types/d3-dsv": "npm:*" + "@types/d3-ease": "npm:*" + "@types/d3-fetch": "npm:*" + "@types/d3-force": "npm:*" + "@types/d3-format": "npm:*" + "@types/d3-geo": "npm:*" + "@types/d3-hierarchy": "npm:*" + "@types/d3-interpolate": "npm:*" + "@types/d3-path": "npm:*" + "@types/d3-polygon": "npm:*" + "@types/d3-quadtree": "npm:*" + "@types/d3-random": "npm:*" + "@types/d3-scale": "npm:*" + "@types/d3-scale-chromatic": "npm:*" + "@types/d3-selection": "npm:*" + "@types/d3-shape": "npm:*" + "@types/d3-time": "npm:*" + "@types/d3-time-format": "npm:*" + "@types/d3-timer": "npm:*" + "@types/d3-transition": "npm:*" + "@types/d3-zoom": "npm:*" + checksum: c87fefb3bbac4a591ea9b32e743a26a9de6ac4c856b6381e3692790438f4e44bc2b85190d789009d1ba5d5e156b483f49b3f53e1070b3725b687a16a51b7f299 + languageName: node + linkType: hard + +"@types/geojson@npm:*": + version: 7946.0.12 + resolution: "@types/geojson@npm:7946.0.12" + checksum: 435ac23d3b66d68d142312be059c4a707bb38927edfe68f38c8051667e72f1f50f02848be5e51b56811c1c85c2ad64b8b38fd3e4c7ab43a591922ebaf3fde641 + languageName: node + linkType: hard + +"@types/node@npm:20.8.9": + version: 20.8.9 + resolution: "@types/node@npm:20.8.9" + dependencies: + undici-types: "npm:~5.26.4" + checksum: 71e0023342272e63c47f3fab6082bd6c89d0b0c4262a1c2d0d52458560077f5c28ef5cfe704306eac43fc2e5111bef4e1cdbf08f565650520fad5e54005a8836 + languageName: node + linkType: hard + +"@types/prop-types@npm:*": + version: 15.7.9 + resolution: "@types/prop-types@npm:15.7.9" + checksum: c7591d3ff7593e243908a07e1d3e2bb6e8879008af5800d8378115a90d0fdf669a1cae72a6d7f69e59c4fa7bb4c8ed61f6ebc1c520fe110c6f2b03ac02414072 + languageName: node + linkType: hard + +"@types/react-dom@npm:18.2.14": + version: 18.2.14 + resolution: "@types/react-dom@npm:18.2.14" + dependencies: + "@types/react": "npm:*" + checksum: c7feb6542dbeb3de18c9c03260229377e0a0d47a3d2c0bb91861996e2353375a45c57de7216edb8b88448584e363677244bd4355ddec45c243e70e777c2a150b + languageName: node + linkType: hard + +"@types/react@npm:*, @types/react@npm:18.2.33": + version: 18.2.33 + resolution: "@types/react@npm:18.2.33" + dependencies: + "@types/prop-types": "npm:*" + "@types/scheduler": "npm:*" + csstype: "npm:^3.0.2" + checksum: 7f84dcf70eed3644973c7a47a63669d9e9ecc8d15b331fb272940a5c7cc322df11995eeeae1edfab5c278083cc3527477aa682c79f26667cfe8cd74481621884 + languageName: node + linkType: hard + +"@types/scheduler@npm:*": + version: 0.16.5 + resolution: "@types/scheduler@npm:0.16.5" + checksum: 5aae67331bb7877edc65f77f205fb03c3808d9e51c186afe26945ce69f4072886629580a751e9ce8573e4a7538d0dfa1e4ce388c7c451fa689a4c592fdf1ea45 + languageName: node + linkType: hard + +"abbrev@npm:^2.0.0": + version: 2.0.0 + resolution: "abbrev@npm:2.0.0" + checksum: ca0a54e35bea4ece0ecb68a47b312e1a9a6f772408d5bcb9051230aaa94b0460671c5b5c9cb3240eb5b7bc94c52476550eb221f65a0bbd0145bdc9f3113a6707 + languageName: node + linkType: hard + +"abort-controller@npm:^3.0.0": + version: 3.0.0 + resolution: "abort-controller@npm:3.0.0" + dependencies: + event-target-shim: "npm:^5.0.0" + checksum: ed84af329f1828327798229578b4fe03a4dd2596ba304083ebd2252666bdc1d7647d66d0b18704477e1f8aa315f055944aa6e859afebd341f12d0a53c37b4b40 + languageName: node + linkType: hard + +"abstract-logging@npm:^2.0.1": + version: 2.0.1 + resolution: "abstract-logging@npm:2.0.1" + checksum: 6967d15e5abbafd17f56eaf30ba8278c99333586fa4f7935fd80e93cfdc006c37fcc819c5d63ee373a12e6cb2d0417f7c3c6b9e42b957a25af9937d26749415e + languageName: node + linkType: hard + +"agent-base@npm:^7.0.2, agent-base@npm:^7.1.0": + version: 7.1.0 + resolution: "agent-base@npm:7.1.0" + dependencies: + debug: "npm:^4.3.4" + checksum: f7828f991470a0cc22cb579c86a18cbae83d8a3cbed39992ab34fc7217c4d126017f1c74d0ab66be87f71455318a8ea3e757d6a37881b8d0f2a2c6aa55e5418f + languageName: node + linkType: hard + +"aggregate-error@npm:^3.0.0": + version: 3.1.0 + resolution: "aggregate-error@npm:3.1.0" + dependencies: + clean-stack: "npm:^2.0.0" + indent-string: "npm:^4.0.0" + checksum: 1101a33f21baa27a2fa8e04b698271e64616b886795fd43c31068c07533c7b3facfcaf4e9e0cab3624bd88f729a592f1c901a1a229c9e490eafce411a8644b79 + languageName: node + linkType: hard + +"ajv-formats@npm:^2.1.1": + version: 2.1.1 + resolution: "ajv-formats@npm:2.1.1" + dependencies: + ajv: "npm:^8.0.0" + peerDependencies: + ajv: ^8.0.0 + peerDependenciesMeta: + ajv: + optional: true + checksum: 70c263ded219bf277ffd9127f793b625f10a46113b2e901e150da41931fcfd7f5592da6d66862f4449bb157ffe65867c3294a7df1d661cc232c4163d5a1718ed + languageName: node + linkType: hard + +"ajv@npm:^8.0.0, ajv@npm:^8.10.0, ajv@npm:^8.11.0": + version: 8.12.0 + resolution: "ajv@npm:8.12.0" + dependencies: + fast-deep-equal: "npm:^3.1.1" + json-schema-traverse: "npm:^1.0.0" + require-from-string: "npm:^2.0.2" + uri-js: "npm:^4.2.2" + checksum: b406f3b79b5756ac53bfe2c20852471b08e122bc1ee4cde08ae4d6a800574d9cd78d60c81c69c63ff81e4da7cd0b638fafbb2303ae580d49cf1600b9059efb85 + 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-regex@npm:^6.0.1": + version: 6.0.1 + resolution: "ansi-regex@npm:6.0.1" + checksum: 1ff8b7667cded1de4fa2c9ae283e979fc87036864317da86a2e546725f96406746411d0d85e87a2d12fa5abd715d90006de7fa4fa0477c92321ad3b4c7d4e169 + languageName: node + linkType: hard + +"ansi-styles@npm:^4.0.0": + version: 4.3.0 + resolution: "ansi-styles@npm:4.3.0" + dependencies: + color-convert: "npm:^2.0.1" + checksum: b4494dfbfc7e4591b4711a396bd27e540f8153914123dccb4cdbbcb514015ada63a3809f362b9d8d4f6b17a706f1d7bea3c6f974b15fa5ae76b5b502070889ff + languageName: node + linkType: hard + +"ansi-styles@npm:^6.1.0": + version: 6.2.1 + resolution: "ansi-styles@npm:6.2.1" + checksum: 70fdf883b704d17a5dfc9cde206e698c16bcd74e7f196ab821511651aee4f9f76c9514bdfa6ca3a27b5e49138b89cb222a28caf3afe4567570139577f991df32 + languageName: node + linkType: hard + +"anymatch@npm:~3.1.2": + version: 3.1.3 + resolution: "anymatch@npm:3.1.3" + dependencies: + normalize-path: "npm:^3.0.0" + picomatch: "npm:^2.0.4" + checksum: 3e044fd6d1d26545f235a9fe4d7a534e2029d8e59fa7fd9f2a6eb21230f6b5380ea1eaf55136e60cbf8e613544b3b766e7a6fa2102e2a3a117505466e3025dc2 + languageName: node + linkType: hard + +"archy@npm:^1.0.0": + version: 1.0.0 + resolution: "archy@npm:1.0.0" + checksum: d7928049a57988b86df3f4de75ca16a4252ccee591d085c627e649fc54c5ae5daa833f17aa656bd825bd00bc0a2756ae03d2b983050bdbda1046b6d832bf7303 + languageName: node + linkType: hard + +"atomic-sleep@npm:^1.0.0": + version: 1.0.0 + resolution: "atomic-sleep@npm:1.0.0" + checksum: 3ab6d2cf46b31394b4607e935ec5c1c3c4f60f3e30f0913d35ea74b51b3585e84f590d09e58067f11762eec71c87d25314ce859030983dc0e4397eed21daa12e + languageName: node + linkType: hard + +"avvio@npm:^8.2.0": + version: 8.2.1 + resolution: "avvio@npm:8.2.1" + dependencies: + archy: "npm:^1.0.0" + debug: "npm:^4.0.0" + fastq: "npm:^1.6.1" + checksum: 8826436901e0a7f8e2d6d9f959db6610f5c63a3eebd1e48f9517b50ed5cc07d44b3ddab2671ad29d128d9c4068235d379c5567b2ec4ce5e791e44b35d0ee108e + languageName: node + linkType: hard + +"balanced-match@npm:^1.0.0": + version: 1.0.2 + resolution: "balanced-match@npm:1.0.2" + checksum: 9706c088a283058a8a99e0bf91b0a2f75497f185980d9ffa8b304de1d9e58ebda7c72c07ebf01dadedaac5b2907b2c6f566f660d62bd336c3468e960403b9d65 + languageName: node + linkType: hard + +"base64-js@npm:^1.3.1": + version: 1.5.1 + resolution: "base64-js@npm:1.5.1" + checksum: 669632eb3745404c2f822a18fc3a0122d2f9a7a13f7fb8b5823ee19d1d2ff9ee5b52c53367176ea4ad093c332fd5ab4bd0ebae5a8e27917a4105a4cfc86b1005 + languageName: node + linkType: hard + +"binary-extensions@npm:^2.0.0": + version: 2.2.0 + resolution: "binary-extensions@npm:2.2.0" + checksum: ccd267956c58d2315f5d3ea6757cf09863c5fc703e50fbeb13a7dc849b812ef76e3cf9ca8f35a0c48498776a7478d7b4a0418e1e2b8cb9cb9731f2922aaad7f8 + languageName: node + linkType: hard + +"bl@npm:^5.0.0": + version: 5.1.0 + resolution: "bl@npm:5.1.0" + dependencies: + buffer: "npm:^6.0.3" + inherits: "npm:^2.0.4" + readable-stream: "npm:^3.4.0" + checksum: 0340d3d70def4213cd9cbcd8592f7c5922d3668e7b231286c354613fac4a8411ad373cff26e06162da7423035bbd5caafce3e140a5f397be72fcd1e9d86f1179 + languageName: node + linkType: hard + +"brace-expansion@npm:^2.0.1": + version: 2.0.1 + resolution: "brace-expansion@npm:2.0.1" + dependencies: + balanced-match: "npm:^1.0.0" + checksum: a61e7cd2e8a8505e9f0036b3b6108ba5e926b4b55089eeb5550cd04a471fe216c96d4fe7e4c7f995c728c554ae20ddfc4244cad10aef255e72b62930afd233d1 + languageName: node + linkType: hard + +"braces@npm:~3.0.2": + version: 3.0.2 + resolution: "braces@npm:3.0.2" + dependencies: + fill-range: "npm:^7.0.1" + checksum: 966b1fb48d193b9d155f810e5efd1790962f2c4e0829f8440b8ad236ba009222c501f70185ef732fef17a4c490bb33a03b90dab0631feafbdf447da91e8165b1 + languageName: node + linkType: hard + +"buffer-from@npm:^1.0.0": + version: 1.1.2 + resolution: "buffer-from@npm:1.1.2" + checksum: 0448524a562b37d4d7ed9efd91685a5b77a50672c556ea254ac9a6d30e3403a517d8981f10e565db24e8339413b43c97ca2951f10e399c6125a0d8911f5679bb + languageName: node + linkType: hard + +"buffer@npm:^6.0.3": + version: 6.0.3 + resolution: "buffer@npm:6.0.3" + dependencies: + base64-js: "npm:^1.3.1" + ieee754: "npm:^1.2.1" + checksum: b6bc68237ebf29bdacae48ce60e5e28fc53ae886301f2ad9496618efac49427ed79096750033e7eab1897a4f26ae374ace49106a5758f38fb70c78c9fda2c3b1 + languageName: node + linkType: hard + +"busboy@npm:1.6.0": + version: 1.6.0 + resolution: "busboy@npm:1.6.0" + dependencies: + streamsearch: "npm:^1.1.0" + checksum: bee10fa10ea58e7e3e7489ffe4bda6eacd540a17de9f9cd21cc37e297b2dd9fe52b2715a5841afaec82900750d810d01d7edb4b2d456427f449b92b417579763 + languageName: node + linkType: hard + +"cacache@npm:^18.0.0": + version: 18.0.0 + resolution: "cacache@npm:18.0.0" + dependencies: + "@npmcli/fs": "npm:^3.1.0" + fs-minipass: "npm:^3.0.0" + glob: "npm:^10.2.2" + lru-cache: "npm:^10.0.1" + minipass: "npm:^7.0.3" + minipass-collect: "npm:^1.0.2" + minipass-flush: "npm:^1.0.5" + minipass-pipeline: "npm:^1.2.4" + p-map: "npm:^4.0.0" + ssri: "npm:^10.0.0" + tar: "npm:^6.1.11" + unique-filename: "npm:^3.0.0" + checksum: b71fefe97b9799a863dc48ac79da2bd57a724ff0922fddd3aef4f3b70395ba00d1ef9547a0594d3d6d3cd57aeaeaf4d938c54f89695053eb2198cf8758b47511 + languageName: node + linkType: hard + +"call-me-maybe@npm:^1.0.1": + version: 1.0.2 + resolution: "call-me-maybe@npm:1.0.2" + checksum: 3d375b6f810a82c751157b199daba60452876186c19ac653e81bfc5fc10d1e2ba7aedb8622367c3a8aca6879f0e6a29435a1193b35edb8f7fd8267a67ea32373 + languageName: node + linkType: hard + +"caniuse-lite@npm:^1.0.30001406": + version: 1.0.30001559 + resolution: "caniuse-lite@npm:1.0.30001559" + checksum: 1ebeafb957b58e863b673ec2e78ea228ab43a24e4644a7050497dc5f798bdd9e4c510138c0807b65af8653c145cd09a9dff65faa1a9b34e30927dc4b67327122 + languageName: node + linkType: hard + +"chalk@npm:^5.0.0, chalk@npm:^5.3.0": + version: 5.3.0 + resolution: "chalk@npm:5.3.0" + checksum: 6373caaab21bd64c405bfc4bd9672b145647fc9482657b5ea1d549b3b2765054e9d3d928870cdf764fb4aad67555f5061538ff247b8310f110c5c888d92397ea + languageName: node + linkType: hard + +"chokidar@npm:^3.3.1": + version: 3.5.3 + resolution: "chokidar@npm:3.5.3" + dependencies: + anymatch: "npm:~3.1.2" + braces: "npm:~3.0.2" + fsevents: "npm:~2.3.2" + glob-parent: "npm:~5.1.2" + is-binary-path: "npm:~2.1.0" + is-glob: "npm:~4.0.1" + normalize-path: "npm:~3.0.0" + readdirp: "npm:~3.6.0" + dependenciesMeta: + fsevents: + optional: true + checksum: 863e3ff78ee7a4a24513d2a416856e84c8e4f5e60efbe03e8ab791af1a183f569b62fc6f6b8044e2804966cb81277ddbbc1dc374fba3265bd609ea8efd62f5b3 + languageName: node + linkType: hard + +"chownr@npm:^2.0.0": + version: 2.0.0 + resolution: "chownr@npm:2.0.0" + checksum: c57cf9dd0791e2f18a5ee9c1a299ae6e801ff58fee96dc8bfd0dcb4738a6ce58dd252a3605b1c93c6418fe4f9d5093b28ffbf4d66648cb2a9c67eaef9679be2f + 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 + +"cli-cursor@npm:^4.0.0": + version: 4.0.0 + resolution: "cli-cursor@npm:4.0.0" + dependencies: + restore-cursor: "npm:^4.0.0" + checksum: ab3f3ea2076e2176a1da29f9d64f72ec3efad51c0960898b56c8a17671365c26e67b735920530eaf7328d61f8bd41c27f46b9cf6e4e10fe2fa44b5e8c0e392cc + languageName: node + linkType: hard + +"cli-spinners@npm:^2.9.0": + version: 2.9.1 + resolution: "cli-spinners@npm:2.9.1" + checksum: 80b7b21f2e713729041b26afd02cd881a05ba83d0973c60d332e6010261a732a42d039bdf401dec32645cba41a69324880bbbd999c8876b1eb9888451137df01 + languageName: node + linkType: hard + +"client-only@npm:0.0.1": + version: 0.0.1 + resolution: "client-only@npm:0.0.1" + checksum: 0c16bf660dadb90610553c1d8946a7fdfb81d624adea073b8440b7d795d5b5b08beb3c950c6a2cf16279365a3265158a236876d92bce16423c485c322d7dfaf8 + languageName: node + linkType: hard + +"color-convert@npm:^2.0.1": + version: 2.0.1 + resolution: "color-convert@npm:2.0.1" + dependencies: + color-name: "npm:~1.1.4" + checksum: fa00c91b4332b294de06b443923246bccebe9fab1b253f7fe1772d37b06a2269b4039a85e309abe1fe11b267b11c08d1d0473fda3badd6167f57313af2887a64 + languageName: node + linkType: hard + +"color-name@npm:~1.1.4": + version: 1.1.4 + resolution: "color-name@npm:1.1.4" + checksum: b0445859521eb4021cd0fb0cc1a75cecf67fceecae89b63f62b201cca8d345baf8b952c966862a9d9a2632987d4f6581f0ec8d957dfacece86f0a7919316f610 + languageName: node + linkType: hard + +"commander@npm:11.1.0": + version: 11.1.0 + resolution: "commander@npm:11.1.0" + checksum: 66bd2d8a0547f6cb1d34022efb25f348e433b0e04ad76a65279b1b09da108f59a4d3001ca539c60a7a46ea38bcf399fc17d91adad76a8cf43845d8dcbaf5cda1 + languageName: node + linkType: hard + +"commander@npm:7": + version: 7.2.0 + resolution: "commander@npm:7.2.0" + checksum: 9973af10727ad4b44f26703bf3e9fdc323528660a7590efe3aa9ad5042b4584c0deed84ba443f61c9d6f02dade54a5a5d3c95e306a1e1630f8374ae6db16c06d + languageName: node + linkType: hard + +"commander@npm:^6.2.0": + version: 6.2.1 + resolution: "commander@npm:6.2.1" + checksum: 25b88c2efd0380c84f7844b39cf18510da7bfc5013692d68cdc65f764a1c34e6c8a36ea6d72b6620e3710a930cf8fab2695bdec2bf7107a0f4fa30a3ef3b7d0e + languageName: node + linkType: hard + +"content-disposition@npm:^0.5.3": + version: 0.5.4 + resolution: "content-disposition@npm:0.5.4" + dependencies: + safe-buffer: "npm:5.2.1" + checksum: b7f4ce176e324f19324be69b05bf6f6e411160ac94bc523b782248129eb1ef3be006f6cff431aaea5e337fe5d176ce8830b8c2a1b721626ead8933f0cbe78720 + languageName: node + linkType: hard + +"cookie@npm:^0.5.0": + version: 0.5.0 + resolution: "cookie@npm:0.5.0" + checksum: aae7911ddc5f444a9025fbd979ad1b5d60191011339bce48e555cb83343d0f98b865ff5c4d71fecdfb8555a5cafdc65632f6fce172f32aaf6936830a883a0380 + languageName: node + linkType: hard + +"cross-spawn@npm:^7.0.0, cross-spawn@npm:^7.0.3": + version: 7.0.3 + resolution: "cross-spawn@npm:7.0.3" + dependencies: + path-key: "npm:^3.1.0" + shebang-command: "npm:^2.0.0" + which: "npm:^2.0.1" + checksum: e1a13869d2f57d974de0d9ef7acbf69dc6937db20b918525a01dacb5032129bd552d290d886d981e99f1b624cb03657084cc87bd40f115c07ecf376821c729ce + languageName: node + linkType: hard + +"crypto-random-string@npm:^4.0.0": + version: 4.0.0 + resolution: "crypto-random-string@npm:4.0.0" + dependencies: + type-fest: "npm:^1.0.1" + checksum: cd5d7ae13803de53680aaed4c732f67209af5988cbeec5f6b29082020347c2d8849ca921b2008be7d6bd1d9d198c3c3697e7441d6d0d3da1bf51e9e4d2032149 + languageName: node + linkType: hard + +"csstype@npm:^3.0.2": + version: 3.1.2 + resolution: "csstype@npm:3.1.2" + checksum: 1f39c541e9acd9562996d88bc9fb62d1cb234786ef11ed275567d4b2bd82e1ceacde25debc8de3d3b4871ae02c2933fa02614004c97190711caebad6347debc2 + languageName: node + linkType: hard + +"d3-array@npm:2 - 3, d3-array@npm:2.10.0 - 3, d3-array@npm:2.5.0 - 3, d3-array@npm:3, d3-array@npm:^3.2.0": + version: 3.2.4 + resolution: "d3-array@npm:3.2.4" + dependencies: + internmap: "npm:1 - 2" + checksum: 5800c467f89634776a5977f6dae3f4e127d91be80f1d07e3e6e35303f9de93e6636d014b234838eea620f7469688d191b3f41207a30040aab750a63c97ec1d7c + languageName: node + linkType: hard + +"d3-axis@npm:3": + version: 3.0.0 + resolution: "d3-axis@npm:3.0.0" + checksum: 15ec43ecbd4e7b606fcda60f67a522e45576dfd6aa83dff47f3e91ef6c8448841a09cd91f630b492250dcec67c6ea64463510ead5e632ff6b827aeefae1d42ad + languageName: node + linkType: hard + +"d3-brush@npm:3": + version: 3.0.0 + resolution: "d3-brush@npm:3.0.0" + dependencies: + d3-dispatch: "npm:1 - 3" + d3-drag: "npm:2 - 3" + d3-interpolate: "npm:1 - 3" + d3-selection: "npm:3" + d3-transition: "npm:3" + checksum: fa3a461b62f0f0ee6fe41f5babf45535a0a8f6d4999f675fb1dce932ee02eff72dec14c7296af31ca15998dc0141ccf5d02aa6499363f8bf2941d90688a1d644 + languageName: node + linkType: hard + +"d3-chord@npm:3": + version: 3.0.1 + resolution: "d3-chord@npm:3.0.1" + dependencies: + d3-path: "npm:1 - 3" + checksum: 4febcdca4fdc8ba91fc4f7545f4b6321c440150dff80c1ebef887db07bb4200395dfebede63b257393259de07f914da10842da5ab3135e1e281e33ad153e0849 + languageName: node + linkType: hard + +"d3-color@npm:1 - 3, d3-color@npm:3": + version: 3.1.0 + resolution: "d3-color@npm:3.1.0" + checksum: 536ba05bfd9f4fcd6fa289b5974f5c846b21d186875684637e22bf6855e6aba93e24a2eb3712985c6af3f502fbbfa03708edb72f58142f626241a8a17258e545 + languageName: node + linkType: hard + +"d3-contour@npm:4": + version: 4.0.2 + resolution: "d3-contour@npm:4.0.2" + dependencies: + d3-array: "npm:^3.2.0" + checksum: 0b252267e0c3c5e97d7e0c720bd35654de99f981199f7240d7dd1acfd4e2d5bf1638829f6db486452eff9c38608efa4a6ab5a0d1525131735c011ee7be3cb4ba + languageName: node + linkType: hard + +"d3-delaunay@npm:6": + version: 6.0.4 + resolution: "d3-delaunay@npm:6.0.4" + dependencies: + delaunator: "npm:5" + checksum: 4588e2872d4154daaf2c3f34fefe74e43b909cc460238a7b02823907ca6dd109f2c488c57c8551f1a2607fe4b44fdf24e3a190cea29bca70ef5606678dd9e2de + languageName: node + linkType: hard + +"d3-dispatch@npm:1 - 3, d3-dispatch@npm:3": + version: 3.0.1 + resolution: "d3-dispatch@npm:3.0.1" + checksum: 2b82f41bf4ef88c2f9033dfe32815b67e2ef1c5754a74137a74c7d44d6f0d6ecfa934ac56ed8afe358f6c1f06462e8aa42ca0a388397b5b77a42721570e80487 + languageName: node + linkType: hard + +"d3-drag@npm:2 - 3, d3-drag@npm:3": + version: 3.0.0 + resolution: "d3-drag@npm:3.0.0" + dependencies: + d3-dispatch: "npm:1 - 3" + d3-selection: "npm:3" + checksum: 80bc689935e5a46ee92b2d7f71e1c792279382affed9fbcf46034bff3ff7d3f50cf61a874da4bdf331037292b9e7dca5c6401a605d4bb699fdcb4e0c87e176ec + languageName: node + linkType: hard + +"d3-dsv@npm:1 - 3, d3-dsv@npm:3": + version: 3.0.1 + resolution: "d3-dsv@npm:3.0.1" + dependencies: + commander: "npm:7" + iconv-lite: "npm:0.6" + rw: "npm:1" + bin: + csv2json: bin/dsv2json.js + csv2tsv: bin/dsv2dsv.js + dsv2dsv: bin/dsv2dsv.js + dsv2json: bin/dsv2json.js + json2csv: bin/json2dsv.js + json2dsv: bin/json2dsv.js + json2tsv: bin/json2dsv.js + tsv2csv: bin/dsv2dsv.js + tsv2json: bin/dsv2json.js + checksum: a628ac42a272466940f713f310db2e5246690b22035121dc1230077070c9135fb7c9b4d260f093fcadf63b0528202a1953107448a4be3a860c4f42f50d09504d + languageName: node + linkType: hard + +"d3-ease@npm:1 - 3, d3-ease@npm:3": + version: 3.0.1 + resolution: "d3-ease@npm:3.0.1" + checksum: 985d46e868494e9e6806fedd20bad712a50dcf98f357bf604a843a9f6bc17714a657c83dd762f183173dcde983a3570fa679b2bc40017d40b24163cdc4167796 + languageName: node + linkType: hard + +"d3-fetch@npm:3": + version: 3.0.1 + resolution: "d3-fetch@npm:3.0.1" + dependencies: + d3-dsv: "npm:1 - 3" + checksum: cd35d55f8fbb1ea1e37be362a575bb0161449957133aa5b45b9891889b2aca1dc0769c240a236736e33cd823e820a0e73fb3744582307a5d26d1df7bed0ccecb + languageName: node + linkType: hard + +"d3-force@npm:3": + version: 3.0.0 + resolution: "d3-force@npm:3.0.0" + dependencies: + d3-dispatch: "npm:1 - 3" + d3-quadtree: "npm:1 - 3" + d3-timer: "npm:1 - 3" + checksum: 85945f8d444d78567009518f0ab54c0f0c8873eb8eb9a2ff0ab667b0f81b419e101a411415d4a2c752547ec7143f89675e8c33b8f111e55e5579a04cb7f4591c + languageName: node + linkType: hard + +"d3-format@npm:1 - 3, d3-format@npm:3": + version: 3.1.0 + resolution: "d3-format@npm:3.1.0" + checksum: a0fe23d2575f738027a3db0ce57160e5a473ccf24808c1ed46d45ef4f3211076b34a18b585547d34e365e78dcc26dd4ab15c069731fc4b1c07a26bfced09ea31 + languageName: node + linkType: hard + +"d3-geo@npm:3": + version: 3.1.0 + resolution: "d3-geo@npm:3.1.0" + dependencies: + d3-array: "npm:2.5.0 - 3" + checksum: d214c2951c327501699b49f73fcbf417284468f41b31cd8f34c1975137a2544e4bb8080f35fa216659dba91c60f35b7bc857cd6b8297cf4f0fd37343269d9f8a + languageName: node + linkType: hard + +"d3-hierarchy@npm:3": + version: 3.1.2 + resolution: "d3-hierarchy@npm:3.1.2" + checksum: 497b79dc6c35e28b21e8a7b94db92876abd1d4ec082d9803a07ea8964e55b0e71c511a21489363a36f1456f069adb8ff7d33c633678730d6ae961ed350b27733 + languageName: node + linkType: hard + +"d3-interpolate@npm:1 - 3, d3-interpolate@npm:1.2.0 - 3, d3-interpolate@npm:3": + version: 3.0.1 + resolution: "d3-interpolate@npm:3.0.1" + dependencies: + d3-color: "npm:1 - 3" + checksum: 988d66497ef5c190cf64f8c80cd66e1e9a58c4d1f8932d776a8e3ae59330291795d5a342f5a97602782ccbef21a5df73bc7faf1f0dc46a5145ba6243a82a0f0e + languageName: node + linkType: hard + +"d3-path@npm:1 - 3, d3-path@npm:3, d3-path@npm:^3.1.0": + version: 3.1.0 + resolution: "d3-path@npm:3.1.0" + checksum: 8e97a9ab4930a05b18adda64cf4929219bac913a5506cf8585631020253b39309549632a5cbeac778c0077994442ddaaee8316ee3f380e7baf7566321b84e76a + languageName: node + linkType: hard + +"d3-polygon@npm:3": + version: 3.0.1 + resolution: "d3-polygon@npm:3.0.1" + checksum: c4fa2ed19dcba13fd341815361d27e64597aa0d38d377e401e1353c4acbe8bd73c0afb3e49a1cf4119fadc3651ec8073d06aa6d0e34e664c868d071e58912cd1 + languageName: node + linkType: hard + +"d3-quadtree@npm:1 - 3, d3-quadtree@npm:3": + version: 3.0.1 + resolution: "d3-quadtree@npm:3.0.1" + checksum: 1915b6a7b031fc312f9af61947072db9468c5a2b03837f6a90b38fdaebcd0ea17a883bffd94d16b8a6848e81711a06222f7d39f129386ef1850297219b8d32ba + languageName: node + linkType: hard + +"d3-random@npm:3": + version: 3.0.1 + resolution: "d3-random@npm:3.0.1" + checksum: 9f41d6ca3a1826cea8d88392917b5039504337d442a4d1357c870fa3031701e60209a2689a6ddae7df8fca824383d038c957eb545bc49a7428c71aaf3b11f56f + languageName: node + linkType: hard + +"d3-scale-chromatic@npm:3": + version: 3.0.0 + resolution: "d3-scale-chromatic@npm:3.0.0" + dependencies: + d3-color: "npm:1 - 3" + d3-interpolate: "npm:1 - 3" + checksum: e4d23a7d2ba48ad5de1d06dcc488f7278304def0ea28a268528923b1d74971260636b5c8fe0e27bc2c51b2a3f95542c248e35028bdb0b7c19ac804eee235d340 + languageName: node + linkType: hard + +"d3-scale@npm:4": + version: 4.0.2 + resolution: "d3-scale@npm:4.0.2" + dependencies: + d3-array: "npm:2.10.0 - 3" + d3-format: "npm:1 - 3" + d3-interpolate: "npm:1.2.0 - 3" + d3-time: "npm:2.1.1 - 3" + d3-time-format: "npm:2 - 4" + checksum: e2dc4243586eae2a0fdf91de1df1a90d51dfacb295933f0ca7e9184c31203b01436bef69906ad40f1100173a5e6197ae753cb7b8a1a8fcfda43194ea9cad6493 + languageName: node + linkType: hard + +"d3-selection@npm:2 - 3, d3-selection@npm:3": + version: 3.0.0 + resolution: "d3-selection@npm:3.0.0" + checksum: 0e5acfd305b31628b7be5009ba7303d84bb34817a88ed4dde9c8bd9c23528573fc5272f89fc04e5be03d2cbf5441a248d7274aaf55a8ef3dad46e16333d72298 + languageName: node + linkType: hard + +"d3-shape@npm:3": + version: 3.2.0 + resolution: "d3-shape@npm:3.2.0" + dependencies: + d3-path: "npm:^3.1.0" + checksum: 2e861f4d4781ee8abd85d2b435f848d667479dcf01a4e0db3a06600a5bdeddedb240f88229ec7b3bf7fa300c2b3526faeaf7e75f9a24dbf4396d3cc5358ff39d + languageName: node + linkType: hard + +"d3-time-format@npm:2 - 4, d3-time-format@npm:4": + version: 4.1.0 + resolution: "d3-time-format@npm:4.1.0" + dependencies: + d3-time: "npm:1 - 3" + checksum: ffc0959258fbb90e3890bfb31b43b764f51502b575e87d0af2c85b85ac379120d246914d07fca9f533d1bcedc27b2841d308a00fd64848c3e2cad9eff5c9a0aa + languageName: node + linkType: hard + +"d3-time@npm:1 - 3, d3-time@npm:2.1.1 - 3, d3-time@npm:3": + version: 3.1.0 + resolution: "d3-time@npm:3.1.0" + dependencies: + d3-array: "npm:2 - 3" + checksum: c110bed295ce63e8180e45b82a9b0ba114d5f33ff315871878f209c1a6d821caa505739a2b07f38d1396637155b8e7372632dacc018e11fbe8ceef58f6af806d + languageName: node + linkType: hard + +"d3-timer@npm:1 - 3, d3-timer@npm:3": + version: 3.0.1 + resolution: "d3-timer@npm:3.0.1" + checksum: 004128602bb187948d72c7dc153f0f063f38ac7a584171de0b45e3a841ad2e17f1e40ad396a4af9cce5551b6ab4a838d5246d23492553843d9da4a4050a911e2 + languageName: node + linkType: hard + +"d3-transition@npm:2 - 3, d3-transition@npm:3": + version: 3.0.1 + resolution: "d3-transition@npm:3.0.1" + dependencies: + d3-color: "npm:1 - 3" + d3-dispatch: "npm:1 - 3" + d3-ease: "npm:1 - 3" + d3-interpolate: "npm:1 - 3" + d3-timer: "npm:1 - 3" + peerDependencies: + d3-selection: 2 - 3 + checksum: 02571636acb82f5532117928a87fe25de68f088c38ab4a8b16e495f0f2d08a3fd2937eaebdefdfcf7f1461545524927d2632d795839b88d2e4c71e387aaaffac + languageName: node + linkType: hard + +"d3-zoom@npm:3": + version: 3.0.0 + resolution: "d3-zoom@npm:3.0.0" + dependencies: + d3-dispatch: "npm:1 - 3" + d3-drag: "npm:2 - 3" + d3-interpolate: "npm:1 - 3" + d3-selection: "npm:2 - 3" + d3-transition: "npm:2 - 3" + checksum: 0e6e5c14e33c4ecdff311a900dd037dea407734f2dd2818988ed6eae342c1799e8605824523678bd404f81e37824cc588f62dbde46912444c89acc7888036c6b + languageName: node + linkType: hard + +"d3@npm:7.8.5": + version: 7.8.5 + resolution: "d3@npm:7.8.5" + dependencies: + d3-array: "npm:3" + d3-axis: "npm:3" + d3-brush: "npm:3" + d3-chord: "npm:3" + d3-color: "npm:3" + d3-contour: "npm:4" + d3-delaunay: "npm:6" + d3-dispatch: "npm:3" + d3-drag: "npm:3" + d3-dsv: "npm:3" + d3-ease: "npm:3" + d3-fetch: "npm:3" + d3-force: "npm:3" + d3-format: "npm:3" + d3-geo: "npm:3" + d3-hierarchy: "npm:3" + d3-interpolate: "npm:3" + d3-path: "npm:3" + d3-polygon: "npm:3" + d3-quadtree: "npm:3" + d3-random: "npm:3" + d3-scale: "npm:4" + d3-scale-chromatic: "npm:3" + d3-selection: "npm:3" + d3-shape: "npm:3" + d3-time: "npm:3" + d3-time-format: "npm:4" + d3-timer: "npm:3" + d3-transition: "npm:3" + d3-zoom: "npm:3" + checksum: d5a0581fae34ce06f065c36bfe4045d2877ec23c413bb40d5b8cc005df9f8ef5ac44ccc13ffae4c4e5159827bb92c09da07e7283c1b7a507072e88b9047a848a + languageName: node + linkType: hard + +"debug@npm:4, debug@npm:^4.0.0, debug@npm:^4.3.4": + version: 4.3.4 + resolution: "debug@npm:4.3.4" + dependencies: + ms: "npm:2.1.2" + peerDependenciesMeta: + supports-color: + optional: true + checksum: 0073c3bcbd9cb7d71dd5f6b55be8701af42df3e56e911186dfa46fac3a5b9eb7ce7f377dd1d3be6db8977221f8eb333d945216f645cf56f6b688cd484837d255 + languageName: node + linkType: hard + +"decode-uri-component@npm:^0.4.1": + version: 0.4.1 + resolution: "decode-uri-component@npm:0.4.1" + checksum: 74eec26f7bec3767164e37d526ef19bc1214cb0bbeeeea1c4f0ceb79299e5c38d3ba734e7243d829842aa140f24e5d020f54cc25b17c7082461c8eead8a72ce3 + languageName: node + linkType: hard + +"delaunator@npm:5": + version: 5.0.0 + resolution: "delaunator@npm:5.0.0" + dependencies: + robust-predicates: "npm:^3.0.0" + checksum: 87f9aa5e2378036377ad924418181261ffb58607f303480b4615a5ef6fe2ecefc79f90db217353f2b79e06ee959bba65940429d4484aa36350bd6bde0fbf5010 + languageName: node + linkType: hard + +"depd@npm:2.0.0": + version: 2.0.0 + resolution: "depd@npm:2.0.0" + checksum: c0c8ff36079ce5ada64f46cc9d6fd47ebcf38241105b6e0c98f412e8ad91f084bcf906ff644cc3a4bd876ca27a62accb8b0fff72ea6ed1a414b89d8506f4a5ca + languageName: node + linkType: hard + +"eastasianwidth@npm:^0.2.0": + version: 0.2.0 + resolution: "eastasianwidth@npm:0.2.0" + checksum: 9b1d3e1baefeaf7d70799db8774149cef33b97183a6addceeba0cf6b85ba23ee2686f302f14482006df32df75d32b17c509c143a3689627929e4a8efaf483952 + languageName: node + linkType: hard + +"emoji-regex@npm:^10.2.1": + version: 10.3.0 + resolution: "emoji-regex@npm:10.3.0" + checksum: b9b084ebe904f13bb4b66ee4c29fb41a7a4a1165adcc33c1ce8056c0194b882cc91ebdc782f1a779b5d7ea7375c5064643a7734893d7c657b44c5c6b9d7bf1e7 + languageName: node + linkType: hard + +"emoji-regex@npm:^8.0.0": + version: 8.0.0 + resolution: "emoji-regex@npm:8.0.0" + checksum: c72d67a6821be15ec11997877c437491c313d924306b8da5d87d2a2bcc2cec9903cb5b04ee1a088460501d8e5b44f10df82fdc93c444101a7610b80c8b6938e1 + languageName: node + linkType: hard + +"emoji-regex@npm:^9.2.2": + version: 9.2.2 + resolution: "emoji-regex@npm:9.2.2" + checksum: 915acf859cea7131dac1b2b5c9c8e35c4849e325a1d114c30adb8cd615970f6dca0e27f64f3a4949d7d6ed86ecd79a1c5c63f02e697513cddd7b5835c90948b8 + languageName: node + linkType: hard + +"encoding@npm:^0.1.13": + version: 0.1.13 + resolution: "encoding@npm:0.1.13" + dependencies: + iconv-lite: "npm:^0.6.2" + checksum: bb98632f8ffa823996e508ce6a58ffcf5856330fde839ae42c9e1f436cc3b5cc651d4aeae72222916545428e54fd0f6aa8862fd8d25bdbcc4589f1e3f3715e7f + languageName: node + linkType: hard + +"env-paths@npm:^2.2.0": + 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: 1d20d825cdcce8d811bfbe86340f4755c02655a7feb2f13f8c880566d9d72a3f6c92c192a6867632e490d6da67b678271f46e01044996a6443e870331100dfdd + languageName: node + linkType: hard + +"es6-promise@npm:^4.1.0": + version: 4.2.8 + resolution: "es6-promise@npm:4.2.8" + checksum: b250c55523c496c43c9216c2646e58ec182b819e036fe5eb8d83fa16f044ecc6b8dcefc88ace2097be3d3c4d02b6aa8eeae1a66deeaf13e7bee905ebabb350a3 + languageName: node + linkType: hard + +"esbuild@npm:~0.18.20": + version: 0.18.20 + resolution: "esbuild@npm:0.18.20" + dependencies: + "@esbuild/android-arm": "npm:0.18.20" + "@esbuild/android-arm64": "npm:0.18.20" + "@esbuild/android-x64": "npm:0.18.20" + "@esbuild/darwin-arm64": "npm:0.18.20" + "@esbuild/darwin-x64": "npm:0.18.20" + "@esbuild/freebsd-arm64": "npm:0.18.20" + "@esbuild/freebsd-x64": "npm:0.18.20" + "@esbuild/linux-arm": "npm:0.18.20" + "@esbuild/linux-arm64": "npm:0.18.20" + "@esbuild/linux-ia32": "npm:0.18.20" + "@esbuild/linux-loong64": "npm:0.18.20" + "@esbuild/linux-mips64el": "npm:0.18.20" + "@esbuild/linux-ppc64": "npm:0.18.20" + "@esbuild/linux-riscv64": "npm:0.18.20" + "@esbuild/linux-s390x": "npm:0.18.20" + "@esbuild/linux-x64": "npm:0.18.20" + "@esbuild/netbsd-x64": "npm:0.18.20" + "@esbuild/openbsd-x64": "npm:0.18.20" + "@esbuild/sunos-x64": "npm:0.18.20" + "@esbuild/win32-arm64": "npm:0.18.20" + "@esbuild/win32-ia32": "npm:0.18.20" + "@esbuild/win32-x64": "npm:0.18.20" + dependenciesMeta: + "@esbuild/android-arm": + optional: true + "@esbuild/android-arm64": + optional: true + "@esbuild/android-x64": + optional: true + "@esbuild/darwin-arm64": + optional: true + "@esbuild/darwin-x64": + optional: true + "@esbuild/freebsd-arm64": + optional: true + "@esbuild/freebsd-x64": + optional: true + "@esbuild/linux-arm": + optional: true + "@esbuild/linux-arm64": + optional: true + "@esbuild/linux-ia32": + optional: true + "@esbuild/linux-loong64": + optional: true + "@esbuild/linux-mips64el": + optional: true + "@esbuild/linux-ppc64": + optional: true + "@esbuild/linux-riscv64": + optional: true + "@esbuild/linux-s390x": + optional: true + "@esbuild/linux-x64": + optional: true + "@esbuild/netbsd-x64": + optional: true + "@esbuild/openbsd-x64": + optional: true + "@esbuild/sunos-x64": + optional: true + "@esbuild/win32-arm64": + optional: true + "@esbuild/win32-ia32": + optional: true + "@esbuild/win32-x64": + optional: true + bin: + esbuild: bin/esbuild + checksum: 1f723ec71c3aa196473bf3298316eedc3f62d523924652dfeb60701b609792f918fc60db84b420d1d8ba9bfa7d69de2fc1d3157ba47c028bdae5d507a26a3c64 + 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 + +"event-target-shim@npm:^5.0.0": + version: 5.0.1 + resolution: "event-target-shim@npm:5.0.1" + checksum: 49ff46c3a7facbad3decb31f597063e761785d7fdb3920d4989d7b08c97a61c2f51183e2f3a03130c9088df88d4b489b1b79ab632219901f184f85158508f4c8 + languageName: node + linkType: hard + +"events@npm:^3.3.0": + version: 3.3.0 + resolution: "events@npm:3.3.0" + checksum: a3d47e285e28d324d7180f1e493961a2bbb4cad6412090e4dec114f4db1f5b560c7696ee8e758f55e23913ede856e3689cd3aa9ae13c56b5d8314cd3b3ddd1be + languageName: node + linkType: hard + +"execa@npm:8.0.1": + version: 8.0.1 + resolution: "execa@npm:8.0.1" + dependencies: + cross-spawn: "npm:^7.0.3" + get-stream: "npm:^8.0.1" + human-signals: "npm:^5.0.0" + is-stream: "npm:^3.0.0" + merge-stream: "npm:^2.0.0" + npm-run-path: "npm:^5.1.0" + onetime: "npm:^6.0.0" + signal-exit: "npm:^4.1.0" + strip-final-newline: "npm:^3.0.0" + checksum: d2ab5fe1e2bb92b9788864d0713f1fce9a07c4594e272c0c97bc18c90569897ab262e4ea58d27a694d288227a2e24f16f5e2575b44224ad9983b799dc7f1098d + languageName: node + linkType: hard + +"exponential-backoff@npm:^3.1.1": + version: 3.1.1 + resolution: "exponential-backoff@npm:3.1.1" + checksum: 2d9bbb6473de7051f96790d5f9a678f32e60ed0aa70741dc7fdc96fec8d631124ec3374ac144387604f05afff9500f31a1d45bd9eee4cdc2e4f9ad2d9b9d5dbd + languageName: node + linkType: hard + +"fast-content-type-parse@npm:^1.0.0": + version: 1.1.0 + resolution: "fast-content-type-parse@npm:1.1.0" + checksum: 8637228a19b11296992af5d9b5f5ae84c6f27a465cf36a901b303b784ce0ca6f10502375da59958eb2b9c4949b98e5cc460ecb4bd777d22c3fa236c1e8da1ed8 + languageName: node + linkType: hard + +"fast-decode-uri-component@npm:^1.0.1": + version: 1.0.1 + resolution: "fast-decode-uri-component@npm:1.0.1" + checksum: 4b6ed26974414f688be4a15eab6afa997bad4a7c8605cb1deb928b28514817b4523a1af0fa06621c6cbfedb7e5615144c2c3e7512860e3a333a31a28d537dca7 + languageName: node + 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-json-stringify@npm:^5.7.0": + version: 5.8.0 + resolution: "fast-json-stringify@npm:5.8.0" + dependencies: + "@fastify/deepmerge": "npm:^1.0.0" + ajv: "npm:^8.10.0" + ajv-formats: "npm:^2.1.1" + fast-deep-equal: "npm:^3.1.3" + fast-uri: "npm:^2.1.0" + rfdc: "npm:^1.2.0" + checksum: dee6d0929cee6acb79d184208012098934248da1cbe73d359c39b923da7d887a50f0689b381bf8ff3e5ea79a83e70d5b99271639f367f970ee14bc72af156ec0 + languageName: node + linkType: hard + +"fast-querystring@npm:^1.0.0": + version: 1.1.2 + resolution: "fast-querystring@npm:1.1.2" + dependencies: + fast-decode-uri-component: "npm:^1.0.1" + checksum: 981da9b914f2b639dc915bdfa4f34ab028b967d428f02fbd293d99258593fde69c48eea73dfa03ced088268e0a8045c642e8debcd9b4821ebd125e130a0430c7 + languageName: node + linkType: hard + +"fast-redact@npm:^3.1.1": + version: 3.3.0 + resolution: "fast-redact@npm:3.3.0" + checksum: a69c5cb52396eafc4f466f46864406cbd4a6ead6782caf74750ce817794829048baaa933ad98543e744dd54ffb4cddff71f3e75e465a86e3d887894e281ec154 + languageName: node + linkType: hard + +"fast-uri@npm:^2.0.0, fast-uri@npm:^2.1.0": + version: 2.3.0 + resolution: "fast-uri@npm:2.3.0" + checksum: df7377c0cccce75737a6db35955516d0f717b864f13b1e3f5ed7acf0f695f609820cebe3eceb01d994044fd3b10aacee3ad15aa5cd7dfc8f350d5811049bc78a + languageName: node + linkType: hard + +"fastify-plugin@npm:^4.0.0": + version: 4.5.1 + resolution: "fastify-plugin@npm:4.5.1" + checksum: 7c6d777ada0f01c8a1166a2a669cccfd6074c7764121f07cce997745f198227a271c7a317aaf0da273b329f24307f0eba3f093d872d29b839b33deb525bbafe2 + languageName: node + linkType: hard + +"fastify@npm:4.15.0": + version: 4.15.0 + resolution: "fastify@npm:4.15.0" + dependencies: + "@fastify/ajv-compiler": "npm:^3.5.0" + "@fastify/error": "npm:^3.0.0" + "@fastify/fast-json-stringify-compiler": "npm:^4.2.0" + abstract-logging: "npm:^2.0.1" + avvio: "npm:^8.2.0" + fast-content-type-parse: "npm:^1.0.0" + find-my-way: "npm:^7.6.0" + light-my-request: "npm:^5.6.1" + pino: "npm:^8.5.0" + process-warning: "npm:^2.0.0" + proxy-addr: "npm:^2.0.7" + rfdc: "npm:^1.3.0" + secure-json-parse: "npm:^2.5.0" + semver: "npm:^7.3.7" + tiny-lru: "npm:^10.0.0" + checksum: be55fba996c8a78cedf209408115fa546b82b678d8bd4c27228144a90e3b6d7a936072c38ec812a82a6d255cf5df36aa807e7cb4d9250de530610e0f700ede7e + languageName: node + linkType: hard + +"fastq@npm:^1.6.1": + version: 1.15.0 + resolution: "fastq@npm:1.15.0" + dependencies: + reusify: "npm:^1.0.4" + checksum: 67c01b1c972e2d5b6fea197a1a39d5d582982aea69ff4c504badac71080d8396d4843b165a9686e907c233048f15a86bbccb0e7f83ba771f6fa24bcde059d0c3 + languageName: node + linkType: hard + +"fill-range@npm:^7.0.1": + version: 7.0.1 + resolution: "fill-range@npm:7.0.1" + dependencies: + to-regex-range: "npm:^5.0.1" + checksum: e260f7592fd196b4421504d3597cc76f4a1ca7a9488260d533b611fc3cefd61e9a9be1417cb82d3b01ad9f9c0ff2dbf258e1026d2445e26b0cf5148ff4250429 + languageName: node + linkType: hard + +"filter-obj@npm:^5.1.0": + version: 5.1.0 + resolution: "filter-obj@npm:5.1.0" + checksum: 8f6dab6d8d8855f686e8cc6be289bbbd64a80be52c660124e36e982f78017cf5dae7de95f79ec167fbf62101d6aab93067a3105ae8f56251785a721e678d6b07 + languageName: node + linkType: hard + +"find-my-way@npm:^7.6.0": + version: 7.7.0 + resolution: "find-my-way@npm:7.7.0" + dependencies: + fast-deep-equal: "npm:^3.1.3" + fast-querystring: "npm:^1.0.0" + safe-regex2: "npm:^2.0.0" + checksum: 0b634bce3374de9f3ae660231a963f858cc271bd95c914b941ba1a5fb53d3f978cf71708de6d454ead72c99745a147dd621616645b3d4bf39e4395efe6b42d91 + languageName: node + linkType: hard + +"find-up@npm:^6.3.0": + version: 6.3.0 + resolution: "find-up@npm:6.3.0" + dependencies: + locate-path: "npm:^7.1.0" + path-exists: "npm:^5.0.0" + checksum: 4f3bdc30d41778c647e53f4923e72de5e5fb055157031f34501c5b36c2eb59f77b997edf9cb00165c6060cda7eaa2e3da82cb6be2e61d68ad3e07c4bc4cce67e + languageName: node + linkType: hard + +"foreground-child@npm:^3.1.0": + version: 3.1.1 + resolution: "foreground-child@npm:3.1.1" + dependencies: + cross-spawn: "npm:^7.0.0" + signal-exit: "npm:^4.0.1" + checksum: 087edd44857d258c4f73ad84cb8df980826569656f2550c341b27adf5335354393eec24ea2fabd43a253233fb27cee177ebe46bd0b7ea129c77e87cb1e9936fb + languageName: node + linkType: hard + +"forwarded@npm:0.2.0": + version: 0.2.0 + resolution: "forwarded@npm:0.2.0" + checksum: 29ba9fd347117144e97cbb8852baae5e8b2acb7d1b591ef85695ed96f5b933b1804a7fac4a15dd09ca7ac7d0cdc104410e8102aae2dd3faa570a797ba07adb81 + languageName: node + linkType: hard + +"fs-extra@npm:^7.0.1": + version: 7.0.1 + resolution: "fs-extra@npm:7.0.1" + dependencies: + graceful-fs: "npm:^4.1.2" + jsonfile: "npm:^4.0.0" + universalify: "npm:^0.1.0" + checksum: 3fc6e56ba2f07c00d452163f27f21a7076b72ef7da8a50fef004336d59ef4c34deda11d10ecd73fd8fbcf20e4f575f52857293090b3c9f8741d4e0598be30fea + languageName: node + linkType: hard + +"fs-minipass@npm:^2.0.0": + version: 2.1.0 + resolution: "fs-minipass@npm:2.1.0" + dependencies: + minipass: "npm:^3.0.0" + checksum: 03191781e94bc9a54bd376d3146f90fe8e082627c502185dbf7b9b3032f66b0b142c1115f3b2cc5936575fc1b44845ce903dd4c21bec2a8d69f3bd56f9cee9ec + languageName: node + linkType: hard + +"fs-minipass@npm:^3.0.0": + version: 3.0.3 + resolution: "fs-minipass@npm:3.0.3" + dependencies: + minipass: "npm:^7.0.3" + checksum: af143246cf6884fe26fa281621d45cfe111d34b30535a475bfa38dafe343dadb466c047a924ffc7d6b7b18265df4110224ce3803806dbb07173bf2087b648d7f + languageName: node + linkType: hard + +"fs.realpath@npm:^1.0.0": + version: 1.0.0 + resolution: "fs.realpath@npm:1.0.0" + checksum: e703107c28e362d8d7b910bbcbfd371e640a3bb45ae157a362b5952c0030c0b6d4981140ec319b347bce7adc025dd7813da1ff908a945ac214d64f5402a51b96 + languageName: node + linkType: hard + +"fsevents@npm:~2.3.2, fsevents@npm:~2.3.3": + version: 2.3.3 + resolution: "fsevents@npm:2.3.3" + dependencies: + node-gyp: "npm:latest" + checksum: 4c1ade961ded57cdbfbb5cac5106ec17bc8bccd62e16343c569a0ceeca83b9dfef87550b4dc5cbb89642da412b20c5071f304c8c464b80415446e8e155a038c0 + conditions: os=darwin + languageName: node + linkType: hard + +"fsevents@patch:fsevents@npm%3A~2.3.2#optional!builtin, fsevents@patch:fsevents@npm%3A~2.3.3#optional!builtin": + version: 2.3.3 + resolution: "fsevents@patch:fsevents@npm%3A2.3.3#optional!builtin::version=2.3.3&hash=df0bf1" + dependencies: + node-gyp: "npm:latest" + conditions: os=darwin + languageName: node + linkType: hard + +"get-stream@npm:^8.0.1": + version: 8.0.1 + resolution: "get-stream@npm:8.0.1" + checksum: dde5511e2e65a48e9af80fea64aff11b4921b14b6e874c6f8294c50975095af08f41bfb0b680c887f28b566dd6ec2cb2f960f9d36a323359be324ce98b766e9e + languageName: node + linkType: hard + +"get-tsconfig@npm:^4.7.2": + version: 4.7.2 + resolution: "get-tsconfig@npm:4.7.2" + dependencies: + resolve-pkg-maps: "npm:^1.0.0" + checksum: f21135848fb5d16012269b7b34b186af7a41824830f8616aba17a15eb4d9e54fdc876833f1e21768395215a826c8145582f5acd594ae2b4de3284d10b38d20f8 + languageName: node + linkType: hard + +"glob-parent@npm:~5.1.2": + version: 5.1.2 + resolution: "glob-parent@npm:5.1.2" + dependencies: + is-glob: "npm:^4.0.1" + checksum: 32cd106ce8c0d83731966d31517adb766d02c3812de49c30cfe0675c7c0ae6630c11214c54a5ae67aca882cf738d27fd7768f21aa19118b9245950554be07247 + languageName: node + linkType: hard + +"glob-to-regexp@npm:^0.3.0": + version: 0.3.0 + resolution: "glob-to-regexp@npm:0.3.0" + checksum: a716708f7887a1d3c46188dbbd5baf6b1647fa670e458d49db949369e20eb79fad9828d6601f618455f87fd13041b6087b01233d95ba7092aba7acb7491c9d39 + languageName: node + linkType: hard + +"glob-to-regexp@npm:^0.4.1": + version: 0.4.1 + resolution: "glob-to-regexp@npm:0.4.1" + checksum: 9009529195a955c40d7b9690794aeff5ba665cc38f1519e111c58bb54366fd0c106bde80acf97ba4e533208eb53422c83b136611a54c5fefb1edd8dc267cb62e + languageName: node + linkType: hard + +"glob@npm:^10.2.2, glob@npm:^10.3.10": + version: 10.3.10 + resolution: "glob@npm:10.3.10" + dependencies: + foreground-child: "npm:^3.1.0" + jackspeak: "npm:^2.3.5" + minimatch: "npm:^9.0.1" + minipass: "npm:^5.0.0 || ^6.0.2 || ^7.0.0" + path-scurry: "npm:^1.10.1" + bin: + glob: dist/esm/bin.mjs + checksum: 38bdb2c9ce75eb5ed168f309d4ed05b0798f640b637034800a6bf306f39d35409bf278b0eaaffaec07591085d3acb7184a201eae791468f0f617771c2486a6a8 + languageName: node + linkType: hard + +"glob@npm:^8.0.1": + version: 8.1.0 + resolution: "glob@npm:8.1.0" + dependencies: + fs.realpath: "npm:^1.0.0" + inflight: "npm:^1.0.4" + inherits: "npm:2" + minimatch: "npm:^5.0.1" + once: "npm:^1.3.0" + checksum: 9aab1c75eb087c35dbc41d1f742e51d0507aa2b14c910d96fb8287107a10a22f4bbdce26fc0a3da4c69a20f7b26d62f1640b346a4f6e6becfff47f335bb1dc5e + languageName: node + linkType: hard + +"graceful-fs@npm:^4.1.2, graceful-fs@npm:^4.1.6, graceful-fs@npm:^4.2.6": + version: 4.2.11 + resolution: "graceful-fs@npm:4.2.11" + checksum: bf152d0ed1dc159239db1ba1f74fdbc40cb02f626770dcd5815c427ce0688c2635a06ed69af364396da4636d0408fcf7d4afdf7881724c3307e46aff30ca49e2 + languageName: node + linkType: hard + +"http-cache-semantics@npm:^4.1.1": + version: 4.1.1 + resolution: "http-cache-semantics@npm:4.1.1" + checksum: 362d5ed66b12ceb9c0a328fb31200b590ab1b02f4a254a697dc796850cc4385603e75f53ec59f768b2dad3bfa1464bd229f7de278d2899a0e3beffc634b6683f + languageName: node + linkType: hard + +"http-errors@npm:2.0.0": + version: 2.0.0 + resolution: "http-errors@npm:2.0.0" + dependencies: + depd: "npm:2.0.0" + inherits: "npm:2.0.4" + setprototypeof: "npm:1.2.0" + statuses: "npm:2.0.1" + toidentifier: "npm:1.0.1" + checksum: 0e7f76ee8ff8a33e58a3281a469815b893c41357378f408be8f6d4aa7d1efafb0da064625518e7078381b6a92325949b119dc38fcb30bdbc4e3a35f78c44c439 + languageName: node + linkType: hard + +"http-proxy-agent@npm:^7.0.0": + version: 7.0.0 + resolution: "http-proxy-agent@npm:7.0.0" + dependencies: + agent-base: "npm:^7.1.0" + debug: "npm:^4.3.4" + checksum: dbaaf3d9f3fc4df4a5d7ec45d456ec50f575240b557160fa63427b447d1f812dd7fe4a4f17d2e1ba003d231f07edf5a856ea6d91cb32d533062ff20a7803ccac + languageName: node + linkType: hard + +"https-proxy-agent@npm:^7.0.1": + version: 7.0.2 + resolution: "https-proxy-agent@npm:7.0.2" + dependencies: + agent-base: "npm:^7.0.2" + debug: "npm:4" + checksum: 9ec844f78fd643608239c9c3f6819918631df5cd3e17d104cc507226a39b5d4adda9d790fc9fd63ac0d2bb8a761b2f9f60faa80584a9bf9d7f2e8c5ed0acd330 + languageName: node + linkType: hard + +"human-signals@npm:^5.0.0": + version: 5.0.0 + resolution: "human-signals@npm:5.0.0" + checksum: 30f8870d831cdcd2d6ec0486a7d35d49384996742052cee792854273fa9dd9e7d5db06bb7985d4953e337e10714e994e0302e90dc6848069171b05ec836d65b0 + languageName: node + linkType: hard + +"iconv-lite@npm:0.6, iconv-lite@npm:^0.6.2": + version: 0.6.3 + resolution: "iconv-lite@npm:0.6.3" + dependencies: + safer-buffer: "npm:>= 2.1.2 < 3.0.0" + checksum: 24e3292dd3dadaa81d065c6f8c41b274a47098150d444b96e5f53b4638a9a71482921ea6a91a1f59bb71d9796de25e04afd05919fa64c360347ba65d3766f10f + languageName: node + linkType: hard + +"ieee754@npm:^1.2.1": + version: 1.2.1 + resolution: "ieee754@npm:1.2.1" + checksum: d9f2557a59036f16c282aaeb107832dc957a93d73397d89bbad4eb1130560560eb695060145e8e6b3b498b15ab95510226649a0b8f52ae06583575419fe10fc4 + languageName: node + linkType: hard + +"imurmurhash@npm:^0.1.4": + version: 0.1.4 + resolution: "imurmurhash@npm:0.1.4" + checksum: 2d30b157a91fe1c1d7c6f653cbf263f039be6c5bfa959245a16d4ee191fc0f2af86c08545b6e6beeb041c56b574d2d5b9f95343d378ab49c0f37394d541e7fc8 + languageName: node + linkType: hard + +"indent-string@npm:^4.0.0": + version: 4.0.0 + resolution: "indent-string@npm:4.0.0" + checksum: cd3f5cbc9ca2d624c6a1f53f12e6b341659aba0e2d3254ae2b4464aaea8b4294cdb09616abbc59458f980531f2429784ed6a420d48d245bcad0811980c9efae9 + languageName: node + linkType: hard + +"inflight@npm:^1.0.4": + version: 1.0.6 + resolution: "inflight@npm:1.0.6" + dependencies: + once: "npm:^1.3.0" + wrappy: "npm:1" + checksum: d2ebd65441a38c8336c223d1b80b921b9fa737e37ea466fd7e253cb000c64ae1f17fa59e68130ef5bda92cfd8d36b83d37dab0eb0a4558bcfec8e8cdfd2dcb67 + languageName: node + linkType: hard + +"inherits@npm:2, inherits@npm:2.0.4, inherits@npm:^2.0.3, inherits@npm:^2.0.4": + version: 2.0.4 + resolution: "inherits@npm:2.0.4" + checksum: cd45e923bee15186c07fa4c89db0aace24824c482fb887b528304694b2aa6ff8a898da8657046a5dcf3e46cd6db6c61629551f9215f208d7c3f157cf9b290521 + languageName: node + linkType: hard + +"internmap@npm:1 - 2": + version: 2.0.3 + resolution: "internmap@npm:2.0.3" + checksum: 873e0e7fcfe32f999aa0997a0b648b1244508e56e3ea6b8259b5245b50b5eeb3853fba221f96692bd6d1def501da76c32d64a5cb22a0b26cdd9b445664f805e0 + languageName: node + linkType: hard + +"ip@npm:^2.0.0": + version: 2.0.0 + resolution: "ip@npm:2.0.0" + checksum: 1270b11e534a466fb4cf4426cbcc3a907c429389f7f4e4e3b288b42823562e88d6a509ceda8141a507de147ca506141f745005c0aa144569d94cf24a54eb52bc + languageName: node + linkType: hard + +"ipaddr.js@npm:1.9.1": + version: 1.9.1 + resolution: "ipaddr.js@npm:1.9.1" + checksum: 864d0cced0c0832700e9621913a6429ccdc67f37c1bd78fb8c6789fff35c9d167cb329134acad2290497a53336813ab4798d2794fd675d5eb33b5fdf0982b9ca + languageName: node + linkType: hard + +"is-absolute@npm:^1.0.0": + version: 1.0.0 + resolution: "is-absolute@npm:1.0.0" + dependencies: + is-relative: "npm:^1.0.0" + is-windows: "npm:^1.0.1" + checksum: 9d16b2605eda3f3ce755410f1d423e327ad3a898bcb86c9354cf63970ed3f91ba85e9828aa56f5d6a952b9fae43d0477770f78d37409ae8ecc31e59ebc279b27 + languageName: node + linkType: hard + +"is-binary-path@npm:~2.1.0": + version: 2.1.0 + resolution: "is-binary-path@npm:2.1.0" + dependencies: + binary-extensions: "npm:^2.0.0" + checksum: 078e51b4f956c2c5fd2b26bb2672c3ccf7e1faff38e0ebdba45612265f4e3d9fc3127a1fa8370bbf09eab61339203c3d3b7af5662cbf8be4030f8fac37745b0e + languageName: node + linkType: hard + +"is-extglob@npm:^2.1.1": + version: 2.1.1 + resolution: "is-extglob@npm:2.1.1" + checksum: df033653d06d0eb567461e58a7a8c9f940bd8c22274b94bf7671ab36df5719791aae15eef6d83bbb5e23283967f2f984b8914559d4449efda578c775c4be6f85 + languageName: node + linkType: hard + +"is-fullwidth-code-point@npm:^3.0.0": + version: 3.0.0 + resolution: "is-fullwidth-code-point@npm:3.0.0" + checksum: 44a30c29457c7fb8f00297bce733f0a64cd22eca270f83e58c105e0d015e45c019491a4ab2faef91ab51d4738c670daff901c799f6a700e27f7314029e99e348 + languageName: node + linkType: hard + +"is-glob@npm:^4.0.1, is-glob@npm:~4.0.1": + version: 4.0.3 + resolution: "is-glob@npm:4.0.3" + dependencies: + is-extglob: "npm:^2.1.1" + checksum: 3ed74f2b0cdf4f401f38edb0442ddfde3092d79d7d35c9919c86641efdbcbb32e45aa3c0f70ce5eecc946896cd5a0f26e4188b9f2b881876f7cb6c505b82da11 + languageName: node + linkType: hard + +"is-interactive@npm:^2.0.0": + version: 2.0.0 + resolution: "is-interactive@npm:2.0.0" + checksum: e8d52ad490bed7ae665032c7675ec07732bbfe25808b0efbc4d5a76b1a1f01c165f332775c63e25e9a03d319ebb6b24f571a9e902669fc1e40b0a60b5be6e26c + languageName: node + linkType: hard + +"is-lambda@npm:^1.0.1": + version: 1.0.1 + resolution: "is-lambda@npm:1.0.1" + checksum: 93a32f01940220532e5948538699ad610d5924ac86093fcee83022252b363eb0cc99ba53ab084a04e4fb62bf7b5731f55496257a4c38adf87af9c4d352c71c35 + languageName: node + linkType: hard + +"is-number@npm:^7.0.0": + version: 7.0.0 + resolution: "is-number@npm:7.0.0" + checksum: 6a6c3383f68afa1e05b286af866017c78f1226d43ac8cb064e115ff9ed85eb33f5c4f7216c96a71e4dfea289ef52c5da3aef5bbfade8ffe47a0465d70c0c8e86 + languageName: node + linkType: hard + +"is-relative@npm:^1.0.0": + version: 1.0.0 + resolution: "is-relative@npm:1.0.0" + dependencies: + is-unc-path: "npm:^1.0.0" + checksum: 3271a0df109302ef5e14a29dcd5d23d9788e15ade91a40b942b035827ffbb59f7ce9ff82d036ea798541a52913cbf9d2d0b66456340887b51f3542d57b5a4c05 + languageName: node + linkType: hard + +"is-stream@npm:^3.0.0": + version: 3.0.0 + resolution: "is-stream@npm:3.0.0" + checksum: 172093fe99119ffd07611ab6d1bcccfe8bc4aa80d864b15f43e63e54b7abc71e779acd69afdb854c4e2a67fdc16ae710e370eda40088d1cfc956a50ed82d8f16 + languageName: node + linkType: hard + +"is-unc-path@npm:^1.0.0": + version: 1.0.0 + resolution: "is-unc-path@npm:1.0.0" + dependencies: + unc-path-regex: "npm:^0.1.2" + checksum: e8abfde203f7409f5b03a5f1f8636e3a41e78b983702ef49d9343eb608cdfe691429398e8815157519b987b739bcfbc73ae7cf4c8582b0ab66add5171088eab6 + languageName: node + linkType: hard + +"is-unicode-supported@npm:^1.1.0, is-unicode-supported@npm:^1.3.0": + version: 1.3.0 + resolution: "is-unicode-supported@npm:1.3.0" + checksum: 20a1fc161afafaf49243551a5ac33b6c4cf0bbcce369fcd8f2951fbdd000c30698ce320de3ee6830497310a8f41880f8066d440aa3eb0a853e2aa4836dd89abc + languageName: node + linkType: hard + +"is-windows@npm:^1.0.1": + version: 1.0.2 + resolution: "is-windows@npm:1.0.2" + checksum: 438b7e52656fe3b9b293b180defb4e448088e7023a523ec21a91a80b9ff8cdb3377ddb5b6e60f7c7de4fa8b63ab56e121b6705fe081b3cf1b828b0a380009ad7 + languageName: node + linkType: hard + +"isexe@npm:^2.0.0": + version: 2.0.0 + resolution: "isexe@npm:2.0.0" + checksum: 7c9f715c03aff08f35e98b1fadae1b9267b38f0615d501824f9743f3aab99ef10e303ce7db3f186763a0b70a19de5791ebfc854ff884d5a8c4d92211f642ec92 + languageName: node + linkType: hard + +"isexe@npm:^3.1.1": + version: 3.1.1 + resolution: "isexe@npm:3.1.1" + checksum: 7fe1931ee4e88eb5aa524cd3ceb8c882537bc3a81b02e438b240e47012eef49c86904d0f0e593ea7c3a9996d18d0f1f3be8d3eaa92333977b0c3a9d353d5563e + languageName: node + linkType: hard + +"jackspeak@npm:^2.3.5": + version: 2.3.6 + resolution: "jackspeak@npm:2.3.6" + dependencies: + "@isaacs/cliui": "npm:^8.0.2" + "@pkgjs/parseargs": "npm:^0.11.0" + dependenciesMeta: + "@pkgjs/parseargs": + optional: true + checksum: 6e6490d676af8c94a7b5b29b8fd5629f21346911ebe2e32931c2a54210134408171c24cee1a109df2ec19894ad04a429402a8438cbf5cc2794585d35428ace76 + languageName: node + linkType: hard + +"js-tokens@npm:^3.0.0 || ^4.0.0": + version: 4.0.0 + resolution: "js-tokens@npm:4.0.0" + checksum: af37d0d913fb56aec6dc0074c163cc71cd23c0b8aad5c2350747b6721d37ba118af35abdd8b33c47ec2800de07dedb16a527ca9c530ee004093e04958bd0cbf2 + languageName: node + linkType: hard + +"json-schema-traverse@npm:^1.0.0": + version: 1.0.0 + resolution: "json-schema-traverse@npm:1.0.0" + checksum: 02f2f466cdb0362558b2f1fd5e15cce82ef55d60cd7f8fa828cf35ba74330f8d767fcae5c5c2adb7851fa811766c694b9405810879bc4e1ddd78a7c0e03658ad + languageName: node + linkType: hard + +"jsonfile@npm:^4.0.0": + version: 4.0.0 + resolution: "jsonfile@npm:4.0.0" + dependencies: + graceful-fs: "npm:^4.1.6" + dependenciesMeta: + graceful-fs: + optional: true + checksum: 17796f0ab1be8479827d3683433f97ebe0a1c6932c3360fa40348eac36904d69269aab26f8b16da311882d94b42e9208e8b28e490bf926364f3ac9bff134c226 + languageName: node + linkType: hard + +"light-my-request@npm:^5.6.1": + version: 5.11.0 + resolution: "light-my-request@npm:5.11.0" + dependencies: + cookie: "npm:^0.5.0" + process-warning: "npm:^2.0.0" + set-cookie-parser: "npm:^2.4.1" + checksum: e4e35b5c7afe73611dcd328018a70f9ac33d25909d726d6ae85b8198fcdc8fb4b79fc079bc71f608f0d7631e1d4d4d88d6c322d3e243b1eee50469a1bd0f5862 + languageName: node + linkType: hard + +"locate-path@npm:^7.1.0": + version: 7.2.0 + resolution: "locate-path@npm:7.2.0" + dependencies: + p-locate: "npm:^6.0.0" + checksum: 1c6d269d4efec555937081be964e8a9b4a136319c79ca1d45ac6382212a8466113c75bd89e44521ca8ecd1c47fb08523b56eee5c0712bc7d14fec5f729deeb42 + languageName: node + linkType: hard + +"log-symbols@npm:^5.1.0": + version: 5.1.0 + resolution: "log-symbols@npm:5.1.0" + dependencies: + chalk: "npm:^5.0.0" + is-unicode-supported: "npm:^1.1.0" + checksum: 7291b6e7f1b3df6865bdaeb9b59605c832668ac2fa0965c63b1e7dd3700349aec09c1d7d40c368d5041ff58b7f89461a56e4009471921301af7b3609cbff9a29 + languageName: node + linkType: hard + +"loose-envify@npm:^1.1.0": + version: 1.4.0 + resolution: "loose-envify@npm:1.4.0" + dependencies: + js-tokens: "npm:^3.0.0 || ^4.0.0" + bin: + loose-envify: cli.js + checksum: 6517e24e0cad87ec9888f500c5b5947032cdfe6ef65e1c1936a0c48a524b81e65542c9c3edc91c97d5bddc806ee2a985dbc79be89215d613b1de5db6d1cfe6f4 + languageName: node + linkType: hard + +"lru-cache@npm:^10.0.1, lru-cache@npm:^9.1.1 || ^10.0.0": + version: 10.0.1 + resolution: "lru-cache@npm:10.0.1" + checksum: 5bb91a97a342a41fd049c3494b44d9e21a7d4843f9284d0a0b26f00bb0e436f1f627d0641c78f88be16b86b4231546c5ee4f284733fb530c7960f0bcd7579026 + languageName: node + linkType: hard + +"lru-cache@npm:^6.0.0": + version: 6.0.0 + resolution: "lru-cache@npm:6.0.0" + dependencies: + yallist: "npm:^4.0.0" + checksum: fc1fe2ee205f7c8855fa0f34c1ab0bcf14b6229e35579ec1fd1079f31d6fc8ef8eb6fd17f2f4d99788d7e339f50e047555551ebd5e434dda503696e7c6591825 + languageName: node + linkType: hard + +"make-fetch-happen@npm:^13.0.0": + version: 13.0.0 + resolution: "make-fetch-happen@npm:13.0.0" + dependencies: + "@npmcli/agent": "npm:^2.0.0" + cacache: "npm:^18.0.0" + http-cache-semantics: "npm:^4.1.1" + is-lambda: "npm:^1.0.1" + minipass: "npm:^7.0.2" + minipass-fetch: "npm:^3.0.0" + minipass-flush: "npm:^1.0.5" + minipass-pipeline: "npm:^1.2.4" + negotiator: "npm:^0.6.3" + promise-retry: "npm:^2.0.1" + ssri: "npm:^10.0.0" + checksum: ded5a91a02b76381b06a4ec4d5c1d23ebbde15d402b3c3e4533b371dac7e2f7ca071ae71ae6dae72aa261182557b7b1b3fd3a705b39252dc17f74fa509d3e76f + languageName: node + linkType: hard + +"merge-stream@npm:^2.0.0": + version: 2.0.0 + resolution: "merge-stream@npm:2.0.0" + checksum: 6fa4dcc8d86629705cea944a4b88ef4cb0e07656ebf223fa287443256414283dd25d91c1cd84c77987f2aec5927af1a9db6085757cb43d90eb170ebf4b47f4f4 + languageName: node + linkType: hard + +"mime@npm:^3.0.0": + version: 3.0.0 + resolution: "mime@npm:3.0.0" + bin: + mime: cli.js + checksum: b2d31580deb58be89adaa1877cbbf152b7604b980fd7ef8f08b9e96bfedf7d605d9c23a8ba62aa12c8580b910cd7c1d27b7331d0f40f7a14e17d5a0bbec3b49f + languageName: node + linkType: hard + +"mimic-fn@npm:^2.1.0": + version: 2.1.0 + resolution: "mimic-fn@npm:2.1.0" + checksum: d2421a3444848ce7f84bd49115ddacff29c15745db73f54041edc906c14b131a38d05298dae3081667627a59b2eb1ca4b436ff2e1b80f69679522410418b478a + languageName: node + linkType: hard + +"mimic-fn@npm:^4.0.0": + version: 4.0.0 + resolution: "mimic-fn@npm:4.0.0" + checksum: 995dcece15ee29aa16e188de6633d43a3db4611bcf93620e7e62109ec41c79c0f34277165b8ce5e361205049766e371851264c21ac64ca35499acb5421c2ba56 + languageName: node + linkType: hard + +"minimatch@npm:^5.0.1": + version: 5.1.6 + resolution: "minimatch@npm:5.1.6" + dependencies: + brace-expansion: "npm:^2.0.1" + checksum: 126b36485b821daf96d33b5c821dac600cc1ab36c87e7a532594f9b1652b1fa89a1eebcaad4dff17c764dce1a7ac1531327f190fed5f97d8f6e5f889c116c429 + languageName: node + linkType: hard + +"minimatch@npm:^9.0.1": + version: 9.0.3 + resolution: "minimatch@npm:9.0.3" + dependencies: + brace-expansion: "npm:^2.0.1" + checksum: c81b47d28153e77521877649f4bab48348d10938df9e8147a58111fe00ef89559a2938de9f6632910c4f7bf7bb5cd81191a546167e58d357f0cfb1e18cecc1c5 + languageName: node + linkType: hard + +"minipass-collect@npm:^1.0.2": + version: 1.0.2 + resolution: "minipass-collect@npm:1.0.2" + dependencies: + minipass: "npm:^3.0.0" + checksum: 14df761028f3e47293aee72888f2657695ec66bd7d09cae7ad558da30415fdc4752bbfee66287dcc6fd5e6a2fa3466d6c484dc1cbd986525d9393b9523d97f10 + languageName: node + linkType: hard + +"minipass-fetch@npm:^3.0.0": + version: 3.0.4 + resolution: "minipass-fetch@npm:3.0.4" + dependencies: + encoding: "npm:^0.1.13" + minipass: "npm:^7.0.3" + minipass-sized: "npm:^1.0.3" + minizlib: "npm:^2.1.2" + dependenciesMeta: + encoding: + optional: true + checksum: 3edf72b900e30598567eafe96c30374432a8709e61bb06b87198fa3192d466777e2ec21c52985a0999044fa6567bd6f04651585983a1cbb27e2c1770a07ed2a2 + languageName: node + linkType: hard + +"minipass-flush@npm:^1.0.5": + version: 1.0.5 + resolution: "minipass-flush@npm:1.0.5" + dependencies: + minipass: "npm:^3.0.0" + checksum: 56269a0b22bad756a08a94b1ffc36b7c9c5de0735a4dd1ab2b06c066d795cfd1f0ac44a0fcae13eece5589b908ecddc867f04c745c7009be0b566421ea0944cf + languageName: node + linkType: hard + +"minipass-pipeline@npm:^1.2.4": + version: 1.2.4 + resolution: "minipass-pipeline@npm:1.2.4" + dependencies: + minipass: "npm:^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: "npm:^3.0.0" + checksum: 40982d8d836a52b0f37049a0a7e5d0f089637298e6d9b45df9c115d4f0520682a78258905e5c8b180fb41b593b0a82cc1361d2c74b45f7ada66334f84d1ecfdd + languageName: node + linkType: hard + +"minipass@npm:^3.0.0": + version: 3.3.6 + resolution: "minipass@npm:3.3.6" + dependencies: + yallist: "npm:^4.0.0" + checksum: a5c6ef069f70d9a524d3428af39f2b117ff8cd84172e19b754e7264a33df460873e6eb3d6e55758531580970de50ae950c496256bb4ad3691a2974cddff189f0 + languageName: node + linkType: hard + +"minipass@npm:^5.0.0": + version: 5.0.0 + resolution: "minipass@npm:5.0.0" + checksum: 61682162d29f45d3152b78b08bab7fb32ca10899bc5991ffe98afc18c9e9543bd1e3be94f8b8373ba6262497db63607079dc242ea62e43e7b2270837b7347c93 + languageName: node + linkType: hard + +"minipass@npm:^5.0.0 || ^6.0.2 || ^7.0.0, minipass@npm:^7.0.2, minipass@npm:^7.0.3": + version: 7.0.4 + resolution: "minipass@npm:7.0.4" + checksum: e864bd02ceb5e0707696d58f7ce3a0b89233f0d686ef0d447a66db705c0846a8dc6f34865cd85256c1472ff623665f616b90b8ff58058b2ad996c5de747d2d18 + languageName: node + linkType: hard + +"minizlib@npm:^2.1.1, minizlib@npm:^2.1.2": + version: 2.1.2 + resolution: "minizlib@npm:2.1.2" + dependencies: + minipass: "npm:^3.0.0" + yallist: "npm:^4.0.0" + checksum: ae0f45436fb51344dcb87938446a32fbebb540d0e191d63b35e1c773d47512e17307bf54aa88326cc6d176594d00e4423563a091f7266c2f9a6872cdc1e234d1 + languageName: node + linkType: hard + +"mkdirp@npm:^1.0.3": + version: 1.0.4 + resolution: "mkdirp@npm:1.0.4" + bin: + mkdirp: bin/cmd.js + checksum: d71b8dcd4b5af2fe13ecf3bd24070263489404fe216488c5ba7e38ece1f54daf219e72a833a3a2dc404331e870e9f44963a33399589490956bff003a3404d3b2 + languageName: node + linkType: hard + +"ms@npm:2.1.2": + version: 2.1.2 + resolution: "ms@npm:2.1.2" + checksum: 673cdb2c3133eb050c745908d8ce632ed2c02d85640e2edb3ace856a2266a813b30c613569bf3354fdf4ea7d1a1494add3bfa95e2713baa27d0c2c71fc44f58f + languageName: node + linkType: hard + +"nanoid@npm:^3.3.4": + version: 3.3.6 + resolution: "nanoid@npm:3.3.6" + bin: + nanoid: bin/nanoid.cjs + checksum: 67235c39d1bc05851383dadde5cf77ae1c90c2a1d189e845c7f20f646f0488d875ad5f5226bbba072a88cebbb085a3f784a6673117daf785bdf614a852550362 + languageName: node + linkType: hard + +"negotiator@npm:^0.6.3": + version: 0.6.3 + resolution: "negotiator@npm:0.6.3" + checksum: 2723fb822a17ad55c93a588a4bc44d53b22855bf4be5499916ca0cab1e7165409d0b288ba2577d7b029f10ce18cf2ed8e703e5af31c984e1e2304277ef979837 + languageName: node + linkType: hard + +"next@npm:13.4.19": + version: 13.4.19 + resolution: "next@npm:13.4.19" + dependencies: + "@next/env": "npm:13.4.19" + "@next/swc-darwin-arm64": "npm:13.4.19" + "@next/swc-darwin-x64": "npm:13.4.19" + "@next/swc-linux-arm64-gnu": "npm:13.4.19" + "@next/swc-linux-arm64-musl": "npm:13.4.19" + "@next/swc-linux-x64-gnu": "npm:13.4.19" + "@next/swc-linux-x64-musl": "npm:13.4.19" + "@next/swc-win32-arm64-msvc": "npm:13.4.19" + "@next/swc-win32-ia32-msvc": "npm:13.4.19" + "@next/swc-win32-x64-msvc": "npm:13.4.19" + "@swc/helpers": "npm:0.5.1" + busboy: "npm:1.6.0" + caniuse-lite: "npm:^1.0.30001406" + postcss: "npm:8.4.14" + styled-jsx: "npm:5.1.1" + watchpack: "npm:2.4.0" + zod: "npm:3.21.4" + peerDependencies: + "@opentelemetry/api": ^1.1.0 + react: ^18.2.0 + react-dom: ^18.2.0 + sass: ^1.3.0 + dependenciesMeta: + "@next/swc-darwin-arm64": + optional: true + "@next/swc-darwin-x64": + optional: true + "@next/swc-linux-arm64-gnu": + optional: true + "@next/swc-linux-arm64-musl": + optional: true + "@next/swc-linux-x64-gnu": + optional: true + "@next/swc-linux-x64-musl": + optional: true + "@next/swc-win32-arm64-msvc": + optional: true + "@next/swc-win32-ia32-msvc": + optional: true + "@next/swc-win32-x64-msvc": + optional: true + peerDependenciesMeta: + "@opentelemetry/api": + optional: true + sass: + optional: true + bin: + next: dist/bin/next + checksum: e5180f07d5d0fd8603ae6f57966c8051a67c69cc07f1d472f1947c82dd1961ec2d57480012f234101f9a0ac90c85839798972efe9b91512417f34db0d2dcbf29 + languageName: node + linkType: hard + +"node-gyp@npm:latest": + version: 10.0.0 + resolution: "node-gyp@npm:10.0.0" + dependencies: + env-paths: "npm:^2.2.0" + exponential-backoff: "npm:^3.1.1" + glob: "npm:^10.3.10" + graceful-fs: "npm:^4.2.6" + make-fetch-happen: "npm:^13.0.0" + nopt: "npm:^7.0.0" + proc-log: "npm:^3.0.0" + semver: "npm:^7.3.5" + tar: "npm:^6.1.2" + which: "npm:^4.0.0" + bin: + node-gyp: bin/node-gyp.js + checksum: 08ba31c1933920705e07cd3d3756b558c50582c86e85a99de8f28bf9582c0f811432b88822f34703308c26c0efafa69e91460076887a85ba40fae5cd9031d8b7 + languageName: node + linkType: hard + +"nopt@npm:^7.0.0": + version: 7.2.0 + resolution: "nopt@npm:7.2.0" + dependencies: + abbrev: "npm:^2.0.0" + bin: + nopt: bin/nopt.js + checksum: 1e7489f17cbda452c8acaf596a8defb4ae477d2a9953b76eb96f4ec3f62c6b421cd5174eaa742f88279871fde9586d8a1d38fb3f53fa0c405585453be31dff4c + languageName: node + linkType: hard + +"normalize-path@npm:^3.0.0, normalize-path@npm:~3.0.0": + version: 3.0.0 + resolution: "normalize-path@npm:3.0.0" + checksum: 88eeb4da891e10b1318c4b2476b6e2ecbeb5ff97d946815ffea7794c31a89017c70d7f34b3c2ebf23ef4e9fc9fb99f7dffe36da22011b5b5c6ffa34f4873ec20 + languageName: node + linkType: hard + +"npm-run-path@npm:^5.1.0": + version: 5.1.0 + resolution: "npm-run-path@npm:5.1.0" + dependencies: + path-key: "npm:^4.0.0" + checksum: dc184eb5ec239d6a2b990b43236845332ef12f4e0beaa9701de724aa797fe40b6bbd0157fb7639d24d3ab13f5d5cf22d223a19c6300846b8126f335f788bee66 + languageName: node + linkType: hard + +"on-exit-leak-free@npm:^2.1.0": + version: 2.1.2 + resolution: "on-exit-leak-free@npm:2.1.2" + checksum: f7b4b7200026a08f6e4a17ba6d72e6c5cbb41789ed9cf7deaf9d9e322872c7dc5a7898549a894651ee0ee9ae635d34a678115bf8acdfba8ebd2ba2af688b563c + languageName: node + linkType: hard + +"once@npm:^1.3.0": + version: 1.4.0 + resolution: "once@npm:1.4.0" + dependencies: + wrappy: "npm:1" + checksum: cd0a88501333edd640d95f0d2700fbde6bff20b3d4d9bdc521bdd31af0656b5706570d6c6afe532045a20bb8dc0849f8332d6f2a416e0ba6d3d3b98806c7db68 + languageName: node + linkType: hard + +"onetime@npm:^5.1.0": + version: 5.1.2 + resolution: "onetime@npm:5.1.2" + dependencies: + mimic-fn: "npm:^2.1.0" + checksum: e9fd0695a01cf226652f0385bf16b7a24153dbbb2039f764c8ba6d2306a8506b0e4ce570de6ad99c7a6eb49520743afdb66edd95ee979c1a342554ed49a9aadd + languageName: node + linkType: hard + +"onetime@npm:^6.0.0": + version: 6.0.0 + resolution: "onetime@npm:6.0.0" + dependencies: + mimic-fn: "npm:^4.0.0" + checksum: 0846ce78e440841335d4e9182ef69d5762e9f38aa7499b19f42ea1c4cd40f0b4446094c455c713f9adac3f4ae86f613bb5e30c99e52652764d06a89f709b3788 + languageName: node + linkType: hard + +"ora@npm:7.0.1": + version: 7.0.1 + resolution: "ora@npm:7.0.1" + dependencies: + chalk: "npm:^5.3.0" + cli-cursor: "npm:^4.0.0" + cli-spinners: "npm:^2.9.0" + is-interactive: "npm:^2.0.0" + is-unicode-supported: "npm:^1.3.0" + log-symbols: "npm:^5.1.0" + stdin-discarder: "npm:^0.1.0" + string-width: "npm:^6.1.0" + strip-ansi: "npm:^7.1.0" + checksum: 4ec001b6f1b8592be93d8a5e7e4f271f0fcd85868ceb0f00d0c1bff57be282aeeaaaacbd4bdefdf1b852de5d7813ac564da7a3c08000761beeade6097fc8a9af + languageName: node + linkType: hard + +"p-limit@npm:^3.1.0": + version: 3.1.0 + resolution: "p-limit@npm:3.1.0" + dependencies: + yocto-queue: "npm:^0.1.0" + checksum: 7c3690c4dbf62ef625671e20b7bdf1cbc9534e83352a2780f165b0d3ceba21907e77ad63401708145ca4e25bfc51636588d89a8c0aeb715e6c37d1c066430360 + languageName: node + linkType: hard + +"p-limit@npm:^4.0.0": + version: 4.0.0 + resolution: "p-limit@npm:4.0.0" + dependencies: + yocto-queue: "npm:^1.0.0" + checksum: 01d9d70695187788f984226e16c903475ec6a947ee7b21948d6f597bed788e3112cc7ec2e171c1d37125057a5f45f3da21d8653e04a3a793589e12e9e80e756b + languageName: node + linkType: hard + +"p-locate@npm:^6.0.0": + version: 6.0.0 + resolution: "p-locate@npm:6.0.0" + dependencies: + p-limit: "npm:^4.0.0" + checksum: 2bfe5234efa5e7a4e74b30a5479a193fdd9236f8f6b4d2f3f69e3d286d9a7d7ab0c118a2a50142efcf4e41625def635bd9332d6cbf9cc65d85eb0718c579ab38 + languageName: node + linkType: hard + +"p-map@npm:^4.0.0": + version: 4.0.0 + resolution: "p-map@npm:4.0.0" + dependencies: + aggregate-error: "npm:^3.0.0" + checksum: 7ba4a2b1e24c05e1fc14bbaea0fc6d85cf005ae7e9c9425d4575550f37e2e584b1af97bcde78eacd7559208f20995988d52881334db16cf77bc1bcf68e48ed7c + languageName: node + linkType: hard + +"path-exists@npm:^5.0.0": + version: 5.0.0 + resolution: "path-exists@npm:5.0.0" + checksum: 8ca842868cab09423994596eb2c5ec2a971c17d1a3cb36dbf060592c730c725cd524b9067d7d2a1e031fef9ba7bd2ac6dc5ec9fb92aa693265f7be3987045254 + languageName: node + linkType: hard + +"path-key@npm:^3.1.0": + version: 3.1.1 + resolution: "path-key@npm:3.1.1" + checksum: 55cd7a9dd4b343412a8386a743f9c746ef196e57c823d90ca3ab917f90ab9f13dd0ded27252ba49dbdfcab2b091d998bc446f6220cd3cea65db407502a740020 + languageName: node + linkType: hard + +"path-key@npm:^4.0.0": + version: 4.0.0 + resolution: "path-key@npm:4.0.0" + checksum: 8e6c314ae6d16b83e93032c61020129f6f4484590a777eed709c4a01b50e498822b00f76ceaf94bc64dbd90b327df56ceadce27da3d83393790f1219e07721d7 + languageName: node + linkType: hard + +"path-scurry@npm:^1.10.1": + version: 1.10.1 + resolution: "path-scurry@npm:1.10.1" + dependencies: + lru-cache: "npm:^9.1.1 || ^10.0.0" + minipass: "npm:^5.0.0 || ^6.0.2 || ^7.0.0" + checksum: eebfb8304fef1d4f7e1486df987e4fd77413de4fce16508dea69fcf8eb318c09a6b15a7a2f4c22877cec1cb7ecbd3071d18ca9de79eeece0df874a00f1f0bdc8 + languageName: node + linkType: hard + +"picocolors@npm:^1.0.0": + version: 1.0.0 + resolution: "picocolors@npm:1.0.0" + checksum: a2e8092dd86c8396bdba9f2b5481032848525b3dc295ce9b57896f931e63fc16f79805144321f72976383fc249584672a75cc18d6777c6b757603f372f745981 + languageName: node + linkType: hard + +"picomatch@npm:^2.0.4, picomatch@npm:^2.2.1": + version: 2.3.1 + resolution: "picomatch@npm:2.3.1" + checksum: 60c2595003b05e4535394d1da94850f5372c9427ca4413b71210f437f7b2ca091dbd611c45e8b37d10036fa8eade25c1b8951654f9d3973bfa66a2ff4d3b08bc + languageName: node + linkType: hard + +"pino-abstract-transport@npm:v1.1.0": + version: 1.1.0 + resolution: "pino-abstract-transport@npm:1.1.0" + dependencies: + readable-stream: "npm:^4.0.0" + split2: "npm:^4.0.0" + checksum: 39b4496c9e4289e8d44a1d01adfa8dfeebb374e14b7a6451a4f3713561aeb9e181c64ff0272921667abcb95aceb312ab2761b82e253db23a456ab3dd35a42675 + languageName: node + linkType: hard + +"pino-std-serializers@npm:^6.0.0": + version: 6.2.2 + resolution: "pino-std-serializers@npm:6.2.2" + checksum: a00cdff4e1fbc206da9bed047e6dc400b065f43e8b4cef1635b0192feab0e8f932cdeb0faaa38a5d93d2e777ba4cda939c2ed4c1a70f6839ff25f9aef97c27ff + languageName: node + linkType: hard + +"pino@npm:^8.5.0": + version: 8.16.1 + resolution: "pino@npm:8.16.1" + dependencies: + atomic-sleep: "npm:^1.0.0" + fast-redact: "npm:^3.1.1" + on-exit-leak-free: "npm:^2.1.0" + pino-abstract-transport: "npm:v1.1.0" + pino-std-serializers: "npm:^6.0.0" + process-warning: "npm:^2.0.0" + quick-format-unescaped: "npm:^4.0.3" + real-require: "npm:^0.2.0" + safe-stable-stringify: "npm:^2.3.1" + sonic-boom: "npm:^3.7.0" + thread-stream: "npm:^2.0.0" + bin: + pino: bin.js + checksum: 8f7b9bd8a2cd605b20654f15c240769e17835be93c67fd422d4ed8ab1a6b7b3806c8be9f91e94d013660fac2ca3c1dd2b625a8bc0f3ce426b465f708670124f9 + languageName: node + linkType: hard + +"pkg-dir@npm:7.0.0": + version: 7.0.0 + resolution: "pkg-dir@npm:7.0.0" + dependencies: + find-up: "npm:^6.3.0" + checksum: 94298b20a446bfbbd66604474de8a0cdd3b8d251225170970f15d9646f633e056c80520dd5b4c1d1050c9fed8f6a9e5054b141c93806439452efe72e57562c03 + languageName: node + linkType: hard + +"postcss@npm:8.4.14": + version: 8.4.14 + resolution: "postcss@npm:8.4.14" + dependencies: + nanoid: "npm:^3.3.4" + picocolors: "npm:^1.0.0" + source-map-js: "npm:^1.0.2" + checksum: 1940e8d1da04a2ac3e518735ab3e9563e2255bfab14cecc8c11fee97b2a36ac5fee496bccfc7057aaae7ff3accae463cd800d746238cf691bd65a32dba5cb7be + languageName: node + linkType: hard + +"proc-log@npm:^3.0.0": + version: 3.0.0 + resolution: "proc-log@npm:3.0.0" + checksum: 02b64e1b3919e63df06f836b98d3af002b5cd92655cab18b5746e37374bfb73e03b84fe305454614b34c25b485cc687a9eebdccf0242cda8fda2475dd2c97e02 + languageName: node + linkType: hard + +"process-warning@npm:^2.0.0": + version: 2.3.0 + resolution: "process-warning@npm:2.3.0" + checksum: 5cfb8cc1f99ee771559d16a4862da0daa35762254f999d16f66d7eec9e0a59892194204a48d2aee3838af04be0e73ae8cbd338ac43274c68c490fe9d6f634066 + languageName: node + linkType: hard + +"process@npm:^0.11.10": + version: 0.11.10 + resolution: "process@npm:0.11.10" + checksum: dbaa7e8d1d5cf375c36963ff43116772a989ef2bb47c9bdee20f38fd8fc061119cf38140631cf90c781aca4d3f0f0d2c834711952b728953f04fd7d238f59f5b + languageName: node + linkType: hard + +"promise-retry@npm:^2.0.1": + version: 2.0.1 + resolution: "promise-retry@npm:2.0.1" + dependencies: + err-code: "npm:^2.0.2" + retry: "npm:^0.12.0" + checksum: 96e1a82453c6c96eef53a37a1d6134c9f2482f94068f98a59145d0986ca4e497bf110a410adf73857e588165eab3899f0ebcf7b3890c1b3ce802abc0d65967d4 + languageName: node + linkType: hard + +"proxy-addr@npm:^2.0.7": + version: 2.0.7 + resolution: "proxy-addr@npm:2.0.7" + dependencies: + forwarded: "npm:0.2.0" + ipaddr.js: "npm:1.9.1" + checksum: f24a0c80af0e75d31e3451398670d73406ec642914da11a2965b80b1898ca6f66a0e3e091a11a4327079b2b268795f6fa06691923fef91887215c3d0e8ea3f68 + languageName: node + linkType: hard + +"punycode@npm:^2.1.0": + version: 2.3.1 + resolution: "punycode@npm:2.3.1" + checksum: febdc4362bead22f9e2608ff0171713230b57aff9dddc1c273aa2a651fbd366f94b7d6a71d78342a7c0819906750351ca7f2edd26ea41b626d87d6a13d1bd059 + languageName: node + linkType: hard + +"query-string@npm:8.1.0": + version: 8.1.0 + resolution: "query-string@npm:8.1.0" + dependencies: + decode-uri-component: "npm:^0.4.1" + filter-obj: "npm:^5.1.0" + split-on-first: "npm:^3.0.0" + checksum: f693d77bc3e8c5cb7bda9c928e9c625bf8adacb1ebd63fd97c9ffd3f65c7df0cfc86aebf92588b5caddccfcb379bc7f4d81fcc4e64c64e4e75eabaca823c2293 + languageName: node + linkType: hard + +"quick-format-unescaped@npm:^4.0.3": + version: 4.0.4 + resolution: "quick-format-unescaped@npm:4.0.4" + checksum: 591eca457509a99368b623db05248c1193aa3cedafc9a077d7acab09495db1231017ba3ad1b5386e5633271edd0a03b312d8640a59ee585b8516a42e15438aa7 + languageName: node + linkType: hard + +"react-dom@npm:18.2.0": + version: 18.2.0 + resolution: "react-dom@npm:18.2.0" + dependencies: + loose-envify: "npm:^1.1.0" + scheduler: "npm:^0.23.0" + peerDependencies: + react: ^18.2.0 + checksum: ca5e7762ec8c17a472a3605b6f111895c9f87ac7d43a610ab7024f68cd833d08eda0625ce02ec7178cc1f3c957cf0b9273cdc17aa2cd02da87544331c43b1d21 + languageName: node + linkType: hard + +"react@npm:18.2.0": + version: 18.2.0 + resolution: "react@npm:18.2.0" + dependencies: + loose-envify: "npm:^1.1.0" + checksum: b9214a9bd79e99d08de55f8bef2b7fc8c39630be97c4e29d7be173d14a9a10670b5325e94485f74cd8bff4966ef3c78ee53c79a7b0b9b70cba20aa8973acc694 + languageName: node + linkType: hard + +"readable-stream@npm:^3.4.0": + version: 3.6.2 + resolution: "readable-stream@npm:3.6.2" + dependencies: + inherits: "npm:^2.0.3" + string_decoder: "npm:^1.1.1" + util-deprecate: "npm:^1.0.1" + checksum: d9e3e53193adcdb79d8f10f2a1f6989bd4389f5936c6f8b870e77570853561c362bee69feca2bbb7b32368ce96a85504aa4cedf7cf80f36e6a9de30d64244048 + languageName: node + linkType: hard + +"readable-stream@npm:^4.0.0": + version: 4.4.2 + resolution: "readable-stream@npm:4.4.2" + dependencies: + abort-controller: "npm:^3.0.0" + buffer: "npm:^6.0.3" + events: "npm:^3.3.0" + process: "npm:^0.11.10" + string_decoder: "npm:^1.3.0" + checksum: 02950422df3f20d2e231f40e9f312e3306b7d4c2a9716849509d0d6668eea24657c96f85ed057e38cc576b34a72db613fbde9ba3689ca8de466cd31bdda96827 + languageName: node + linkType: hard + +"readdir-enhanced@npm:^1.5.2": + version: 1.5.2 + resolution: "readdir-enhanced@npm:1.5.2" + dependencies: + call-me-maybe: "npm:^1.0.1" + es6-promise: "npm:^4.1.0" + glob-to-regexp: "npm:^0.3.0" + checksum: 0fe583f1bd215ad46dbb5e121e18be8df4012fddc71a10cdb94693852fed43078d21aca7696d0a62acb37e12ea14cf2ed2c710c7c3486f4b6562c7dc0db58d33 + languageName: node + linkType: hard + +"readdirp@npm:~3.6.0": + version: 3.6.0 + resolution: "readdirp@npm:3.6.0" + dependencies: + picomatch: "npm:^2.2.1" + checksum: 196b30ef6ccf9b6e18c4e1724b7334f72a093d011a99f3b5920470f0b3406a51770867b3e1ae9711f227ef7a7065982f6ee2ce316746b2cb42c88efe44297fe7 + languageName: node + linkType: hard + +"real-require@npm:^0.2.0": + version: 0.2.0 + resolution: "real-require@npm:0.2.0" + checksum: ddf44ee76301c774e9c9f2826da8a3c5c9f8fc87310f4a364e803ef003aa1a43c378b4323051ced212097fff1af459070f4499338b36a7469df1d4f7e8c0ba4c + languageName: node + linkType: hard + +"require-from-string@npm:^2.0.2": + version: 2.0.2 + resolution: "require-from-string@npm:2.0.2" + checksum: 839a3a890102a658f4cb3e7b2aa13a1f80a3a976b512020c3d1efc418491c48a886b6e481ea56afc6c4cb5eef678f23b2a4e70575e7534eccadf5e30ed2e56eb + languageName: node + linkType: hard + +"resolve-pkg-maps@npm:^1.0.0": + version: 1.0.0 + resolution: "resolve-pkg-maps@npm:1.0.0" + checksum: 0763150adf303040c304009231314d1e84c6e5ebfa2d82b7d94e96a6e82bacd1dcc0b58ae257315f3c8adb89a91d8d0f12928241cba2df1680fbe6f60bf99b0e + languageName: node + linkType: hard + +"restore-cursor@npm:^4.0.0": + version: 4.0.0 + resolution: "restore-cursor@npm:4.0.0" + dependencies: + onetime: "npm:^5.1.0" + signal-exit: "npm:^3.0.2" + checksum: 5b675c5a59763bf26e604289eab35711525f11388d77f409453904e1e69c0d37ae5889295706b2c81d23bd780165084d040f9b68fffc32cc921519031c4fa4af + languageName: node + linkType: hard + +"ret@npm:~0.2.0": + version: 0.2.2 + resolution: "ret@npm:0.2.2" + checksum: 9f16517f77a3b508c529bc22187c132cd7907cd9270601d6794e1c8a58f6990872b4697b4edfdebb4f87017f9f0a285007b740a9ffb8236805b923fd1bc84eb1 + languageName: node + linkType: hard + +"retry@npm:^0.12.0": + version: 0.12.0 + resolution: "retry@npm:0.12.0" + checksum: 1f914879f97e7ee931ad05fe3afa629bd55270fc6cf1c1e589b6a99fab96d15daad0fa1a52a00c729ec0078045fe3e399bd4fd0c93bcc906957bdc17f89cb8e6 + languageName: node + linkType: hard + +"reusify@npm:^1.0.4": + version: 1.0.4 + resolution: "reusify@npm:1.0.4" + checksum: 14222c9e1d3f9ae01480c50d96057228a8524706db79cdeb5a2ce5bb7070dd9f409a6f84a02cbef8cdc80d39aef86f2dd03d155188a1300c599b05437dcd2ffb + languageName: node + linkType: hard + +"rfdc@npm:^1.2.0, rfdc@npm:^1.3.0": + version: 1.3.0 + resolution: "rfdc@npm:1.3.0" + checksum: 76dedd9700cdf132947fde7ce1a8838c9cbb7f3e8f9188af0aaf97194cce745f42094dd2cf547426934cc83252ee2c0e432b2e0222a4415ab0db32de82665c69 + languageName: node + linkType: hard + +"robust-predicates@npm:^3.0.0": + version: 3.0.2 + resolution: "robust-predicates@npm:3.0.2" + checksum: 88bd7d45a6b89e88da2631d4c111aaaf0443de4d7078e9ab7f732245790a3645cf79bf91882a9740dbc959cf56ba75d5dced5bf2259410f8b6de19fd240cd08c + languageName: node + linkType: hard + +"rw@npm:1": + version: 1.3.3 + resolution: "rw@npm:1.3.3" + checksum: e90985d64777a00f4ab5f8c0bfea2fb5645c6bda5238840afa339c8a4f86f776e8ce83731155643a7425a0b27ce89077dab27b2f57519996ba4d2fe54cac1941 + languageName: node + linkType: hard + +"safe-buffer@npm:5.2.1, safe-buffer@npm:~5.2.0": + version: 5.2.1 + resolution: "safe-buffer@npm:5.2.1" + checksum: 32872cd0ff68a3ddade7a7617b8f4c2ae8764d8b7d884c651b74457967a9e0e886267d3ecc781220629c44a865167b61c375d2da6c720c840ecd73f45d5d9451 + languageName: node + linkType: hard + +"safe-regex2@npm:^2.0.0": + version: 2.0.0 + resolution: "safe-regex2@npm:2.0.0" + dependencies: + ret: "npm:~0.2.0" + checksum: af1f0b367d0c769eccca7a5aa93d222e542fb494940849c7bbbbe8942c0026cf207f15ba3aacdd4f3e4f6b5a31fa7a775f7cdd8e6670b893fd16e96247fdbd02 + languageName: node + linkType: hard + +"safe-stable-stringify@npm:^2.3.1": + version: 2.4.3 + resolution: "safe-stable-stringify@npm:2.4.3" + checksum: a6c192bbefe47770a11072b51b500ed29be7b1c15095371c1ee1dc13e45ce48ee3c80330214c56764d006c485b88bd0b24940d868948170dddc16eed312582d8 + languageName: node + linkType: hard + +"safer-buffer@npm:>= 2.1.2 < 3.0.0": + version: 2.1.2 + resolution: "safer-buffer@npm:2.1.2" + checksum: 7eaf7a0cf37cc27b42fb3ef6a9b1df6e93a1c6d98c6c6702b02fe262d5fcbd89db63320793b99b21cb5348097d0a53de81bd5f4e8b86e20cc9412e3f1cfb4e83 + languageName: node + linkType: hard + +"scheduler@npm:^0.23.0": + version: 0.23.0 + resolution: "scheduler@npm:0.23.0" + dependencies: + loose-envify: "npm:^1.1.0" + checksum: 0c4557aa37bafca44ff21dc0ea7c92e2dbcb298bc62eae92b29a39b029134f02fb23917d6ebc8b1fa536b4184934314c20d8864d156a9f6357f3398aaf7bfda8 + languageName: node + linkType: hard + +"secure-json-parse@npm:^2.5.0": + version: 2.7.0 + resolution: "secure-json-parse@npm:2.7.0" + checksum: 974386587060b6fc5b1ac06481b2f9dbbb0d63c860cc73dc7533f27835fdb67b0ef08762dbfef25625c15bc0a0c366899e00076cb0d556af06b71e22f1dede4c + languageName: node + linkType: hard + +"semver@npm:^7.3.5, semver@npm:^7.3.7": + version: 7.5.4 + resolution: "semver@npm:7.5.4" + dependencies: + lru-cache: "npm:^6.0.0" + bin: + semver: bin/semver.js + checksum: 985dec0d372370229a262c737063860fabd4a1c730662c1ea3200a2f649117761a42184c96df62a0e885e76fbd5dace41087d6c1ac0351b13c0df5d6bcb1b5ac + languageName: node + linkType: hard + +"set-cookie-parser@npm:^2.4.1": + version: 2.6.0 + resolution: "set-cookie-parser@npm:2.6.0" + checksum: 8d451ebadb760989f93b634942c79de3c925ca7a986d133d08a80c40b5ae713ce12e354f0d5245c49f288c52daa7bd6554d5dc52f8a4eecaaf5e192881cf2b1f + languageName: node + linkType: hard + +"setprototypeof@npm:1.2.0": + version: 1.2.0 + resolution: "setprototypeof@npm:1.2.0" + checksum: fde1630422502fbbc19e6844346778f99d449986b2f9cdcceb8326730d2f3d9964dbcb03c02aaadaefffecd0f2c063315ebea8b3ad895914bf1afc1747fc172e + languageName: node + linkType: hard + +"shebang-command@npm:^2.0.0": + version: 2.0.0 + resolution: "shebang-command@npm:2.0.0" + dependencies: + shebang-regex: "npm:^3.0.0" + checksum: 6b52fe87271c12968f6a054e60f6bde5f0f3d2db483a1e5c3e12d657c488a15474121a1d55cd958f6df026a54374ec38a4a963988c213b7570e1d51575cea7fa + languageName: node + linkType: hard + +"shebang-regex@npm:^3.0.0": + version: 3.0.0 + resolution: "shebang-regex@npm:3.0.0" + checksum: 1a2bcae50de99034fcd92ad4212d8e01eedf52c7ec7830eedcf886622804fe36884278f2be8be0ea5fde3fd1c23911643a4e0f726c8685b61871c8908af01222 + languageName: node + linkType: hard + +"signal-exit@npm:^3.0.2": + version: 3.0.7 + resolution: "signal-exit@npm:3.0.7" + checksum: a2f098f247adc367dffc27845853e9959b9e88b01cb301658cfe4194352d8d2bb32e18467c786a7fe15f1d44b233ea35633d076d5e737870b7139949d1ab6318 + languageName: node + linkType: hard + +"signal-exit@npm:^4.0.1, signal-exit@npm:^4.1.0": + version: 4.1.0 + resolution: "signal-exit@npm:4.1.0" + checksum: c9fa63bbbd7431066174a48ba2dd9986dfd930c3a8b59de9c29d7b6854ec1c12a80d15310869ea5166d413b99f041bfa3dd80a7947bcd44ea8e6eb3ffeabfa1f + languageName: node + linkType: hard + +"smart-buffer@npm:^4.2.0": + version: 4.2.0 + resolution: "smart-buffer@npm:4.2.0" + checksum: 927484aa0b1640fd9473cee3e0a0bcad6fce93fd7bbc18bac9ad0c33686f5d2e2c422fba24b5899c184524af01e11dd2bd051c2bf2b07e47aff8ca72cbfc60d2 + languageName: node + linkType: hard + +"socks-proxy-agent@npm:^8.0.1": + version: 8.0.2 + resolution: "socks-proxy-agent@npm:8.0.2" + dependencies: + agent-base: "npm:^7.0.2" + debug: "npm:^4.3.4" + socks: "npm:^2.7.1" + checksum: ea727734bd5b2567597aa0eda14149b3b9674bb44df5937bbb9815280c1586994de734d965e61f1dd45661183d7b41f115fb9e432d631287c9063864cfcc2ecc + languageName: node + linkType: hard + +"socks@npm:^2.7.1": + version: 2.7.1 + resolution: "socks@npm:2.7.1" + dependencies: + ip: "npm:^2.0.0" + smart-buffer: "npm:^4.2.0" + checksum: 5074f7d6a13b3155fa655191df1c7e7a48ce3234b8ccf99afa2ccb56591c195e75e8bb78486f8e9ea8168e95a29573cbaad55b2b5e195160ae4d2ea6811ba833 + languageName: node + linkType: hard + +"sonic-boom@npm:^3.7.0": + version: 3.7.0 + resolution: "sonic-boom@npm:3.7.0" + dependencies: + atomic-sleep: "npm:^1.0.0" + checksum: 6f64a9cf93fd8b7a7044f68597f80522bfacaf978d5e9f226c4e6f1c5dd00f07884a8f7f5fb6f45bb0b6951600629654d2db7a9a20b626b37f8f01d4b9161cfe + languageName: node + linkType: hard + +"source-map-js@npm:^1.0.2": + version: 1.0.2 + resolution: "source-map-js@npm:1.0.2" + checksum: 38e2d2dd18d2e331522001fc51b54127ef4a5d473f53b1349c5cca2123562400e0986648b52e9407e348eaaed53bce49248b6e2641e6d793ca57cb2c360d6d51 + languageName: node + linkType: hard + +"source-map-support@npm:^0.5.21": + version: 0.5.21 + resolution: "source-map-support@npm:0.5.21" + dependencies: + buffer-from: "npm:^1.0.0" + source-map: "npm:^0.6.0" + checksum: 8317e12d84019b31e34b86d483dd41d6f832f389f7417faf8fc5c75a66a12d9686e47f589a0554a868b8482f037e23df9d040d29387eb16fa14cb85f091ba207 + languageName: node + linkType: hard + +"source-map@npm:^0.6.0": + version: 0.6.1 + resolution: "source-map@npm:0.6.1" + checksum: 59ef7462f1c29d502b3057e822cdbdae0b0e565302c4dd1a95e11e793d8d9d62006cdc10e0fd99163ca33ff2071360cf50ee13f90440806e7ed57d81cba2f7ff + languageName: node + linkType: hard + +"split-on-first@npm:^3.0.0": + version: 3.0.0 + resolution: "split-on-first@npm:3.0.0" + checksum: 75dc27ecbac65cfbeab9a3b90cf046307220192d3d7a30e46aa0f19571cc9b4802aac813f3de2cc9b16f2e46aae72f275659b5d2614bb5369c77724d739e5f73 + languageName: node + linkType: hard + +"split2@npm:^4.0.0": + version: 4.2.0 + resolution: "split2@npm:4.2.0" + checksum: 09bbefc11bcf03f044584c9764cd31a252d8e52cea29130950b26161287c11f519807c5e54bd9e5804c713b79c02cefe6a98f4688630993386be353e03f534ab + languageName: node + linkType: hard + +"ssri@npm:^10.0.0": + version: 10.0.5 + resolution: "ssri@npm:10.0.5" + dependencies: + minipass: "npm:^7.0.3" + checksum: 453f9a1c241c13f5dfceca2ab7b4687bcff354c3ccbc932f35452687b9ef0ccf8983fd13b8a3baa5844c1a4882d6e3ddff48b0e7fd21d743809ef33b80616d79 + languageName: node + linkType: hard + +"statuses@npm:2.0.1": + version: 2.0.1 + resolution: "statuses@npm:2.0.1" + checksum: 18c7623fdb8f646fb213ca4051be4df7efb3484d4ab662937ca6fbef7ced9b9e12842709872eb3020cc3504b93bde88935c9f6417489627a7786f24f8031cbcb + languageName: node + linkType: hard + +"stdin-discarder@npm:^0.1.0": + version: 0.1.0 + resolution: "stdin-discarder@npm:0.1.0" + dependencies: + bl: "npm:^5.0.0" + checksum: 85131f70ae2830144133b7a6211d56f9ac2603573f4af3d0b66e828af5e13fcdea351f9192f86bb7fed2c64604c8097bf36d50cb77d54e898ce4604c3b7b6b8f + languageName: node + linkType: hard + +"streamsearch@npm:^1.1.0": + version: 1.1.0 + resolution: "streamsearch@npm:1.1.0" + checksum: 612c2b2a7dbcc859f74597112f80a42cbe4d448d03da790d5b7b39673c1197dd3789e91cd67210353e58857395d32c1e955a9041c4e6d5bae723436b3ed9ed14 + languageName: node + linkType: hard + +"string-width-cjs@npm:string-width@^4.2.0, string-width@npm:^4.1.0": + version: 4.2.3 + resolution: "string-width@npm:4.2.3" + dependencies: + emoji-regex: "npm:^8.0.0" + is-fullwidth-code-point: "npm:^3.0.0" + strip-ansi: "npm:^6.0.1" + checksum: e52c10dc3fbfcd6c3a15f159f54a90024241d0f149cf8aed2982a2d801d2e64df0bf1dc351cf8e95c3319323f9f220c16e740b06faecd53e2462df1d2b5443fb + languageName: node + linkType: hard + +"string-width@npm:^5.0.1, string-width@npm:^5.1.2": + version: 5.1.2 + resolution: "string-width@npm:5.1.2" + dependencies: + eastasianwidth: "npm:^0.2.0" + emoji-regex: "npm:^9.2.2" + strip-ansi: "npm:^7.0.1" + checksum: 7369deaa29f21dda9a438686154b62c2c5f661f8dda60449088f9f980196f7908fc39fdd1803e3e01541970287cf5deae336798337e9319a7055af89dafa7193 + languageName: node + linkType: hard + +"string-width@npm:^6.1.0": + version: 6.1.0 + resolution: "string-width@npm:6.1.0" + dependencies: + eastasianwidth: "npm:^0.2.0" + emoji-regex: "npm:^10.2.1" + strip-ansi: "npm:^7.0.1" + checksum: 8aefb456a230c8d7fe254049b1b2d62603da1a3b6c7fc9f3332f6779583cc1c72653f9b6e4cd0c1c92befee1565d4a0a7542d09ba4ceb6d96af02fbd8425bb03 + languageName: node + linkType: hard + +"string_decoder@npm:^1.1.1, string_decoder@npm:^1.3.0": + version: 1.3.0 + resolution: "string_decoder@npm:1.3.0" + dependencies: + safe-buffer: "npm:~5.2.0" + checksum: 54d23f4a6acae0e93f999a585e673be9e561b65cd4cca37714af1e893ab8cd8dfa52a9e4f58f48f87b4a44918d3a9254326cb80ed194bf2e4c226e2b21767e56 + languageName: node + linkType: hard + +"strip-ansi-cjs@npm:strip-ansi@^6.0.1, strip-ansi@npm:^6.0.0, strip-ansi@npm:^6.0.1": + version: 6.0.1 + resolution: "strip-ansi@npm:6.0.1" + dependencies: + ansi-regex: "npm:^5.0.1" + checksum: ae3b5436d34fadeb6096367626ce987057713c566e1e7768818797e00ac5d62023d0f198c4e681eae9e20701721980b26a64a8f5b91238869592a9c6800719a2 + languageName: node + linkType: hard + +"strip-ansi@npm:^7.0.1, strip-ansi@npm:^7.1.0": + version: 7.1.0 + resolution: "strip-ansi@npm:7.1.0" + dependencies: + ansi-regex: "npm:^6.0.1" + checksum: 475f53e9c44375d6e72807284024ac5d668ee1d06010740dec0b9744f2ddf47de8d7151f80e5f6190fc8f384e802fdf9504b76a7e9020c9faee7103623338be2 + languageName: node + linkType: hard + +"strip-final-newline@npm:^3.0.0": + version: 3.0.0 + resolution: "strip-final-newline@npm:3.0.0" + checksum: 23ee263adfa2070cd0f23d1ac14e2ed2f000c9b44229aec9c799f1367ec001478469560abefd00c5c99ee6f0b31c137d53ec6029c53e9f32a93804e18c201050 + languageName: node + linkType: hard + +"styled-jsx@npm:5.1.1": + version: 5.1.1 + resolution: "styled-jsx@npm:5.1.1" + dependencies: + client-only: "npm:0.0.1" + peerDependencies: + react: ">= 16.8.0 || 17.x.x || ^18.0.0-0" + peerDependenciesMeta: + "@babel/core": + optional: true + babel-plugin-macros: + optional: true + checksum: 4f6a5d0010770fdeea1183d919d528fd46c484e23c0535ef3e1dd49488116f639c594f3bd4440e3bc8a8686c9f8d53c5761599870ff039ede11a5c3bfe08a4be + languageName: node + linkType: hard + +"sync-directory@npm:6.0.4": + version: 6.0.4 + resolution: "sync-directory@npm:6.0.4" + dependencies: + chokidar: "npm:^3.3.1" + commander: "npm:^6.2.0" + fs-extra: "npm:^7.0.1" + is-absolute: "npm:^1.0.0" + readdir-enhanced: "npm:^1.5.2" + bin: + syncdir: cmd.js + checksum: 9d256826bcfd80e7980c65fa979ab2abdfa162e27acf0ffdfd7fa215f111ae332fcd35d26cfd06b28c8fb5c39463a74b0ed85db08b0aca51823c2dc697d0973b + languageName: node + linkType: hard + +"tar@npm:^6.1.11, tar@npm:^6.1.2": + version: 6.2.0 + resolution: "tar@npm:6.2.0" + dependencies: + chownr: "npm:^2.0.0" + fs-minipass: "npm:^2.0.0" + minipass: "npm:^5.0.0" + minizlib: "npm:^2.1.1" + mkdirp: "npm:^1.0.3" + yallist: "npm:^4.0.0" + checksum: 2042bbb14830b5cd0d584007db0eb0a7e933e66d1397e72a4293768d2332449bc3e312c266a0887ec20156dea388d8965e53b4fc5097f42d78593549016da089 + languageName: node + linkType: hard + +"temp-dir@npm:^3.0.0": + version: 3.0.0 + resolution: "temp-dir@npm:3.0.0" + checksum: 577211e995d1d584dd60f1469351d45e8a5b4524e4a9e42d3bdd12cfde1d0bb8f5898311bef24e02aaafb69514c1feb58c7b4c33dcec7129da3b0861a4ca935b + languageName: node + linkType: hard + +"tempy@npm:3.1.0": + version: 3.1.0 + resolution: "tempy@npm:3.1.0" + dependencies: + is-stream: "npm:^3.0.0" + temp-dir: "npm:^3.0.0" + type-fest: "npm:^2.12.2" + unique-string: "npm:^3.0.0" + checksum: f5540bc24dcd9d41ab0b31e9eed73c3ef825080f1c8b1e854e4b73059155c889f72f5f7c15e8cd462d59aa10c9726e423c81d6a365d614b538c6cc78a1209cc6 + languageName: node + linkType: hard + +"thread-stream@npm:^2.0.0": + version: 2.4.1 + resolution: "thread-stream@npm:2.4.1" + dependencies: + real-require: "npm:^0.2.0" + checksum: baac5bf555912f216a2494bf3f66377733a843306cddd233b1c5ad63084307266f61af35d6122e3936c657836d5db4a14da34300cd25930e013943b807a29c9b + languageName: node + linkType: hard + +"tiny-lru@npm:^10.0.0": + version: 10.4.1 + resolution: "tiny-lru@npm:10.4.1" + checksum: f0ae78a02756639d2f06cfcf2896f79c470926a7584f52444bcb3791a2a498adf8324db8fbd4eaafa53a37f14c5b89ace7c3f6f13b3c8e952e06f2070e9ce1a9 + languageName: node + linkType: hard + +"to-regex-range@npm:^5.0.1": + version: 5.0.1 + resolution: "to-regex-range@npm:5.0.1" + dependencies: + is-number: "npm:^7.0.0" + checksum: 10dda13571e1f5ad37546827e9b6d4252d2e0bc176c24a101252153ef435d83696e2557fe128c4678e4e78f5f01e83711c703eef9814eb12dab028580d45980a + languageName: node + linkType: hard + +"toidentifier@npm:1.0.1": + version: 1.0.1 + resolution: "toidentifier@npm:1.0.1" + checksum: 952c29e2a85d7123239b5cfdd889a0dde47ab0497f0913d70588f19c53f7e0b5327c95f4651e413c74b785147f9637b17410ac8c846d5d4a20a5a33eb6dc3a45 + languageName: node + linkType: hard + +"tslib@npm:^2.4.0": + version: 2.6.2 + resolution: "tslib@npm:2.6.2" + checksum: bd26c22d36736513980091a1e356378e8b662ded04204453d353a7f34a4c21ed0afc59b5f90719d4ba756e581a162ecbf93118dc9c6be5acf70aa309188166ca + languageName: node + linkType: hard + +"tsx@npm:3.14.0": + version: 3.14.0 + resolution: "tsx@npm:3.14.0" + dependencies: + esbuild: "npm:~0.18.20" + fsevents: "npm:~2.3.3" + get-tsconfig: "npm:^4.7.2" + source-map-support: "npm:^0.5.21" + dependenciesMeta: + fsevents: + optional: true + bin: + tsx: dist/cli.mjs + checksum: 7147970975344d779f495169c0246dff5110a3e110b0a89e8cec6403fcd6c03ede3abbf4c7ccc03dae7fb17d7f1a4c21992c5c6d7ab2130cb2f7a3ffaeae1ce1 + languageName: node + linkType: hard + +"type-fest@npm:^1.0.1": + version: 1.4.0 + resolution: "type-fest@npm:1.4.0" + checksum: 89875c247564601c2650bacad5ff80b859007fbdb6c9e43713ae3ffa3f584552eea60f33711dd762e16496a1ab4debd409822627be14097d9a17e39c49db591a + languageName: node + linkType: hard + +"type-fest@npm:^2.12.2": + version: 2.19.0 + resolution: "type-fest@npm:2.19.0" + checksum: 7bf9e8fdf34f92c8bb364c0af14ca875fac7e0183f2985498b77be129dc1b3b1ad0a6b3281580f19e48c6105c037fb966ad9934520c69c6434d17fd0af4eed78 + languageName: node + linkType: hard + +"typescript@npm:5.2.2": + version: 5.2.2 + resolution: "typescript@npm:5.2.2" + bin: + tsc: bin/tsc + tsserver: bin/tsserver + checksum: d65e50eb849bd21ff8677e5b9447f9c6e74777e346afd67754934264dcbf4bd59e7d2473f6062d9a015d66bd573311166357e3eb07fea0b52859cf9bb2b58555 + languageName: node + linkType: hard + +"typescript@patch:typescript@npm%3A5.2.2#optional!builtin": + version: 5.2.2 + resolution: "typescript@patch:typescript@npm%3A5.2.2#optional!builtin::version=5.2.2&hash=f3b441" + bin: + tsc: bin/tsc + tsserver: bin/tsserver + checksum: f79cc2ba802c94c2b78dbb00d767a10adb67368ae764709737dc277273ec148aa4558033a03ce901406b35fddf4eac46dabc94a1e1d12d2587e2b9cfe5707b4a + languageName: node + linkType: hard + +"unc-path-regex@npm:^0.1.2": + version: 0.1.2 + resolution: "unc-path-regex@npm:0.1.2" + checksum: a05fa2006bf4606051c10fc7968f08ce7b28fa646befafa282813aeb1ac1a56f65cb1b577ca7851af2726198d59475bb49b11776036257b843eaacee2860a4ec + languageName: node + linkType: hard + +"undici-types@npm:~5.26.4": + version: 5.26.5 + resolution: "undici-types@npm:5.26.5" + checksum: 0097779d94bc0fd26f0418b3a05472410408877279141ded2bd449167be1aed7ea5b76f756562cb3586a07f251b90799bab22d9019ceba49c037c76445f7cddd + languageName: node + linkType: hard + +"unique-filename@npm:^3.0.0": + version: 3.0.0 + resolution: "unique-filename@npm:3.0.0" + dependencies: + unique-slug: "npm:^4.0.0" + checksum: 8e2f59b356cb2e54aab14ff98a51ac6c45781d15ceaab6d4f1c2228b780193dc70fae4463ce9e1df4479cb9d3304d7c2043a3fb905bdeca71cc7e8ce27e063df + languageName: node + linkType: hard + +"unique-slug@npm:^4.0.0": + version: 4.0.0 + resolution: "unique-slug@npm:4.0.0" + dependencies: + imurmurhash: "npm:^0.1.4" + checksum: 40912a8963fc02fb8b600cf50197df4a275c602c60de4cac4f75879d3c48558cfac48de08a25cc10df8112161f7180b3bbb4d662aadb711568602f9eddee54f0 + languageName: node + linkType: hard + +"unique-string@npm:^3.0.0": + version: 3.0.0 + resolution: "unique-string@npm:3.0.0" + dependencies: + crypto-random-string: "npm:^4.0.0" + checksum: 1a1e2e7d02eab1bb10f720475da735e1990c8a5ff34edd1a3b6bc31590cb4210b7a1233d779360cc622ce11c211e43afa1628dd658f35d3e6a89964b622940df + languageName: node + linkType: hard + +"universalify@npm:^0.1.0": + version: 0.1.2 + resolution: "universalify@npm:0.1.2" + checksum: 40cdc60f6e61070fe658ca36016a8f4ec216b29bf04a55dce14e3710cc84c7448538ef4dad3728d0bfe29975ccd7bfb5f414c45e7b78883567fb31b246f02dff + languageName: node + linkType: hard + +"uri-js@npm:^4.2.2": + version: 4.4.1 + resolution: "uri-js@npm:4.4.1" + dependencies: + punycode: "npm:^2.1.0" + checksum: b271ca7e3d46b7160222e3afa3e531505161c9a4e097febae9664e4b59912f4cbe94861361a4175edac3a03fee99d91e44b6a58c17a634bc5a664b19fc76fbcb + languageName: node + linkType: hard + +"util-deprecate@npm:^1.0.1": + version: 1.0.2 + resolution: "util-deprecate@npm:1.0.2" + checksum: 474acf1146cb2701fe3b074892217553dfcf9a031280919ba1b8d651a068c9b15d863b7303cb15bd00a862b498e6cf4ad7b4a08fb134edd5a6f7641681cb54a2 + languageName: node + linkType: hard + +"watchpack@npm:2.4.0": + version: 2.4.0 + resolution: "watchpack@npm:2.4.0" + dependencies: + glob-to-regexp: "npm:^0.4.1" + graceful-fs: "npm:^4.1.2" + checksum: 4280b45bc4b5d45d5579113f2a4af93b67ae1b9607cc3d86ae41cdd53ead10db5d9dc3237f24256d05ef88b28c69a02712f78e434cb7ecc8edaca134a56e8cab + languageName: node + linkType: hard + +"which@npm:^2.0.1": + version: 2.0.2 + resolution: "which@npm:2.0.2" + dependencies: + isexe: "npm:^2.0.0" + bin: + node-which: ./bin/node-which + checksum: 4782f8a1d6b8fc12c65e968fea49f59752bf6302dc43036c3bf87da718a80710f61a062516e9764c70008b487929a73546125570acea95c5b5dcc8ac3052c70f + languageName: node + linkType: hard + +"which@npm:^4.0.0": + version: 4.0.0 + resolution: "which@npm:4.0.0" + dependencies: + isexe: "npm:^3.1.1" + bin: + node-which: bin/which.js + checksum: f17e84c042592c21e23c8195108cff18c64050b9efb8459589116999ea9da6dd1509e6a1bac3aeebefd137be00fabbb61b5c2bc0aa0f8526f32b58ee2f545651 + languageName: node + linkType: hard + +"wrap-ansi-cjs@npm:wrap-ansi@^7.0.0": + version: 7.0.0 + resolution: "wrap-ansi@npm:7.0.0" + dependencies: + ansi-styles: "npm:^4.0.0" + string-width: "npm:^4.1.0" + strip-ansi: "npm:^6.0.0" + checksum: cebdaeca3a6880da410f75209e68cd05428580de5ad24535f22696d7d9cab134d1f8498599f344c3cf0fb37c1715807a183778d8c648d6cc0cb5ff2bb4236540 + languageName: node + linkType: hard + +"wrap-ansi@npm:^8.1.0": + version: 8.1.0 + resolution: "wrap-ansi@npm:8.1.0" + dependencies: + ansi-styles: "npm:^6.1.0" + string-width: "npm:^5.0.1" + strip-ansi: "npm:^7.0.1" + checksum: 7b1e4b35e9bb2312d2ee9ee7dc95b8cb5f8b4b5a89f7dde5543fe66c1e3715663094defa50d75454ac900bd210f702d575f15f3f17fa9ec0291806d2578d1ddf + languageName: node + linkType: hard + +"wrappy@npm:1": + version: 1.0.2 + resolution: "wrappy@npm:1.0.2" + checksum: 159da4805f7e84a3d003d8841557196034155008f817172d4e986bd591f74aa82aa7db55929a54222309e01079a65a92a9e6414da5a6aa4b01ee44a511ac3ee5 + languageName: node + linkType: hard + +"yallist@npm:^4.0.0": + version: 4.0.0 + resolution: "yallist@npm:4.0.0" + checksum: 4cb02b42b8a93b5cf50caf5d8e9beb409400a8a4d85e83bb0685c1457e9ac0b7a00819e9f5991ac25ffabb56a78e2f017c1acc010b3a1babfe6de690ba531abd + languageName: node + linkType: hard + +"yocto-queue@npm:^0.1.0": + version: 0.1.0 + resolution: "yocto-queue@npm:0.1.0" + checksum: f77b3d8d00310def622123df93d4ee654fc6a0096182af8bd60679ddcdfb3474c56c6c7190817c84a2785648cdee9d721c0154eb45698c62176c322fb46fc700 + languageName: node + linkType: hard + +"yocto-queue@npm:^1.0.0": + version: 1.0.0 + resolution: "yocto-queue@npm:1.0.0" + checksum: 2cac84540f65c64ccc1683c267edce396b26b1e931aa429660aefac8fbe0188167b7aee815a3c22fa59a28a58d898d1a2b1825048f834d8d629f4c2a5d443801 + languageName: node + linkType: hard + +"zod@npm:3.21.4": + version: 3.21.4 + resolution: "zod@npm:3.21.4" + checksum: 03c79fa4610a35e24119771970be764c6e177a271a225587f86a7fc35d55e94a154d8e1970d23ffe35b567c147262bedbcb53b31aa30eeef2493fbd13e1b4aca + languageName: node + linkType: hard

G=3DpibVPP#1Y`r(@#NYOeE@Mx+6B?SqT$`%9H*Zz3>`oIa%v zjmn3gW1~fYcD=2FzxuiO7Ug~6Tc3@f(P8+tqp*sEGvBK9JiX;?=dkrJRq@Jfj&$=y zRo$M7m8uujWA8cWL>x|!#sk@04}Mz)sVBMQ z?XpESU8kt?Rl&j93Rt91cQ+R}9n=~vkaXlh==Z#UW*gxry^9<&^(Fujw}Ue|(uoJ* z+J~`C6EBkwZn;^+@lnrppZEHZz6a)-Zb1QrD)IW9ez`n5Gc&X|2Qn6d(Tf+qTWS6P>?Ec_1 zhFvY{Hna_h79NzgE?vi?v%9R9ZsS7N{}xbX_U^HDN@|LTkcHkZ>@eZGE17rLwMLp~ zxgDrnHH+-OztW`FUCp@rRs-`r)SkQ>JlcMBCF{r+5If z7V?yazj$Yrnz~0nLR}8S@##5fD148#j{jBMSjY)OVVV~`jJ&~oCPc2mc*Rr|r_T;h zmnD~vk!+t{JX1UP+~{uKKX#{o1kW~}}soPK*f5!8d+A!eMpSKmJ@b-ZfxD@^=I zcn{YHc6HY{>yJlo1^ndcW^w;j8^p?eMy;(Avw`I#qbywl0k1As;0vA`^2i6wV#5uJ z4`+$Cyo9;R0<_ya;)0qJVRej-{ z&E7Cp9WUYJxng7#f0ei`4XM60;C*ks?r`K}kEthkz#x7Zwt_QIbom9J?Z_W@7CU;2 z7Z3p{T@{YQzi9-Yqj2h~F#GB-t$7(ZP2~@Z@bp)NavGPl-abL2^12 zI~J=nr}b(Gxf4Sk-=05L;nJi@88^O7{}d)0I-(Psmu`DOEovD4;ss@#cX{sLflPbq z{`aq7beJ?xG|c|bF^0^$T);;i--a2%aQNpJCKX4C>DPJGxP`=BTTWgR;TZlp_~>xq zbnytfesrq1Z(%*rT?#=n0m5Z31;3tzQub@~0s|wvX@?JWa;_*je)J!@QksnW^j8x) z<~&9?kUy5hk?-l6VP!o%aFBiF^%h5F-Vd3AqnEve0B>-FUjPmk2u^VF6rqySQyMAY z=qYfd$P)IyYwG)iNf^AWDYDQo!nuQ@IR6W)!h(fEh#?_Svi)`Ez2k7-=L%OI1!O+? zKW6ts8#D$KU&m)F3&+UE8k|$Hx2h{viJFUjT1ZpykP%$>AL4u&+t^$vsOn!Z;rC9t z@lhz}CY`B4wN{3xOdP zFD3$}fe5F31DL9HtV5NRQnX^&bP`4hJqVd%EOmyotX4nVV=o}W!SY(R!{)`wh>4ZR=SdvP~W7(B&ay}`sZYJcOA%&7Naw2k0AIu*%Z z6$_rhEx7m$7BLY%O}eR@_trZ^KSBH>^B0=pJ>Vi;1K>p#d}duXe4t&INkFPvFrVRdjT+WZ_-+C z585!>|B04d<|<)0iA1{wpi7LZLmBR42371As7EOp8Qay3OLL;@G|`1@WZQGzr*0z?JO9;ABKZ>S2s_^kWU0t1z{pFR^O%f#bg}PbTS?(g2eE)WR+$ zh9485Xm={I6FMrd7s|w5y^>^PU37ZH5vA84Z+XkkOnM7qY|@4C1_$5v^4gRLI}SBK z_D7l^GD_q$DHDWmJ!Ehjuq6B-2r|<0#llZ&43d)%gr>lXBpwcW2R+w!WO)LH2gxro zSk}D?;Te;wfcXWg@xNlc}76y$i4K1n?`-#pbl%8=O};Tk0iNgGvH#s6sa{-_)h!f{&`t z?;V?+Z$Eu(q5}Xe)1G&s8}S`_f14k~%jHsFPituwE~0Z{q6jfofg4t)q?`bj1F!>>lPqkL&F!5uQHF~NlHSu!-m?k!q(2ODj%tgy`hALXnR zgbmEbq04Db_e+nlXtmr(1A6gm}To10+C6zAwC7Tp|)v)6GPSsuG(|*uQvojj5^~F#2gN^J4)@V5k%dU9j}ESPb<@yQC;Dz zBUWfHgmcd)u!m~Dm7A5-(s1^76-mYcLXQB$83!&@;2BC3FS^6SR`#)fB$bk7i{xB- zpoR|3PdRbt2_^rsS0MSg(=OONuqPX~G)5BI9l(d9aFL}!aiHVZT`=%U8km8E&W9l7 z5te$eorJxFpcop-$8hPHMni$aNqfQWad_;?4Pt^wv>o}u!6)HmbKkR}YXx=2{3OQ1TL(zNe>t83cWH|x1D z2m{7HGB#KNbu2M_8k4jKHKB%1=w?W4MrwuI5;sA8xL`dgX~w;0qPLww$BPLpc^Yic z87z*DOG?LW4NaYcgO^RAHY`{GtoQ*J|0u2_fSZT|gE$0G9#@dqz_%wo>4;6M_iXfj zm7ZR+Ob-o@hnuZ`(r=^5CQ<{L=@`6LYD+^PR&q&sQCw1Tc)sa?PzwEJl9t2Hd!ho)&%~8c!fnYB{KNMF)MZ<-4!PszeI<}0 z;N9``N&YiBIw75cU}=!_lQpRH_hZEgKRNNPgRDG%T{k8|M~%u**B~L!N!wrx4&Nl7 z-r%&a>CI8kys>{g{bsCvt@l>zR!`TQV!dt1Y?hE)dR=_NB-dLfy{BM~E6lS8_PoPY z5$$y@lcIWTG+DOF=HEL>$==}b=@b};@79_g_chRJya=G20DIdT3wEOqPt&S{<%Aq= zK(Xc4;jNV&dp4P-CnGzdt?kX&*(659bm?hKxp}Hy>Sn0tM{nv|91beSv3)T}&m?+M zI;En-IJL_qhd3t}oaIi8RuKu+@AkHKM0Y`2(%M5~N$%xB7d?TST|KVRQhCJGyAu5X zIaXJk8xjxio8^5!ayhdKcGmvRdgceMd-RT!!@4TmUZnfi;M_O*qn}~(jcT5f_+#I> zj8JSsIO=i)j^4j%o5&)eV~v6q<7d&8$VK(X`}+ahZ{w*CH@R$boqNSN+v2Xggr|79 z&nD?M=juETDb%=tKru&yHZ5?4c z121qT;rt^Ur6*;}aJ(lF;5RJ}_8{sxgL4;v49X*O@1`re@*qfkL3aSO~r=fdw;E|%qHXmR} zuo#OayAubWtF$DhWN{k<*iQQlYYB{TDWeiQeLs)!?P*ZTcoqS>_%V`&rDl4<4J={) zQG=h4^b3j8#eZbI6->mSesn4jK_ks$Kl75=>FI^gP~+OVVD&|rIVUZb*;A4) zbngn<1_}ubuGnnUSlLtnF{vo6ZCG_pqjiffa9}9hzJ1aImvyyjSo>>~IY#lN6oZc8 zvyyt-IR1f2*msfOZY;994&P(J4`M<)kD1cA$|c~Dw;f_IztVmm>|GVVclJ(Pd`R;; z>lVqZVDBvSHmCCcKsC_(I1uOLP7nTW3jRKBPAux1CcjWvysao60(kMq2?#2h1~x#a=z+a$_rX!EC{>>qyX{Okj! zM;=Ye7qN@=3nrt0{)U-dea1C;GBV*0pV)nfPs_~-=_xL3ea8rci;48A-Rwlnce3u( z+4vd1Q?3_+RH%e z>_6Loey1%duAI`OW9nTysG^Z>f>X;SJlF0rt?U0!+a>EVp8MMjR^p!g^Pej{gno2q zq(C+PT5Z_E`tTmiqc(`~AOtjUE;OlH>UQyxZ8hM-{G{|E-52Z4QzPF$w=OgDz?(0% zesXuY(rlXN2B{!QpjuyU_0x0rtFo~%XD3}MbV7>1hkw#^L?VRG_z`B3XR{<;%5W*2)MjK_?*;8TYURVu%dhzhR=3n%)jq&P4n;SK__TrZD5 zY(>92rPeic1+zw>eOu( z@_?eqA!VWg4wJxHjmqlQ27|1=O~eSHw_LL~QK$5~&;3u$-m5Ug(bO#w5^aMYkJ}H? zX1P57cEy?hpjq}ed0#MMCl6Ejrt9zTe-6^J))T+|MAqVb2ACO;d(fMr+pEmiK6`?& zR}A+6zxi;7|7S`1RRzOoqd(PuQ2l!-XNb0M}DBqZ-Y2_9-NovqAexStAb%UD{}SpMo;^}7X%DmNcIc#fR?qhRkdqpuKnla+}I zXp>0SOb}r4tJls%-8+8}@Qn$P60s6|4V4n3sujP~=xlkq8gfzCM(C72FwVWxzvRpv-PiW1gO-sx!XM_ol2hy4IRxeFenr?^klT zt4I)IBA!6>!|6+K$h+zyx9*e0CH#us=xxFuTe2JF3-3PEP5PWxp+`3Mc zQFBjFf23F!V>i~kPR5A6;-X%|H@+dJ_m|SM2?bC#`jpn*|Gby*Jv#wJ8xPR*{<>_! z*rUc^198Vl6Qv3@Xtk{xbVeyb%j=T#?Q54Thw6eOFXS{4QT`hHUE$^!=k2c$Vhv>C zTn8B+D)S~wElVePrI7LvaT0W0P~SV-dfB;RtjErC`ZJ!`%aVJ30$66*!BtM`CQcvYqjJ8==6 zg>OknUUfO8sV@7P?|~~%sAnc#1(2$ZszS$t+)+zop{IMM0w`(HJ;LO|0@U_agCz=# z&9cZ^kBgv*8aZ7}h#Ezx(i^|Lk>2xJV&RU|W;$_d+>)hT!ALEvJF~Uk6uP^wdlqw@ z;_n?eYWmG&*cNDI{($J5{0rmFU#A769$=pu@t_^X#kuR$-ImI5c*$kM%60N2I8C1E zv&#i`Qw13GM%{lMI^W*aMb;d6;%i*zmNe=OnHL~^Pk(~9M&flE#ELi>Z zknSb78R=H=zxVtEoT~OzSzoxy9sFkJe<`>i0jm01H~|hpBfu#jYHBs(bTdJ*M_hl=wzP$z z19VZ2Cnu!ZFCA@3{!;{F*A}*~RB~QFWX{}WO}E_CAaMrQo#wmu_kXQEWu|sjCI$dC zFyG2PlaMs;)+Xm2s=(O#0!?S== zo}p`6xTH8AynLHau72SLfmOH6NYBJ~U(0qM2J6_HU8#=Kf~Ud^q~y_|=g|e2a)R)a zwpv+RQa7|J2<|{)#(2$maj}je>$G*8?JUVLJF{;j`pj?P36p-O{bf@B zk@Z?m_Bdzm_c_U3+CMU1`kA8@8RpLpmP`U&SN7hrsjPGjoeERXo78MIzZ3G9`K`@` z%{`-UxE+in&Up`BA#{XJqzYXs@h+24c@*h%LHLgFvtc%!NrX4Cs$O&QaB>_?5jaOL zvA|lcLalYKh~EMeZE-}R%o4-(y5vuGSDI}CAkP`q>61LG3YozE9h5#jjaDc~w5yUk$HS=QUN*mNsj{vKrU%;!M>EO^g&D&Z&?LK~O`JeZo56L01&{LOXOu0% z8x=f0e~zb|7#+lbzJ?@7)gtv6%ZZP&5DTWLLA{(wm3zM-jJ%I&KD>g56imL>SmgZG z$>*Cz+Q$8LLcqJnGC{p}2e#}JX#a8-iZ&o#FosJc*BU#H)%fE!oB^|Q^%i>wF)G;o zIEnOSmJ}V%gBvZe{M@AC_c*XkFezCdtk=AL&Eoe*pi*QckguO=oh4|qkkL*OK8q!v z1uJ$%?AMatKuiP5?2u<;lJZ`aK{r1^(Zr+3lKiJS7riQgrd59dQkDl2>RWSCvT#TP z1oFKA(>!J#s(Z0Cn<8EQ*KB4jGz$1nOMBk+yZ_|-)$SNro;!mAnM^i-&PRmRzGI{O z*cF#*zlFFR#pfr;XJ^x-1XXttFIP zr(WmwV=3$dMofclw;Is!1YI`GtlsDSaVPlxc?E7hlj4Tu4uZD?aY-Mt0K6Dg2x|KC zuzCppaxm$O4>+WYBW=qp-OvfA02VzH}pX=AC3Nn-1K$$?F70Ft} zootm8fh-X|Km-vh6P@&_ykmW;92t&sCX{|<$Cs7)(rbiJr*tjV_i@xI(`ySzW)%|( zON5;#8Yq@Lhp|GDzKoJUNqhSNLVzs4LXBKp>3)wrOhSiGf+J`?=u0ATO}7k1&}}{= zc@KhbBQI@%#ADF(M=ti1tK-^k9KK-*z?MeOt}%`OF;$(k?lB}7lPWJG=(OvZI;jRJ zS2{3LXjO0mUV%FZ=H|QW??~u`xo(pF+K=gc4%U`}Au6u9vIJR`-{yptkD=pg3v!C5 zCb)w-qO`BP(jZ*e)JeR?kysLlu9+i4Ij?RD5cFgcW?*&uf}ODD4L-dG0-~b*Yo-h{ zv!KX__Q%s;i4je5R}0O0+>ZKN3h5C+3(nAEHA&$L-DBMiUYheJS$16ArhXh;76m8h zC^^Qvs+@v{yyAaOVuvdTp)J$gPd)Gi=?leBx6g+PIT`xHSvI60SDizCfVs-do+f&m zuaiGY`=h7p%WEG!<1U)Lxk|IwxZ}DovD04(VuZ&AUqw0$w`uM3TxOR_Z+&=qAtYuB z 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 diff --git a/jest.config.json b/jest.config.json index ff14fe39..c7d828ad 100644 --- a/jest.config.json +++ b/jest.config.json @@ -1,34 +1,60 @@ { + "displayName": "@qiwi/tech-radar", + "injectGlobals": false, + "clearMocks": true, + "resetMocks": true, "testEnvironment": "node", - "transform": {}, - "transformIgnorePatterns": [ - "/!node_modules\\/lodash-es/", - "/node_modules/(?!lodash-es)" + "testMatch": [ + "/src/test/[jt]s/**/*.[jt]s?(x)" + ], + "testPathIgnorePatterns": [ + "__mocks__", + "__snapshots__" ], - "moduleNameMapper": { - "csv-parse/sync": "/node_modules/csv-parse//lib/sync.js" - }, "collectCoverage": true, "collectCoverageFrom": [ - "/src/main/js/**/*.js" - ], - "coveragePathIgnorePatterns": [], - "testTimeout": 10000, - "testMatch": [ - "/src/test/js/**/*.js", - "/src/test/js/**/*.mjs" + "/src/main/[jt]s/**/*.[jt]s?(x)" ], - "testPathIgnorePatterns": [ - "/node_modules/", - "/src/test/stub", - "/src/test/temp" + "coverageDirectory": "/target/coverage", + "coveragePathIgnorePatterns": [ + "/node_modules", + "/target" ], - "moduleFileExtensions": [ - "js", - "mjs", - "cjs", - "jsx", + "coverageProvider": "v8", + "coverageReporters": [ "json", - "node" + "lcov" + ], + "snapshotResolver": "@packasso/jest-snapshot-resolver", + "moduleNameMapper": {}, + "transform": { + "^.+\\.svg$": "@packasso/jest-svgr-transformer", + "^.+\\.[jt]sx?$": [ + "@swc/jest", + { + "jsc": { + "parser": { + "syntax": "typescript", + "tsx": true, + "decorators": true, + "dynamicImport": true + }, + "transform": { + "react": { + "runtime": "automatic" + }, + "legacyDecorator": true, + "decoratorMetadata": true + } + } + } + ] + }, + "extensionsToTreatAsEsm": [ + ".ts", + ".tsx" + ], + "transformIgnorePatterns": [ + "/node_modules/" ] } diff --git a/light.png b/light.png new file mode 100644 index 0000000000000000000000000000000000000000..d3e4aeb58f0141ec1a90622195879341f2addfe5 GIT binary patch literal 271997 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�=G^l?yjX-361xX#iL_-}Oa~|G}Q#zJrC1Ibm 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 literal 0 HcmV?d00001 diff --git a/package.json b/package.json index 1ac56e5e..9123de53 100644 --- a/package.json +++ b/package.json @@ -1,71 +1,61 @@ { "name": "@qiwi/tech-radar", "description": "Fully automated tech-radar generator", - "version": "1.13.18", - "main": "./src/main/js/index.js", - "private": false, - "publishConfig": { - "access": "public" - }, - "type": "module", - "files": [ - "src/main/js", - "src/main/tpl" - ], + "version": "2.0.0", + "packasso": "@packasso/lib", "scripts": { - "build": "exit 0", - "test": "npm-run-all -p -l lint test:unit test:depcheck", - "test:unit": "NODE_OPTIONS=--experimental-vm-modules yarn jest --detectOpenHandles --forceExit --runInBand", - "test:depcheck": "npm_config_yes=true npx -p depcheck -p @babel/parser@7.16.4 depcheck --ignores espree", - "docs": "jsdoc -d dist/docs src/main/js/index.js", - "lint": "eslint 'src/{main,test}/**/*.js'", - "lint:fix": "yarn lint --fix", - "format": "prettier --write \"src/**/*.js\"", - "release": "npx -p @qiwi/semrel-toolkit semrel", - "generate": "node ./src/main/js/cli.mjs --input \"data/**/*.{csv,json,yml}\" --output dist --base-prefix tech-radar --autoscope true --nav-page true && touch dist/.nojekyll", - "preview": "node src/main/server", - "postupdate": "yarn && npm_config_yes=true npx yarn-audit-fix && yarn test && yarn generate" - }, - "prettier": "prettier-config-qiwi", - "exports": { - "import": "./src/main/js/index.js" + "build": "tsx src/main/ts/bin.ts build -i src/main/radar -o target/radar", + "dev": "tsx src/main/ts/bin.ts dev -i src/main/radar" }, - "bin": { - "techradar": "./src/main/js/cli.mjs" + "dependencies": { + "@fastify/static": "6.12.0", + "commander": "11.1.0", + "execa": "8.0.1", + "fastify": "4.15.0", + "ora": "7.0.1", + "pkg-dir": "7.0.0", + "sync-directory": "6.0.4", + "tempy": "3.1.0" }, "devDependencies": { - "@qiwi/npm-run-all": "^4.1.7", - "eslint": "^8.44.0", - "eslint-config-prettier": "^9.0.0", - "eslint-config-qiwi": "^2.1.3", - "finalhandler": "^1.2.0", - "jest": "^29.5.0", - "jsdoc": "^4.0.2", - "prettier": "^3.0.0", - "prettier-config-qiwi": "^2.1.2", - "serve-static": "^1.15.0" + "@types/css-modules": "1.0.4", + "@types/d3": "7.4.2", + "@types/node": "20.8.9", + "@types/react": "18.2.33", + "@types/react-dom": "18.2.14", + "d3": "7.8.5", + "next": "13.4.19", + "query-string": "8.1.0", + "react": "18.2.0", + "react-dom": "18.2.0", + "tsx": "3.14.0", + "typescript": "5.2.2" }, - "engines": { - "node": ">=14", - "npm": ">=6" - }, - "dependencies": { - "@11ty/eleventy": "^2.0.1", - "ajv": "^8.12.0", - "csv-parse": "^5.4.0", - "fs-extra": "^11.1.1", - "globby": "^13.2.1", - "html-minifier": "^4.0.0", - "js-yaml": "^4.1.0", - "lodash-es": "^4.17.21", - "meow": "^12.0.1", - "nanoid": "^4.0.2", - "temp-dir": "^3.0.0", - "terser": "^5.18.2" + "packageManager": "yarn@4.0.1", + "license": "MIT", + "publishConfig": { + "bin": { + "qiwi-tech-radar": "./target/esm/bin.mjs" + }, + "files": [ + "target/resources/**/*", + "target/cjs/**/*", + "target/esm/**/*", + "target/buildstamp.json" + ], + "type": "module", + "main": "./target/cjs/index.cjs", + "module": "./target/esm/index.mjs", + "types": "./target/esm/index.d.ts", + "exports": { + ".": { + "require": "./target/cjs/index.cjs", + "import": "./target/esm/index.mjs", + "types": "./target/esm/index.d.ts" + } + }, + "access": "public" }, - "keywords": [ - "radar", - "tech-radar" - ], - "license": "MIT" + "type": "module", + "exports": "./src/main/ts/index.ts" } diff --git a/scripts/build.js b/scripts/build.js new file mode 100644 index 00000000..b836a582 --- /dev/null +++ b/scripts/build.js @@ -0,0 +1,25 @@ +import { join } from 'node:path' + +import fastifyStatic from '@fastify/static' +import fastify from 'fastify' + +import { copy, exec, prepare, src, target, tmp } from './utils.js' + +const cleanup = await prepare() + +const serve = fastify().register(fastifyStatic, { + root: join(tmp, 'public'), +}) + +await serve.listen({ port: 3000 }) +await exec(`next build`) +await serve.close() + +await copy(join(tmp, 'build'), join(target, 'build')) +await copy(join(src, 'ts'), join(target, 'ts')) +await copy( + join(src, 'resources', 'webapp'), + join(target, 'resources', 'webapp'), +) + +await cleanup() diff --git a/scripts/dev.js b/scripts/dev.js new file mode 100644 index 00000000..829d5093 --- /dev/null +++ b/scripts/dev.js @@ -0,0 +1,7 @@ +import { exec, prepare } from './utils.js' + +const cleanup = await prepare() + +await exec(`next dev`) + +await cleanup() diff --git a/scripts/utils.js b/scripts/utils.js new file mode 100644 index 00000000..f3798d4b --- /dev/null +++ b/scripts/utils.js @@ -0,0 +1,41 @@ +import { cp, rm } from 'node:fs/promises' +import { join } from 'node:path' +import { cwd } from 'node:process' + +import { execaCommand } from 'execa' +import syncDirectory from 'sync-directory' + +export const dir = cwd() +export const src = join(dir, 'src', 'main') +export const target = join(dir, 'target') +export const tmp = join(target, 'webapp') + +export const prepare = async () => { + const dirs = [ + [join(src, 'js'), join(target, 'js')], + [join(src, 'ts'), join(tmp, 'src')], + [join(src, 'resources', 'webapp'), tmp], + [join(src, 'resources', 'public'), join(tmp, 'public')], + [join(src, 'resources', 'radars'), join(tmp, 'public')], + ] + const watchers = await Promise.all( + dirs.map( + async ([src, dst]) => + await syncDirectory.async(src, dst, { + watch: true, + type: 'copy', + }), + ), + ) + return async () => + await Promise.all(watchers.map(async (watcher) => await watcher.close())) +} + +export const exec = (cmd) => execaCommand(cmd, { stdio: 'inherit', cwd: tmp }) + +export const copy = async (src, dst) => { + await rm(dst, { force: true, recursive: true }) + await cp(src, dst, { + recursive: true, + }) +} diff --git a/src/main/js/cli.mjs b/src/main/js/cli.mjs deleted file mode 100755 index 64dcb891..00000000 --- a/src/main/js/cli.mjs +++ /dev/null @@ -1,62 +0,0 @@ -#!/usr/bin/env node - -import meow from 'meow' -import {run} from './index.js' - -export const cli = meow( - ` - Usage: - techradar --input /path/to/csv --output /radar --basePrefix tech-radar --autoscope true --nav-page true --nav-title title --nav-footer footer - Options - --cwd - --input - --output - --basePrefix - --autoscope - --nav-page - --nav-title - --nav-footer - --temp - --templates -`, - { - importMeta: import.meta, - flags: { - input: { - type: 'string', - isRequired: true, - }, - output: { - type: 'string', - isRequired: true, - }, - basePrefix: { - type: 'string', - }, - cwd: { - type: 'string', - }, - autoscope: { - type: 'boolean' - }, - navPage: { - type: 'boolean' - }, - navTitle: { - type: 'string' - }, - navFooter: { - type: 'string' - }, - temp: { - type: 'string' - }, - templates: { - type: 'string', - shortFlag: 'tpl' - } - }, - }, -) - -run(cli.flags) diff --git a/src/main/js/constants.js b/src/main/js/constants.js deleted file mode 100644 index d202aab7..00000000 --- a/src/main/js/constants.js +++ /dev/null @@ -1,5 +0,0 @@ -import path, { dirname } from 'node:path' -import { fileURLToPath } from 'node:url' - -export const rootDir = dirname(fileURLToPath(import.meta.url)) -export const tplDir = path.resolve(rootDir, '../tpl') diff --git a/src/main/js/generator/.eleventy.cjs b/src/main/js/generator/.eleventy.cjs deleted file mode 100644 index 22832df7..00000000 --- a/src/main/js/generator/.eleventy.cjs +++ /dev/null @@ -1,80 +0,0 @@ -const htmlmin = require('html-minifier') -const terser = require('terser') -const path = require('path') -const util = require('util') - -module.exports = (config) => { - const { temp, prefix, output } = config.extra - // const assetsPath = path.join(temp, 'assets') - // config.addPassthroughCopy({ - // [assetsPath]: '/', - // }) - - config.addFilter('console', (value) => util.inspect(value)) - - // NOTE It's cached by template renderer, so we need to pass extra options through settings injection - config.addShortcode('makeBootScript', (settings, collections) => { - if (!collections || !settings) { - return - } - - const { title, prefix, date } = settings.extra - const entries = collections - .map((entity) => ({ - quadrant: entity.data.quadrant, - ring: settings.rings.findIndex( - (ring) => ring.id === entity.data.ring.toLowerCase(), - ), - moved: entity.data.moved || 0, - label: entity.fileSlug, - link: config.javascriptFunctions.url(entity.url, prefix), - active: false, - })) - .filter((entity) => entity.ring >= 0) - - const radarSettings = { - ...settings, - title, - date, - entries, - } - - return `radar_visualization(${JSON.stringify(radarSettings)})` - }) - - config.addNunjucksAsyncFilter('jsmin', async function (code, callback) { - try { - const minified = await terser.minify(code) - callback(null, minified.code) - } catch (err) { - console.error('Terser error: ', err) - // Fail gracefully. - callback(null, code) - } - }) - - config.addTransform('htmlmin', (content, outputPath) => { - if (outputPath && outputPath.endsWith('.html')) { - const result = htmlmin.minify(content, { - removeComments: true, - collapseWhitespace: true, - }) - - return result - } - return content - }) - - return { - dir: { - input: temp, - output: output, - layouts: '_layouts', - }, - pathPrefix: prefix, - dataTemplateEngine: 'njk', - markdownTemplateEngine: 'njk', - htmlTemplateEngine: 'njk', - templateFormats: ['md', 'njk'], - } -} diff --git a/src/main/js/generator/index.js b/src/main/js/generator/index.js deleted file mode 100644 index 0f1b8c0b..00000000 --- a/src/main/js/generator/index.js +++ /dev/null @@ -1,165 +0,0 @@ -import Eleventy from '@11ty/eleventy' -import fse from 'fs-extra' -import { uniq } from 'lodash-es' -import path from 'node:path' - -import { rootDir, tplDir } from '../constants.js' -import { tempDir } from '../util.js' -import { genMdAssets } from './markdown.js' - -export const genConfig = async ({ temp, output, prefix }) => { - const configExtPath = path.resolve(rootDir, 'generator/.eleventy.cjs') - const configMixin = { extra: { temp, prefix, output } } - const configPath = path.join(temp, 'config.js') - const configContents = ` -module.exports = (config) => require('${configExtPath}')(Object.assign(config, ${JSON.stringify( - configMixin, - )})) -` - await fse.outputFile(configPath, configContents, 'utf8') - - return configPath -} - -export const genRadarSettings = ({ - title, - basePrefix, - navFooter, - date, - document, - scope, - renderSettings, -}) => { - const quadrants = Object.entries(document.quadrantTitles).map( - ([id, name]) => ({ name, id }), - ) - const extra = { - title, - date, - target: path.join(scope, date), - prefix: path.join(basePrefix, scope, date), - basePrefix, - footer: navFooter, - } - - return { ...renderSettings, extra, quadrants } -} - -export const genRadars = async ({ radars, ctx }) => { - await Promise.all( - radars.map(async (radar) => { - await genRadar({ ...ctx, radar }) - await genTable({ ...ctx, radar }) - }), - ) -} - -export const genRadar = async ({ ctx, radar }) => { - const temp = await tempDir(ctx.temp) - const output = path.join(ctx.output, radar.scope, radar.date) - const context = { - ...ctx, - ...radar, - output, - temp, - } - context.settings = genRadarSettings(context) - - await genMdAssets(context) - await render('radar', context) -} - -export const genTable = async ({ ctx, radar }) => { - const temp = await tempDir(ctx.temp) - const output = path.join(ctx.output, radar.scope, radar.date, 'table') - const settings = radar.document - const context = { - ...ctx, - ...radar, - settings, - output, - temp, - } - await render('table', context) -} - -export const genRedirects = async ({ radars, output, ctx, temp }) => { - await Promise.all( - Object.entries( - radars.reduce((m, { scope, date }) => { - const prev = m[scope] - - if (scope !== '.' && (!prev || prev < date)) { - m[scope] = date - } - return m - }, {}), - ).map(async ([scope, date]) => - render('redirect', { - ...ctx, - temp: await tempDir(temp), - output: path.join(output, scope), - date, - settings: { extra: { date } }, - }), - ), - ) -} - -export const genNavPage = async ({ - radars, - output, - ctx, - temp, - navTitle, - navFooter, -}) => { - const scopes = uniq(radars.map((r) => r.scope)) - const settings = { - extra: { - radars, - scopes, - footer: navFooter, - title: navTitle, - }, - } - - await render('root', { - ...ctx, - temp: await tempDir(temp), - output, - settings, - }) -} - -export const render = async (template, options) => { - const { temp, output, settings, templates } = options - const configPath = await genConfig(options) - const elev = new Eleventy(temp, output, { configPath }) - - // Copy templates - await fse.copy(tplDir, temp) - if (templates) { - await fse.copy(templates, temp) - } - - // Store settings - const settingsPath = path.join(temp, '_data/settings.json') - const _settings = await fse.readJson(settingsPath) - await fse.outputFile( - settingsPath, - JSON.stringify({ ..._settings, ...settings }), - ) - - // Prepare entry point template - await fse.outputFile( - path.join(temp, 'index.njk'), - `--- -layout: ${template}.njk ---- -`, - ) - - await elev.init() - await elev.write() -} diff --git a/src/main/js/generator/markdown.js b/src/main/js/generator/markdown.js deleted file mode 100644 index 49887108..00000000 --- a/src/main/js/generator/markdown.js +++ /dev/null @@ -1,46 +0,0 @@ -import fse from 'fs-extra' -import path from 'node:path' - -/** - * generate path to .md file - * @param {string} name - * @param {string} quadrant - * @param {string} temp - temp directory - * @returns {string} - */ -export const genMdPath = ({ name, quadrant, temp }) => - path.join(temp, 'entries', quadrant, name + '.md') - -/** - * generate content .md file - * @param ring - * @param description - * @param moved - optional parameter - * @returns {string} - */ -export const genMdContent = ({ ring, description, moved }) => - `--- -ring: ${ring} -moved: ${moved} ---- -${description}` - -/** - * generate assets .md files from radarDocument to temp directory - * @param document - radarDocument - * @param temp - temp directory - */ -export const genMdAssets = async ({ document, temp }) => { - await Promise.all( - document.data.map(async ({ name, quadrant, ring, description, moved }) => { - const entryPath = genMdPath({ name, quadrant, temp }) - const content = genMdContent({ ring, description, moved }) - - try { - return await fse.outputFile(entryPath, content) - } catch (err) { - console.error('genMdAssets', entryPath, err) - } - }), - ) -} diff --git a/src/main/js/index.d.ts b/src/main/js/index.d.ts deleted file mode 100644 index 730d769b..00000000 --- a/src/main/js/index.d.ts +++ /dev/null @@ -1,12 +0,0 @@ -interface Options { - input: string, - output: string, - cwd?: string, - basePrefix?: string, - autoscope?: boolean, - navPage?: boolean, - navTitle?: string, - navFooter?:string - temp?: string -} -export declare function run(options: Options): void; diff --git a/src/main/js/index.js b/src/main/js/index.js deleted file mode 100644 index 37b3e5ed..00000000 --- a/src/main/js/index.js +++ /dev/null @@ -1,154 +0,0 @@ -import fse from 'fs-extra' -import path from 'node:path' - -import { tplDir } from './constants.js' -import { genNavPage, genRadars, genRedirects } from './generator/index.js' -import { getSources, parse } from './parser/index.js' -import { getDirs, tempDir } from './util.js' - -/** - * @description - * Generate static sites from csv/json/yml radar declarations - * - * @func - * @param {Object} options - * @param {string} options.input globby pattern for input files - * @param {string} options.output output directory - * @param {string} options.cwd current working directory - * @param {string?} options.basePrefix web app root level prefix - * @param {boolean?} options.autoscope consider same-scoped files as subversions of a single radar - * @param {boolean?} options.navPage Generate navigation page - * @param {string?} options.navTitle Nav page title - * @param {string?} options.navFooter Nav page footer - * @param {string?} options.temp Temp directory - * - * @return {Promise} - */ -export const run = async (options) => { - const ctx = await getContext(options) - - return readSources(ctx) - .then(parseRadars) - .then(sortRadars) - .then(resolveMoves) - .then(renderRadars) - .finally(() => cleanTemp(ctx)) -} - -const getContext = async ({ - input, - output, - cwd = process.cwd(), - basePrefix = '/', - autoscope = false, - navPage = false, - navTitle, - navFooter, - temp, - templates, - renderSettings, -} = {}) => { - const ctx = { - input, - output: path.resolve(cwd, output), - cwd, - basePrefix, - autoscope, - navPage, - navTitle, - navFooter, - temp: temp || (await tempDir()), - templates, - renderSettings, - } - - ctx.ctx = ctx // context self-ref to simplify pipelining - - return ctx -} - -const readSources = async ({ ctx, cwd, input }) => { - ctx.sources = await getSources(input, cwd) - ctx.scopes = getDirs(ctx.sources).map(path.dirname) - return ctx -} - -const parseRadars = async ({ ctx, sources, scopes }) => { - ctx.radars = await Promise.all( - sources.map(async (file, i) => { - const document = await parse(file) - - return { - document, - source: file, - scope: scopes[i], - date: document.meta.date, - title: document.meta.title, - } - }), - ) - - return ctx -} - -const renderRadars = async ({ ctx, output }) => { - await genRadars(ctx) - await genNavPage(ctx) - await genRedirects(ctx) - await fse.copy(path.join(tplDir, 'assets'), output) // shared static assets - - // console.log('radars', radars) - // console.log('radar', JSON.stringify(radars[3], null, 2)) - return ctx -} - -const resolveMoves = async ({ ctx, radars, autoscope }) => { - if (!autoscope) { - return ctx - } - - const rings = { - hold: 0, - assess: 1, - trial: 2, - adopt: 3, - } - - const getRingWeight = (ring) => rings[ring.toLowerCase()] - - radars.forEach(({ document: { data }, scope }, i) => { - data.forEach((entry) => { - const { name, ring, moved } = entry - const lowerName = name.toLowerCase() - const prevRadar = radars[i + 1] // NOTE sorted by desc date - const prevEntry = - prevRadar && - prevRadar.scope === scope && - prevRadar.document.data.find( - ({ name: _name }) => _name.toLowerCase() === lowerName, - ) - - entry.moved = prevEntry - ? Math.sign(getRingWeight(ring) - getRingWeight(prevEntry.ring)) - : moved || 0 - }) - }) - - return ctx -} - -const sortRadars = async ({ ctx, radars }) => { - radars.sort((a, b) => { - if (path.dirname(a.source) > path.dirname(b.source)) return 1 - if (path.dirname(a.source) < path.dirname(b.source)) return -1 - - return Math.sign(Date.parse(b.date) - Date.parse(a.date)) - }) - - return ctx -} - -const cleanTemp = async ({ ctx, temp }) => { - await fse.remove(temp) - return ctx -} diff --git a/src/main/js/parser/csv.js b/src/main/js/parser/csv.js deleted file mode 100644 index 979de18b..00000000 --- a/src/main/js/parser/csv.js +++ /dev/null @@ -1,53 +0,0 @@ -import { parse as parseCsv } from 'csv-parse/sync' -import fse from 'fs-extra' - -/** - * read .csv file and generate radarDocument - * @param csvPath - * @returns {{data: any[], meta: {}, quadrantAliases?: {}}} radarDocument - */ -export const parseCsvRadar = async (csvPath) => { - const radarContents = normalizeCsv(await fse.readFile(csvPath, 'utf8')) - const radarDocument = { - meta: {}, - data: [], - quadrantAliases: {}, - quadrantTitles: {}, - } - radarContents.split('===').forEach((radarChunks) => { - const records = parseCsv(radarChunks, { - columns: true, - skip_empty_lines: true, - }) - const header = Object.keys(records[0]) - - if (header.includes('name') && header.includes('quadrant')) { - radarDocument.data = [...radarDocument.data, ...records] - } else if (header.includes('alias')) { - records.forEach((record) => { - radarDocument.quadrantAliases[record.alias.toLowerCase()] = - record.quadrant.toLowerCase() - }) - } else if (header.includes('title') && header.includes('quadrant')) { - records.forEach((record) => { - radarDocument.quadrantTitles[record.quadrant.toLowerCase()] = - record.title - }) - } else { - Object.assign(radarDocument.meta, records[0]) - } - }) - return radarDocument -} - -export const normalizeCsv = (fileContents) => - fileContents - .split(/("[^"]+")/g) - .map((item) => { - if (item[0] === '"') return item - return item - .split(',') - .map((i) => i.replace(/^ *| *$/gm, '')) - .join(',') - }) - .join('') diff --git a/src/main/js/parser/index.js b/src/main/js/parser/index.js deleted file mode 100644 index 7dcef350..00000000 --- a/src/main/js/parser/index.js +++ /dev/null @@ -1,101 +0,0 @@ -import { globby } from 'globby' -import path from 'node:path' - -import { asArray } from '../util.js' -import { parseCsvRadar } from './csv.js' -import { parseJsonRadar } from './json.js' -import { validate } from './validator.js' -import { parseYamlRadar } from './yaml.js' - -export { parseCsvRadar } from './csv.js' -export { parseJsonRadar } from './json.js' -export { parseYamlRadar } from './yaml.js' - -/** - * Parse radarDocument - * @param filePath - * @returns {Promise<{data: any[], meta: {}, quadrantAliases?: {}}>} radarDocument - */ -export const parse = async (filePath) => { - try { - const reader = getReader(path.extname(filePath)) - const document = await reader(filePath) - const radar = normalizeEntries(document) - - return validate(radar) - } catch (err) { - console.error('filePath:', filePath, err) - return {} - } -} -/** - * selection of the reading function depending on the extension - * @param ext - * @returns {(function(*=): {data: any[], meta: {}})} - */ -export const getReader = (ext) => { - if (ext === '.csv') { - return parseCsvRadar - } - if (ext === '.json') { - return parseJsonRadar - } - if (ext === '.yml' || ext === '.yaml') { - return parseYamlRadar - } - throw new Error('Unsupported format', ext) -} - -/** - * Returns absolute files paths by glob pattern - * @param {string|string[]} pattern - glob pattern - * @param cwd - cwd - * @returns {Promise} - */ -export const getSources = async (pattern, cwd) => - globby([pattern], { - onlyFiles: true, - absolute: true, - cwd, - }) - -export const normalizeQuadrantAliases = (aliases) => - Object.entries(aliases).reduce((m, [k, v]) => { - if (/^q[1-4]$/.test(k)) { - asArray(v).forEach((_v) => { - m[_v] = k - }) - } else { - m[k] = v - } - - return m - }, {}) - -export const normalizeQuadrantTitles = (titles) => ({ - q1: 'Q1', - q2: 'Q2', - q3: 'Q4', - q4: 'Q4', - ...titles, -}) - -export const normalizeEntries = (doc) => { - doc.quadrantAliases = normalizeQuadrantAliases(doc.quadrantAliases) - doc.quadrantTitles = normalizeQuadrantTitles(doc.quadrantTitles) - - doc.data.forEach((entry) => { - entry.ring = entry.ring.toLowerCase() - entry.quadrant = getQuadrant(entry.quadrant, doc.quadrantAliases) - entry.quadrantTitle = doc.quadrantTitles[entry.quadrant] - entry.moved = +entry.moved || 0 - }) - doc.data.sort((a, b) => (a.name > b.name ? 1 : -1)) - - return doc -} - -export const getQuadrant = (quadrant, quadrantAliases) => { - const lowQuadrant = quadrant.toLowerCase() - return quadrantAliases[lowQuadrant] || lowQuadrant -} diff --git a/src/main/js/parser/json.js b/src/main/js/parser/json.js deleted file mode 100644 index 0cb7ae1d..00000000 --- a/src/main/js/parser/json.js +++ /dev/null @@ -1,8 +0,0 @@ -import fse from 'fs-extra' - -/** - * read .json file and generate radarDocument - * @param jsonPath - * @returns {{data: any[], meta: {}}} radarDocument - */ -export const parseJsonRadar = fse.readJson diff --git a/src/main/js/parser/validator.js b/src/main/js/parser/validator.js deleted file mode 100644 index 6aad639b..00000000 --- a/src/main/js/parser/validator.js +++ /dev/null @@ -1,81 +0,0 @@ -import Ajv from 'ajv' - -const validators = new Map() - -export const _validate = (target, schema) => { - const validator = validators.get(schema) - if (!validator) { - validators.set(schema, new Ajv().compile(schema)) - return _validate(target, schema) - } - - const result = validator(target) - const error = validator.errors - - if (error) { - console.error('validation error', error) - } - - return result -} - -export const validate = (radar) => { - if (!_validate(radar, radarSchema)) { - throw new Error('Invalid radar') - } - - return radar -} - -export const radarSchema = { - type: 'object', - properties: { - data: { - type: 'array', - items: { - type: 'object', - properties: { - name: { type: 'string' }, - quadrant: { type: 'string' }, - ring: { type: 'string' }, - description: { type: ['string', 'null'] }, - moved: { type: ['string', 'integer', 'null'] }, - }, - required: ['name', 'quadrant', 'ring', 'description'], - }, - }, - meta: { - type: 'object', - properties: { - title: { type: 'string' }, - date: { type: 'string' }, - legend: { type: ['string', 'null'] }, - }, - required: ['title', 'date'], - }, - quadrantTitles: { - type: 'object', - additionalProperties: false, - patternProperties: { - '^q[1-4]$': { type: 'string' }, - }, - }, - quadrantAliases: { - type: 'object', - patternProperties: { - '^q[1-4]$': { - anyOf: [ - { type: 'string', pattern: '^(?!q[1-4]$)' }, - { - type: 'array', - items: { type: 'string', pattern: '^(?!q[1-4]$)' }, - }, - ], - }, - '^(?!q[1-4]$)': { type: 'string', enum: ['q1', 'q2', 'q3', 'q4'] }, - }, - additionalProperties: false, - }, - }, - required: ['meta', 'data', 'quadrantAliases'], -} diff --git a/src/main/js/parser/yaml.js b/src/main/js/parser/yaml.js deleted file mode 100644 index 19d0dc12..00000000 --- a/src/main/js/parser/yaml.js +++ /dev/null @@ -1,12 +0,0 @@ -import fse from 'fs-extra' -import yaml from 'js-yaml' - -/** - * read .yml file and generate radarDocument - * @param yamlPath - * @returns {{data: any[], meta: {}}} radarDocument - */ -export const parseYamlRadar = async (yamlPath) => { - const contents = await fse.readFile(yamlPath, 'utf8') - return yaml.load(contents, 'utf8') -} diff --git a/src/main/js/util.js b/src/main/js/util.js deleted file mode 100644 index 09ab2e5c..00000000 --- a/src/main/js/util.js +++ /dev/null @@ -1,21 +0,0 @@ -import fse from 'fs-extra' -import { nanoid } from 'nanoid' -import path from 'node:path' -import tempRoot from 'temp-dir' - -export const mkdirp = async (dir) => - (await fse.mkdir(dir, { recursive: true })) && dir - -export const getDirs = (files) => - files.map((f) => - f.slice( - [...files[0]].findIndex((c, i) => files.some((f) => f.charAt(i) !== c)), - ), - ).sort() - -export const tempDir = async (base) => - base - ? mkdirp(path.join(await base, nanoid(5))) - : path.join(tempRoot, `tech-radar-${nanoid(5)}`) - -export const asArray = (v) => (Array.isArray(v) ? v : [v]) diff --git a/src/main/tpl/assets/favicon.ico b/src/main/radar/favicon.ico similarity index 100% rename from src/main/tpl/assets/favicon.ico rename to src/main/radar/favicon.ico diff --git a/src/main/radar/radar.android.json b/src/main/radar/radar.android.json new file mode 100644 index 00000000..ea17cae5 --- /dev/null +++ b/src/main/radar/radar.android.json @@ -0,0 +1,248 @@ +{ + "$schema": "../resources/radar-schema.json", + "type": "sectors", + "title": "QIWI Android Tech Radar", + "statuses": [ + { + "name": "adopt", + "title": "Adopt", + "description": "", + "size": 150, + "thick": 8 + }, + { + "name": "trial", + "title": "Trial", + "description": "", + "size": 50, + "thick": 4 + }, + { + "name": "assess", + "title": "Assess", + "description": "", + "size": 50, + "thick": 2 + }, + { + "name": "hold", + "title": "Hold", + "description": "", + "size": 50, + "thick": 1 + } + ], + "sectors": [ + { + "name": "language", + "title": "Languages and frameworks", + "color": "#F2A25C" + }, + { + "name": "platforms", + "title": "Platforms", + "color": "#84BFA4" + }, + { + "name": "tools", + "title": "Tools", + "color": "#248EA6" + }, + { + "name": "tech", + "title": "Techniques", + "color": "#F25244" + } + ], + "items": [ + { + "name": "continuous-delivery", + "title": "Continuous delivery", + "description": "", + "sector": "tech", + "status": "adopt" + }, + { + "name": "continuous-integration", + "title": "Continuous integration", + "description": "", + "sector": "tech", + "status": "adopt" + }, + { + "name": "ui-tests", + "title": "UI tests", + "description": "", + "sector": "tech", + "status": "adopt" + }, + { + "name": "unit-tests", + "title": "Unit tests", + "description": "", + "sector": "tech", + "status": "adopt" + }, + { + "name": "mvi", + "title": "MVI", + "description": "", + "sector": "tech", + "status": "adopt" + }, + { + "name": "solid", + "title": "SOLID", + "description": "", + "sector": "tech", + "status": "adopt" + }, + { + "name": "feature-flags", + "title": "Feature flags", + "description": "", + "sector": "tech", + "status": "adopt" + }, + { + "name": "trunk-based-development", + "title": "Trunk based development", + "description": "", + "sector": "tech", + "status": "adopt" + }, + { + "name": "appium", + "title": "Appium", + "description": "", + "sector": "tools", + "status": "adopt" + }, + { + "name": "kubernetes", + "title": "Kubernetes", + "description": "", + "sector": "tools", + "status": "adopt" + }, + { + "name": "tekton", + "title": "Tekton", + "description": "", + "sector": "tools", + "status": "adopt" + }, + { + "name": "device-farm", + "title": "Device farm", + "description": "", + "sector": "tools", + "status": "adopt" + }, + { + "name": "github", + "title": "Github", + "description": "", + "sector": "tools", + "status": "adopt" + }, + { + "name": "kibana", + "title": "Kibana", + "description": "", + "sector": "tools", + "status": "adopt" + }, + { + "name": "grafana", + "title": "Grafana", + "description": "", + "sector": "tools", + "status": "adopt" + }, + { + "name": "firebase-crashlytics", + "title": "Firebase Crashlytics", + "description": "", + "sector": "platforms", + "status": "adopt" + }, + { + "name": "firebase-remote-config", + "title": "Firebase Remote Config", + "description": "", + "sector": "platforms", + "status": "adopt" + }, + { + "name": "kotlin-multiplatform", + "title": "Kotlin Multiplatform", + "description": "", + "sector": "platforms", + "status": "adopt" + }, + { + "name": "java", + "title": "Java", + "description": "", + "sector": "language", + "status": "hold" + }, + { + "name": "rxjava", + "title": "RxJava", + "description": "", + "sector": "language", + "status": "hold" + }, + { + "name": "kotlin", + "title": "Kotlin", + "description": "", + "sector": "language", + "status": "adopt" + }, + { + "name": "kotlin-multiplatform", + "title": "Kotlin Multiplatform", + "description": "", + "sector": "language", + "status": "adopt" + }, + { + "name": "kotlin-coroutines", + "title": "Kotlin Coroutines", + "description": "", + "sector": "language", + "status": "adopt" + }, + { + "name": "ktor", + "title": "Ktor", + "description": "", + "sector": "language", + "status": "adopt" + }, + { + "name": "sqldelight", + "title": "SQLDelight", + "description": "", + "sector": "language", + "status": "adopt" + }, + { + "name": "dart-flutter", + "title": "Dart (Flutter)", + "description": "", + "sector": "language", + "status": "assess" + }, + { + "name": "jetpack-compose", + "title": "Jetpack compose", + "description": "", + "sector": "language", + "status": "assess" + } + ] +} diff --git a/src/main/radar/radar.backend.json b/src/main/radar/radar.backend.json new file mode 100644 index 00000000..4918a9a1 --- /dev/null +++ b/src/main/radar/radar.backend.json @@ -0,0 +1,696 @@ +{ + "$schema": "../resources/radar-schema.json", + "type": "sectors", + "title": "QIWI Backend Tech Radar", + "statuses": [ + { + "name": "adopt", + "title": "Adopt", + "description": "", + "size": 150, + "thick": 8 + }, + { + "name": "trial", + "title": "Trial", + "description": "", + "size": 50, + "thick": 4 + }, + { + "name": "assess", + "title": "Assess", + "description": "", + "size": 50, + "thick": 2 + }, + { + "name": "hold", + "title": "Hold", + "description": "", + "size": 50, + "thick": 1 + } + ], + "sectors": [ + { + "name": "langlib", + "title": "Languages and frameworks", + "color": "#F2A25C" + }, + { + "name": "data", + "title": "Data management", + "color": "#84BFA4" + }, + { + "name": "infra", + "title": "Infrastructure", + "color": "#248EA6" + }, + { + "name": "techtools", + "title": "Tools and Techniques", + "color": "#F25244" + } + ], + "items": [ + { + "name": "java-8", + "title": "Java 8", + "description": "Обычная Java", + "sector": "langlib", + "status": "hold" + }, + { + "name": "java-11", + "title": "Java 11", + "description": "Устаревшшая LTS Java", + "sector": "langlib", + "status": "hold" + }, + { + "name": "java-17", + "title": "Java 17", + "description": "Актуальная LTS Java", + "sector": "langlib", + "status": "adopt" + }, + { + "name": "java-21", + "title": "Java 21", + "description": "Следующая LTS Java", + "sector": "langlib", + "status": "assess" + }, + { + "name": "kotlin", + "title": "Kotlin", + "description": "Как Java только Kotlin", + "sector": "langlib", + "status": "adopt" + }, + { + "name": "scala", + "title": "Scala", + "description": "Scala", + "sector": "langlib", + "status": "hold" + }, + { + "name": "spring-boot-2", + "title": "Spring Boot 2", + "description": "Spring boot", + "sector": "langlib", + "status": "hold" + }, + { + "name": "spring-boot-3", + "title": "Spring Boot 3", + "description": "Spring boot поновее", + "sector": "langlib", + "status": "adopt" + }, + { + "name": "resilience4j", + "title": "Resilience4j", + "description": "Implementation of Circuit-Breaker pattern", + "sector": "langlib", + "status": "adopt" + }, + { + "name": "logback", + "title": "Logback", + "description": "Библиотека для логирования для JVM", + "sector": "langlib", + "status": "adopt" + }, + { + "name": "log4j", + "title": "Log4j", + "description": "Библиотека для логирования для JVM", + "sector": "langlib", + "status": "hold" + }, + { + "name": "junit-5", + "title": "JUnit 5", + "description": "Тест-фреймворк для JVM", + "sector": "langlib", + "status": "adopt" + }, + { + "name": "junit-4", + "title": "JUnit 4", + "description": "Тест-фреймворк для JVM", + "sector": "langlib", + "status": "hold" + }, + { + "name": "testng", + "title": "TestNG", + "description": "Тест-фреймворк для JVM", + "sector": "langlib", + "status": "hold" + }, + { + "name": "maven", + "title": "Maven", + "description": "Инструмент сборки для JVM", + "sector": "langlib", + "status": "adopt" + }, + { + "name": "hibernate", + "title": "Hibernate", + "description": "ORM для JVM", + "sector": "langlib", + "status": "hold" + }, + { + "name": "golang", + "title": "GoLang", + "description": "Системный язык программирования", + "sector": "langlib", + "status": "adopt" + }, + { + "name": "chi", + "title": "Chi", + "description": "Библиотека для роутинга GoLang", + "sector": "langlib", + "status": "adopt" + }, + { + "name": "python-3-12", + "title": "Python 3.12", + "description": "Python", + "sector": "langlib", + "status": "assess" + }, + { + "name": "python-3-11", + "title": "Python 3.11", + "description": "Python", + "sector": "langlib", + "status": "adopt" + }, + { + "name": "python-3-9", + "title": "Python 3.9", + "description": "Python", + "sector": "langlib", + "status": "adopt" + }, + { + "name": "python-3-8", + "title": "Python 3.8", + "description": "Python", + "sector": "langlib", + "status": "hold" + }, + { + "name": "python-3-7", + "title": "Python 3.7", + "description": "Python", + "sector": "langlib", + "status": "hold" + }, + { + "name": "flask", + "title": "Flask", + "description": "Бэкенд-фреймворк для Python", + "sector": "langlib", + "status": "hold" + }, + { + "name": "fastapi", + "title": "FastApi", + "description": "Бэкенд-фреймворк для Python", + "sector": "langlib", + "status": "adopt" + }, + { + "name": "django", + "title": "Django", + "description": "Бэкенд-фреймворк для Python", + "sector": "langlib", + "status": "hold" + }, + { + "name": "sqlalchemy", + "title": "SQLAlchemy", + "description": "ORM для Python", + "sector": "langlib", + "status": "adopt" + }, + { + "name": "celery", + "title": "Celery", + "description": "Очередь задач для Python", + "sector": "langlib", + "status": "adopt" + }, + { + "name": "poetry", + "title": "Poetry", + "description": "Менеджер зависимостей для Python", + "sector": "langlib", + "status": "adopt" + }, + { + "name": "pytest", + "title": "Pytest", + "description": "Тест-фреймворк для Python", + "sector": "langlib", + "status": "adopt" + }, + { + "name": "net-8", + "title": ".NET 8", + "description": ".NET следующая LTS", + "sector": "langlib", + "status": "assess" + }, + { + "name": "net-6", + "title": ".NET 6", + "description": ".NET текущая LTS", + "sector": "langlib", + "status": "adopt" + }, + { + "name": "net-5", + "title": ".NET 5", + "description": ".NET", + "sector": "langlib", + "status": "hold" + }, + { + "name": "asp-net", + "title": "ASP.NET", + "description": "Web-фреймворк для .NET", + "sector": "langlib", + "status": "adopt" + }, + { + "name": "xunit", + "title": "xUnit", + "description": "Фреймворк для тестов .NET (юнит тесты)", + "sector": "langlib", + "status": "adopt" + }, + { + "name": "nunit", + "title": "NUnit", + "description": "Фреймворк для тестов .NET (интеграционные тесты)", + "sector": "langlib", + "status": "adopt" + }, + { + "name": "mstest2", + "title": "MSTest2", + "description": "Фреймворк для тестов .NET (юнит тесты)", + "sector": "langlib", + "status": "hold" + }, + { + "name": "app-metrics", + "title": "App.Metrics", + "description": "Измерение и отправка метрик .NET", + "sector": "langlib", + "status": "adopt" + }, + { + "name": "dapper", + "title": "Dapper", + "description": "Легковесный ORM для .NET", + "sector": "langlib", + "status": "adopt" + }, + { + "name": "serilog", + "title": "Serilog", + "description": "Библиотека для логирования для .NET", + "sector": "langlib", + "status": "adopt" + }, + { + "name": "mediatr", + "title": "MediatR", + "description": "Медиатор .NET", + "sector": "langlib", + "status": "adopt" + }, + { + "name": "delphi-7", + "title": "Delphi 7", + "description": "Легаси стек на старых проектах", + "sector": "langlib", + "status": "hold" + }, + { + "name": "delphi-10-3", + "title": "Delphi 10.3", + "description": "Легаси стек на старых проектах", + "sector": "langlib", + "status": "hold" + }, + { + "name": "1c-enterprise-8-3", + "title": "1С:Предприятие 8.3", + "description": "Платформа разработки внутренних приложений", + "sector": "langlib", + "status": "adopt" + }, + { + "name": "grpc", + "title": "gRPC", + "description": "RPC фреймворк для взаимодействия между микросервисами", + "sector": "langlib", + "status": "assess" + }, + { + "name": "thrift", + "title": "Thrift", + "description": "RPC фреймворк для взаимодействия между микросервисами", + "sector": "langlib", + "status": "adopt" + }, + { + "name": "oracledb", + "title": "OracleDB", + "description": "База данных для старых приложений", + "sector": "data", + "status": "hold" + }, + { + "name": "mssql-2014", + "title": "MSSQL 2014", + "description": "SQL база данных", + "sector": "data", + "status": "adopt" + }, + { + "name": "mssql-2022", + "title": "MSSQL 2022", + "description": "SQL база данных", + "sector": "data", + "status": "assess" + }, + { + "name": "postgresql", + "title": "PostgreSQL", + "description": "Основная база данных", + "sector": "data", + "status": "adopt" + }, + { + "name": "patroni", + "title": "Patroni", + "description": "PostgreSQL в кластере", + "sector": "data", + "status": "adopt" + }, + { + "name": "cockroachdb", + "title": "CockroachDB", + "description": "Распределенная SQL-база данных", + "sector": "data", + "status": "trial" + }, + { + "name": "clickhouse", + "title": "Clickhouse", + "description": "Колоночная база данных", + "sector": "data", + "status": "adopt" + }, + { + "name": "elasticsearch", + "title": "Elasticsearch", + "description": "", + "sector": "data", + "status": "adopt" + }, + { + "name": "hazelcast", + "title": "Hazelcast", + "description": "In-Memory распределенная база данных", + "sector": "data", + "status": "adopt" + }, + { + "name": "mongodb", + "title": "MongoDB", + "description": "Документоориентированная база данных", + "sector": "data", + "status": "hold" + }, + { + "name": "kafka", + "title": "Kafka", + "description": "Распределенная шина для поточно обработки данных", + "sector": "data", + "status": "adopt" + }, + { + "name": "cassandra", + "title": "Cassandra", + "description": "Масштабируемая распределенная база данных", + "sector": "data", + "status": "adopt" + }, + { + "name": "liquibase", + "title": "Liquibase", + "description": "Инструмент для миграций", + "sector": "data", + "status": "trial" + }, + { + "name": "redis", + "title": "Redis", + "description": "Key-value база данных", + "sector": "data", + "status": "adopt" + }, + { + "name": "couchbase", + "title": "Couchbase", + "description": "Документоориентированная база данных", + "sector": "data", + "status": "adopt" + }, + { + "name": "nats", + "title": "Nats", + "description": "Брокер сообщений", + "sector": "data", + "status": "assess" + }, + { + "name": "rabbitmq", + "title": "RabbitMQ", + "description": "Брокер сообщений", + "sector": "data", + "status": "adopt" + }, + { + "name": "mysql", + "title": "MySQL", + "description": "SQL база данных", + "sector": "data", + "status": "hold" + }, + { + "name": "vertica", + "title": "Vertica", + "description": "Колоночная база данных", + "sector": "data", + "status": "adopt" + }, + { + "name": "common-api-models", + "title": "Общие API-модели", + "description": "Переиспользуем API-модели между сервером и клиентами", + "sector": "techtools", + "status": "adopt" + }, + { + "name": "microservices", + "title": "Микросервисы", + "description": "Позволяет разрабатывать приложения разными командами более независимо", + "sector": "techtools", + "status": "adopt" + }, + { + "name": "trunk-based-development", + "title": "Trunk-Based Development", + "description": "Фиче-флаги вместо фич-бранчей", + "sector": "techtools", + "status": "adopt" + }, + { + "name": "sonarqube", + "title": "SonarQube", + "description": "", + "sector": "techtools", + "status": "adopt" + }, + { + "name": "allure", + "title": "Allure", + "description": "Отчёты по тестам", + "sector": "techtools", + "status": "trial" + }, + { + "name": "openapi", + "title": "OpenAPI", + "description": "Стандарт описания АПИ", + "sector": "techtools", + "status": "adopt" + }, + { + "name": "camunda-7", + "title": "Camunda 7", + "description": "Платформа для моделирования и создания бизнес-процессов", + "sector": "techtools", + "status": "adopt" + }, + { + "name": "camunda-8", + "title": "Camunda 8", + "description": "Платформа для моделирования и создания бизнес-процессов", + "sector": "techtools", + "status": "assess" + }, + { + "name": "platform-approach", + "title": "Платформенный подход", + "description": "Общие платформы для разработки приложений под каждый стек", + "sector": "techtools", + "status": "adopt" + }, + { + "name": "gitops-approach", + "title": "GitOps подход", + "description": "Репозиторий отражает состояние production среды", + "sector": "techtools", + "status": "trial" + }, + { + "name": "gerrit", + "title": "Gerrit", + "description": "Система контроля версий", + "sector": "techtools", + "status": "adopt" + }, + { + "name": "github", + "title": "GitHub", + "description": "Система контроля версий", + "sector": "techtools", + "status": "hold" + }, + { + "name": "kubernetes", + "title": "Kubernetes", + "description": "Основная платформа для запуска приложений", + "sector": "infra", + "status": "adopt" + }, + { + "name": "consul", + "title": "Consul", + "description": "Сервис-дискавери", + "sector": "infra", + "status": "adopt" + }, + { + "name": "vault", + "title": "Vault", + "description": "Хранилище секретов", + "sector": "infra", + "status": "adopt" + }, + { + "name": "hiera", + "title": "Hiera", + "description": "Хранилище секретов", + "sector": "infra", + "status": "hold" + }, + { + "name": "puppet", + "title": "Puppet", + "description": "Управление конфигурациями VM", + "sector": "infra", + "status": "adopt" + }, + { + "name": "docker", + "title": "Docker", + "description": "Контейнеризация", + "sector": "infra", + "status": "adopt" + }, + { + "name": "teamcity", + "title": "TeamCity", + "description": "CI/CD инструмент", + "sector": "infra", + "status": "adopt" + }, + { + "name": "argocd-and-argorollout", + "title": "ArgoCD & ArgoRollout", + "description": "Инструменты для GitOps подхода", + "sector": "infra", + "status": "trial" + }, + { + "name": "grafana", + "title": "Grafana", + "description": "", + "sector": "infra", + "status": "adopt" + }, + { + "name": "kibana", + "title": "Kibana", + "description": "", + "sector": "infra", + "status": "adopt" + }, + { + "name": "zabbix", + "title": "Zabbix", + "description": "", + "sector": "infra", + "status": "adopt" + }, + { + "name": "prometheus", + "title": "Prometheus", + "description": "", + "sector": "infra", + "status": "adopt" + }, + { + "name": "sentry", + "title": "Sentry", + "description": "", + "sector": "infra", + "status": "assess" + }, + { + "name": "jaeger", + "title": "Jaeger", + "description": "Бэкенд трассировки", + "sector": "infra", + "status": "adopt" + } + ] +} diff --git a/src/main/radar/radar.ios.json b/src/main/radar/radar.ios.json new file mode 100644 index 00000000..07f67035 --- /dev/null +++ b/src/main/radar/radar.ios.json @@ -0,0 +1,570 @@ +{ + "$schema": "../resources/radar-schema.json", + "type": "sectors", + "title": "QIWI iOS Tech Radar", + "statuses": [ + { + "name": "adopt", + "title": "Adopt", + "description": "", + "size": 150, + "thick": 8 + }, + { + "name": "trial", + "title": "Trial", + "description": "", + "size": 50, + "thick": 4 + }, + { + "name": "assess", + "title": "Assess", + "description": "", + "size": 50, + "thick": 2 + }, + { + "name": "hold", + "title": "Hold", + "description": "", + "size": 50, + "thick": 1 + } + ], + "sectors": [ + { + "name": "language", + "title": "Languages and frameworks", + "color": "#F2A25C" + }, + { + "name": "platforms", + "title": "Platforms", + "color": "#84BFA4" + }, + { + "name": "tools", + "title": "Tools", + "color": "#248EA6" + }, + { + "name": "tech", + "title": "Techniques", + "color": "#F25244" + } + ], + "items": [ + { + "name": "design-system", + "title": "Дизайн-система", + "sector": "tech", + "status": "adopt", + "description": "" + }, + { + "name": "modular-architecture", + "title": "Модульная архитектура", + "sector": "tech", + "status": "adopt", + "description": "" + }, + { + "name": "continuous-delivery", + "title": "Continuous delivery", + "sector": "tech", + "status": "adopt", + "description": "Каждый спринт отправляем сборки в стор" + }, + { + "name": "continuous-integration", + "title": "Continuous integration", + "sector": "tech", + "status": "adopt", + "description": "Каждый пулл реквест проверяется автоматическими чеками: swiftLint" + }, + { + "name": "mvvm", + "title": "MVVM", + "sector": "tech", + "status": "adopt", + "description": "Паттерн проектирования" + }, + { + "name": "rest", + "title": "REST", + "sector": "tech", + "status": "adopt", + "description": "REST (от англ. Representational State Transfer — «передача состояния представления») — архитектурный стиль взаимодействия компонентов распределённого приложения в сети." + }, + { + "name": "soa", + "title": "SOA", + "sector": "tech", + "status": "adopt", + "description": "Service-oriented architecture" + }, + { + "name": "solid", + "title": "SOLID", + "sector": "tech", + "status": "adopt", + "description": "Мнемонический акроним для 5 основных принципов объектно-ориентированного программирования и проектирования." + }, + { + "name": "ui-tests", + "title": "UI tests", + "sector": "tech", + "status": "adopt", + "description": "Каждая фича покрывается UI тестами" + }, + { + "name": "unit-tests", + "title": "Unit tests", + "sector": "tech", + "status": "adopt", + "description": "Каждая фича покрывается unit тестами" + }, + { + "name": "graphql", + "title": "GraphQL", + "sector": "tech", + "status": "assess", + "description": "A query language for APIs and a runtime for fulfilling those queries with your existing data" + }, + { + "name": "redux", + "title": "Redux", + "sector": "tech", + "status": "assess", + "description": "Архитектурный паттерн" + }, + { + "name": "composable-architecture", + "title": "Composable architecture", + "sector": "tech", + "status": "hold", + "description": "Архитектурный паттерн" + }, + { + "name": "appium", + "title": "Appium", + "sector": "tools", + "status": "adopt", + "description": "Tool for automation UI tests" + }, + { + "name": "confluence", + "title": "Confluence", + "sector": "tools", + "status": "adopt", + "description": "Wiki" + }, + { + "name": "fastlane", + "title": "Fastlane", + "sector": "tools", + "status": "adopt", + "description": "Тул для автоматизации CI/CD и других штук" + }, + { + "name": "figma", + "title": "Figma", + "sector": "tools", + "status": "adopt", + "description": "В ней дизайнеры накидыват интерфейсы" + }, + { + "name": "github", + "title": "Github", + "sector": "tools", + "status": "adopt", + "description": "Система контроля версий исползуемая в основном frontend'ового кода." + }, + { + "name": "intellij-idea", + "title": "Intellij idea", + "sector": "tools", + "status": "adopt", + "description": "IDE для разработки на Java/Kotlin" + }, + { + "name": "jira", + "title": "Jira", + "sector": "tools", + "status": "adopt", + "description": "Bug tracker" + }, + { + "name": "kaiten", + "title": "Kaiten", + "sector": "tools", + "status": "adopt", + "description": "Система управления задачами" + }, + { + "name": "kibana", + "title": "Kibana", + "sector": "tools", + "status": "adopt", + "description": "Визуализация логов" + }, + { + "name": "swiftlint", + "title": "SwiftLint", + "sector": "tools", + "status": "adopt", + "description": "Linter for Swift code" + }, + { + "name": "tableau", + "title": "Tableau", + "sector": "tools", + "status": "adopt", + "description": "Решение для построения дашбордов" + }, + { + "name": "teamcity", + "title": "TeamCity", + "sector": "tools", + "status": "adopt", + "description": "Сервер для CI/CD" + }, + { + "name": "testflight", + "title": "TestFlight", + "sector": "tools", + "status": "adopt", + "description": "Share test builds for testers" + }, + { + "name": "xcode", + "title": "Xcode", + "sector": "tools", + "status": "adopt", + "description": "IDE для разработки под iOS" + }, + { + "name": "grafana", + "title": "Grafana", + "sector": "tools", + "status": "trial", + "description": "Решение для построения дашбордов и мониторинга" + }, + { + "name": "zeplin", + "title": "Zeplin", + "sector": "tools", + "status": "hold", + "description": "An organized workspace to publish designs" + }, + { + "name": "firebase-crashlytics", + "title": "Firebase Crashlytics", + "sector": "platforms", + "status": "adopt", + "description": "Креш трекер" + }, + { + "name": "firebase-remote-config", + "title": "Firebase Remote Config", + "sector": "platforms", + "status": "adopt", + "description": "С его помощью делаем фича флаги" + }, + { + "name": "google-maps", + "title": "Google Maps", + "sector": "platforms", + "status": "adopt", + "description": "Карта терминалов" + }, + { + "name": "goluber", + "title": "Goluber", + "sector": "platforms", + "status": "trial", + "description": "лоток для логов" + }, + { + "name": "yandex-appmetrica", + "title": "Yandex AppMetrica", + "sector": "platforms", + "status": "trial", + "description": "Analytics framework" + }, + { + "name": "chipagecontrol", + "title": "CHIPageControl", + "sector": "language", + "status": "adopt", + "description": "A set of cool animated page controls to replace boring UIPageControl" + }, + { + "name": "devicekit", + "title": "DeviceKit", + "sector": "language", + "status": "adopt", + "description": "DeviceKit is a value-type replacement of UIDevice" + }, + { + "name": "formattabletextview", + "title": "FormattableTextView", + "sector": "language", + "status": "adopt", + "description": "A framework which allows you to format user input according to your mask" + }, + { + "name": "inappprovisioningutils", + "title": "InAppProvisioningUtils", + "sector": "language", + "status": "adopt", + "description": "Библиотека для работы с Apple Pay в приложении." + }, + { + "name": "keychainaccess", + "title": "KeychainAccess", + "sector": "language", + "status": "adopt", + "description": "Keychain framework" + }, + { + "name": "kingfisher", + "title": "Kingfisher", + "sector": "language", + "status": "adopt", + "description": "A powerful" + }, + { + "name": "materialtextview", + "title": "MaterialTextView", + "sector": "language", + "status": "adopt", + "description": "Реализация текстовых полей по Material Design" + }, + { + "name": "python", + "title": "Python", + "sector": "language", + "status": "adopt", + "description": "Язык программирования" + }, + { + "name": "qiwibuttons", + "title": "QiwiButtons", + "sector": "language", + "status": "adopt", + "description": "Customizable buttons for iOS apps." + }, + { + "name": "snapkit", + "title": "SnapKit", + "sector": "language", + "status": "adopt", + "description": "DSL to make Auto Layout easy on iOS" + }, + { + "name": "snapshottesting", + "title": "SnapshotTesting", + "sector": "language", + "status": "adopt", + "description": "Delightful Swift snapshot testing." + }, + { + "name": "swagger", + "title": "Swagger", + "sector": "language", + "status": "adopt", + "description": "Фреймворк описания API" + }, + { + "name": "swift", + "title": "Swift", + "sector": "language", + "status": "adopt", + "description": "Язык программирования" + }, + { + "name": "swift-pm", + "title": "Swift PM", + "sector": "language", + "status": "adopt", + "description": "Менеджер зависимостей" + }, + { + "name": "edna", + "title": "Edna", + "sector": "language", + "status": "trial", + "description": "Фреймворк для чата с пользователями" + }, + { + "name": "kotlin-multiplatform", + "title": "Kotlin Multiplatform", + "sector": "language", + "status": "trial", + "description": "Позволяет писать общий код логики для iOS" + }, + { + "name": "swaggen", + "title": "SwagGen", + "sector": "language", + "status": "trial", + "description": "OpenAPI/Swagger 3.0 Parser and Swift code generator" + }, + { + "name": "xctassertnoleak", + "title": "XCTAssertNoLeak", + "sector": "language", + "status": "trial", + "description": "Фреймворк для обнаружения утечек памяти" + }, + { + "name": "alamofire", + "title": "Alamofire", + "sector": "language", + "status": "assess", + "description": "An HTTP networking library written in Swift" + }, + { + "name": "apollo-graphql", + "title": "Apollo GraphQL", + "sector": "language", + "status": "assess", + "description": "GraphQL framework for Swift" + }, + { + "name": "metrickit", + "title": "MetricKit", + "sector": "language", + "status": "assess", + "description": "A framework which aggregates and analyzes per-device reports on exception and crash diagnostics" + }, + { + "name": "reactivecocoa", + "title": "ReactiveCocoa", + "sector": "language", + "status": "assess", + "description": "Фрейморк для реактивного программирования" + }, + { + "name": "swiftui", + "title": "SwiftUI", + "sector": "language", + "status": "assess", + "description": "UI framework" + }, + { + "name": "swinject", + "title": "Swinject", + "sector": "language", + "status": "assess", + "description": "A lightweight dependency injection framework for Swift" + }, + { + "name": "adjust", + "title": "Adjust", + "sector": "language", + "status": "hold", + "description": "Marketing analytics framework" + }, + { + "name": "afnetworking", + "title": "AFNetworking", + "sector": "language", + "status": "hold", + "description": "Network layer framework" + }, + { + "name": "carthage", + "title": "Carthage", + "sector": "language", + "status": "hold", + "description": "Менеджер зависимостей" + }, + { + "name": "cocoapods", + "title": "CocoaPods", + "sector": "language", + "status": "hold", + "description": "Менеджер зависимостей" + }, + { + "name": "combine", + "title": "Combine", + "sector": "language", + "status": "hold", + "description": "Reactive framework от Apple" + }, + { + "name": "dwifft", + "title": "Dwifft", + "sector": "language", + "status": "hold", + "description": "A small Swift library that tells you what the 'diff' is between two collections" + }, + { + "name": "mbprogresshud", + "title": "MBProgressHUD", + "sector": "language", + "status": "hold", + "description": "Индикатор загрузки" + }, + { + "name": "objective-c", + "title": "Objective-C", + "sector": "language", + "status": "hold", + "description": "Язык программирования" + }, + { + "name": "reactiveobjc", + "title": "ReactiveObjc", + "sector": "language", + "status": "hold", + "description": "Objective-C фреймворк для реактивного программирования" + }, + { + "name": "rxswift", + "title": "RxSwift", + "sector": "language", + "status": "hold", + "description": "Swift фрейвморк для реактивного программирования" + }, + { + "name": "sdwebimage", + "title": "SDWebImage", + "sector": "language", + "status": "hold", + "description": "Async image downloader with cache support" + }, + { + "name": "swipecellkit", + "title": "SwipeCellKit", + "sector": "language", + "status": "hold", + "description": "Swipeable UITableViewCell/UICollectionViewCell based on the stock Mail.app" + }, + { + "name": "tttattributedlabel", + "title": "TTTAttributedLabel", + "sector": "language", + "status": "hold", + "description": "A drop-in replacement for UILabel that supports attributes" + }, + { + "name": "typhoon", + "title": "Typhoon", + "sector": "language", + "status": "hold", + "description": "Dependency Injection framework" + }, + { + "name": "yapdatabase", + "title": "YapDatabase", + "sector": "language", + "status": "hold", + "description": "A collection/key/value store." + } + ] +} diff --git a/src/main/radar/radar.isec.json b/src/main/radar/radar.isec.json new file mode 100644 index 00000000..c5477a0c --- /dev/null +++ b/src/main/radar/radar.isec.json @@ -0,0 +1,514 @@ +{ + "$schema": "../resources/radar-schema.json", + "type": "sectors", + "title": "QIWI ISEC Tech Radar", + "statuses": [ + { + "name": "adopt", + "title": "Adopt", + "description": "", + "size": 150, + "thick": 8 + }, + { + "name": "trial", + "title": "Trial", + "description": "", + "size": 50, + "thick": 4 + }, + { + "name": "assess", + "title": "Assess", + "description": "", + "size": 50, + "thick": 2 + }, + { + "name": "hold", + "title": "Hold", + "description": "", + "size": 50, + "thick": 1 + } + ], + "sectors": [ + { + "name": "monitor", + "title": "Monitoring", + "color": "#F2A25C" + }, + { + "name": "scanner", + "title": "Scanners & crawlers", + "color": "#84BFA4" + }, + { + "name": "infra", + "title": "Infrastructure", + "color": "#248EA6" + }, + { + "name": "techtools", + "title": "Tools and Techniques", + "color": "#F25244" + } + ], + "items": [ + { + "name": "███████", + "title": "███████", + "description": "██████ █████████", + "sector": "monitor", + "status": "adopt" + }, + { + "name": "███████", + "title": "███████", + "description": "████ ██████████", + "sector": "monitor", + "status": "assess" + }, + { + "name": "████-██████████", + "title": "████ ██████████", + "description": "███████ █████ ████████████ 3█", + "sector": "monitor", + "status": "adopt" + }, + { + "name": "███████", + "title": "███████", + "description": "", + "sector": "monitor", + "status": "adopt" + }, + { + "name": "██████████████", + "title": "██████████████", + "description": "", + "sector": "monitor", + "status": "trial" + }, + { + "name": "████████████", + "title": "████████████", + "description": "████ ████ █ ██████ ███ ███", + "sector": "monitor", + "status": "adopt" + }, + { + "name": "██████", + "title": "██████", + "description": "██████████ ███ ███████████", + "sector": "monitor", + "status": "hold" + }, + { + "name": "███████-v6", + "title": "███████ v6", + "description": "", + "sector": "monitor", + "status": "adopt" + }, + { + "name": "███", + "title": "███", + "description": "", + "sector": "monitor", + "status": "hold" + }, + { + "name": "████-███", + "title": "████ ███", + "description": "████ ██ ████████ ███ ██████", + "sector": "scanner", + "status": "adopt" + }, + { + "name": "██-█████-██████████", + "title": "██ █████ ██████████", + "description": "█████ ████ ██████", + "sector": "scanner", + "status": "adopt" + }, + { + "name": "███████████", + "title": "███████████", + "description": "████████ ████ ██████", + "sector": "scanner", + "status": "adopt" + }, + { + "name": "███████", + "title": "███████", + "description": "██████████ █ ████████", + "sector": "scanner", + "status": "adopt" + }, + { + "name": "██████-█-███", + "title": "██████ █ ███", + "description": "██████████████-████ ██████", + "sector": "scanner", + "status": "assess" + }, + { + "name": "██████████", + "title": "██████████", + "description": "██████████ ████ ██████", + "sector": "scanner", + "status": "adopt" + }, + { + "name": "█████████████", + "title": "█████████████", + "description": "", + "sector": "scanner", + "status": "adopt" + }, + { + "name": "█████████", + "title": "█████████", + "description": "In-Memory ██████████████ ████ ██████", + "sector": "scanner", + "status": "assess" + }, + { + "name": "███████", + "title": "███████", + "description": "████████████████████████ ████ ██████", + "sector": "scanner", + "status": "assess" + }, + { + "name": "█████████", + "title": "█████████", + "description": "", + "sector": "techtools", + "status": "adopt" + }, + { + "name": "████████", + "title": "████████", + "description": "", + "sector": "techtools", + "status": "adopt" + }, + { + "name": "████████", + "title": "████████", + "description": "", + "sector": "techtools", + "status": "adopt" + }, + { + "name": "██████████", + "title": "██████████", + "description": "", + "sector": "techtools", + "status": "adopt" + }, + { + "name": "████████", + "title": "████████", + "description": "", + "sector": "techtools", + "status": "adopt" + }, + { + "name": "████████", + "title": "████████", + "description": "", + "sector": "techtools", + "status": "adopt" + }, + { + "name": "██████", + "title": "██████", + "description": "", + "sector": "techtools", + "status": "trial" + }, + { + "name": "█████████", + "title": "█████████", + "description": "", + "sector": "techtools", + "status": "adopt" + }, + { + "name": "████", + "title": "████", + "description": "", + "sector": "techtools", + "status": "trial" + }, + { + "name": "████2███", + "title": "████2███", + "description": "", + "sector": "techtools", + "status": "adopt" + }, + { + "name": "███-████████-███████", + "title": "███ ████████ ███████", + "description": "", + "sector": "techtools", + "status": "trial" + }, + { + "name": "█████████-███████", + "title": "█████████ ███████", + "description": "", + "sector": "techtools", + "status": "adopt" + }, + { + "name": "███████", + "title": "███████", + "description": "", + "sector": "techtools", + "status": "adopt" + }, + { + "name": "███████-███████", + "title": "███████ ███████", + "description": "", + "sector": "techtools", + "status": "assess" + }, + { + "name": "███████████", + "title": "███████████", + "description": "", + "sector": "techtools", + "status": "trial" + }, + { + "name": "██████████-████", + "title": "██████████ ████", + "description": "", + "sector": "techtools", + "status": "adopt" + }, + { + "name": "██████████-█████", + "title": "██████████ █████", + "description": "", + "sector": "techtools", + "status": "adopt" + }, + { + "name": "██████████-███", + "title": "██████████ ███", + "description": "", + "sector": "techtools", + "status": "adopt" + }, + { + "name": "███", + "title": "███", + "description": "", + "sector": "techtools", + "status": "hold" + }, + { + "name": "████████", + "title": "████████", + "description": "", + "sector": "techtools", + "status": "adopt" + }, + { + "name": "███████-██████", + "title": "███████ ██████", + "description": "", + "sector": "techtools", + "status": "trial" + }, + { + "name": "█████", + "title": "█████", + "description": "", + "sector": "techtools", + "status": "trial" + }, + { + "name": "███-████████", + "title": "███ ████████", + "description": "", + "sector": "techtools", + "status": "adopt" + }, + { + "name": "████", + "title": "████", + "description": "", + "sector": "techtools", + "status": "adopt" + }, + { + "name": "█████████-███", + "title": "█████████ ███", + "description": "", + "sector": "techtools", + "status": "trial" + }, + { + "name": "████████-███-████████", + "title": "████████ ███ ████████", + "description": "", + "sector": "techtools", + "status": "adopt" + }, + { + "name": "████████-███-█████", + "title": "████████ ███ █████", + "description": "", + "sector": "techtools", + "status": "trial" + }, + { + "name": "█████-███", + "title": "█████ ███", + "description": "", + "sector": "techtools", + "status": "access" + }, + { + "name": "██████", + "title": "██████", + "description": "", + "sector": "techtools", + "status": "trial" + }, + { + "name": "████", + "title": "████", + "description": "", + "sector": "techtools", + "status": "adopt" + }, + { + "name": "███████", + "title": "███████", + "description": "", + "sector": "techtools", + "status": "adopt" + }, + { + "name": "██", + "title": "██", + "description": "", + "sector": "techtools", + "status": "adopt" + }, + { + "name": "██████████", + "title": "██████████", + "description": "████████ █████████ ███ ███████ ██████████", + "sector": "infra", + "status": "adopt" + }, + { + "name": "██████", + "title": "██████", + "description": "██████-█████████", + "sector": "infra", + "status": "adopt" + }, + { + "name": "█████", + "title": "█████", + "description": "█████████ ████████", + "sector": "infra", + "status": "adopt" + }, + { + "name": "█████", + "title": "█████", + "description": "█████████ ████████", + "sector": "infra", + "status": "hold" + }, + { + "name": "███████", + "title": "███████", + "description": "██████████ ██████████████ ██", + "sector": "infra", + "status": "adopt" + }, + { + "name": "██████", + "title": "██████", + "description": "███████████████", + "sector": "infra", + "status": "adopt" + }, + { + "name": "████████", + "title": "████████", + "description": "█████ ██████████", + "sector": "infra", + "status": "adopt" + }, + { + "name": "██████", + "title": "██████", + "description": "█████ ██ ████████ ████████", + "sector": "infra", + "status": "trial" + }, + { + "name": "███████", + "title": "███████", + "description": "", + "sector": "infra", + "status": "adopt" + }, + { + "name": "██████", + "title": "██████", + "description": "", + "sector": "infra", + "status": "adopt" + }, + { + "name": "███████", + "title": "███████", + "description": "", + "sector": "infra", + "status": "adopt" + }, + { + "name": "██████████", + "title": "██████████", + "description": "", + "sector": "infra", + "status": "adopt" + }, + { + "name": "██████", + "title": "██████", + "description": "", + "sector": "infra", + "status": "trial" + }, + { + "name": "█████████████-███████", + "title": "█████████████ ███████", + "description": "", + "sector": "infra", + "status": "adopt" + }, + { + "name": "██████-███████", + "title": "██████ ███████", + "description": "", + "sector": "infra", + "status": "adopt" + } + ] +} diff --git a/src/main/radar/radar.js.json b/src/main/radar/radar.js.json new file mode 100644 index 00000000..63632985 --- /dev/null +++ b/src/main/radar/radar.js.json @@ -0,0 +1,525 @@ +{ + "$schema": "../resources/radar-schema.json", + "type": "sectors", + "title": "QIWI JS Tech Radar", + "statuses": [ + { + "name": "adopt", + "title": "Adopt", + "description": "", + "size": 150, + "thick": 8 + }, + { + "name": "trial", + "title": "Trial", + "description": "", + "size": 50, + "thick": 4 + }, + { + "name": "assess", + "title": "Assess", + "description": "", + "size": 50, + "thick": 2 + }, + { + "name": "hold", + "title": "Hold", + "description": "", + "size": 50, + "thick": 1 + } + ], + "sectors": [ + { + "name": "lang", + "title": "Languages, Frameworks, Libs", + "description": "bla-bla-bla about languages", + "color": "#F2A25C" + }, + { + "name": "tools", + "title": "Tools", + "description": "bla-bla-bla about tools", + "color": "#84BFA4" + }, + { + "name": "tech", + "title": "Techniques", + "description": "bla-bla-bla about techniques", + "color": "#248EA6" + }, + { + "name": "platforms", + "title": "Platforms", + "description": "bla-bla-bla about platforms", + "color": "#F25244" + } + ], + "items": [ + { + "name": "typescript", + "title": "TypeScript", + "description": "TypeScript is a typed superset of JavaScript that compiles to plain JavaScript.", + "sector": "lang", + "status": "adopt" + }, + { + "name": "es2015", + "title": "es2015", + "description": "es2015", + "sector": "lang", + "status": "adopt" + }, + { + "name": "es2021", + "title": "es2021", + "description": "es2021", + "sector": "lang", + "status": "trial" + }, + { + "name": "nest-js", + "title": "Nest.js", + "description": "Spring для TS", + "sector": "lang", + "status": "adopt" + }, + { + "name": "react", + "title": "React", + "description": "Декларативная", + "sector": "lang", + "status": "adopt" + }, + { + "name": "emotion", + "title": "emotion", + "description": "CSS in JS", + "sector": "lang", + "status": "adopt" + }, + { + "name": "jest", + "title": "jest", + "description": "Фреймворк для unit автотестов", + "sector": "lang", + "status": "adopt" + }, + { + "name": "lodash", + "title": "lodash", + "description": "Стандартная библиотека", + "sector": "lang", + "status": "adopt" + }, + { + "name": "react-scripts", + "title": "react-scripts", + "description": "Create React apps with no build configuration.", + "sector": "lang", + "status": "adopt" + }, + { + "name": "react-router", + "title": "react-router", + "description": "Маршрутизация в React", + "sector": "lang", + "status": "adopt" + }, + { + "name": "testing-library", + "title": "testing-library", + "description": "Либо для тестов React компонентов", + "sector": "lang", + "status": "adopt" + }, + { + "name": "playwright", + "title": "playwright", + "description": "Фреймворк для e2e тестов", + "sector": "lang", + "status": "adopt" + }, + { + "name": "vite", + "title": "vite", + "description": "Create React apps with no build configuration.", + "sector": "lang", + "status": "assess" + }, + { + "name": "nodejs-test-runner", + "title": "nodejs test runner", + "description": "Нативный тест-раннер ноды", + "sector": "lang", + "status": "assess" + }, + { + "name": "react-native", + "title": "React Native", + "description": "Разработка нативных приложений для Android и iOS на React", + "sector": "lang", + "status": "assess" + }, + { + "name": "next-js", + "title": "Next.js", + "description": "Фреймворк для React-приложений", + "sector": "lang", + "status": "assess" + }, + { + "name": "vue", + "title": "Vue", + "description": "VueJS", + "sector": "lang", + "status": "hold" + }, + { + "name": "express", + "title": "express", + "description": "Мидлвары поверх http-server", + "sector": "lang", + "status": "hold" + }, + { + "name": "uvu", + "title": "uvu", + "description": "«Легкая» либа для автотестирования", + "sector": "lang", + "status": "hold" + }, + { + "name": "mocha", + "title": "mocha", + "description": "legacy либа для автотестов", + "sector": "lang", + "status": "hold" + }, + { + "name": "cypress", + "title": "cypress", + "description": "Фреймворк для e2e тестов", + "sector": "lang", + "status": "hold" + }, + { + "name": "flow", + "title": "Flow", + "description": "Статический анализатор кода и набор синтаксических конструкций", + "sector": "lang", + "status": "hold" + }, + { + "name": "enzyme", + "title": "enzyme", + "description": "Либо для тестов React компонентов", + "sector": "lang", + "status": "hold" + }, + { + "name": "antd", + "title": "antd", + "description": "ui компоненты", + "sector": "lang", + "status": "hold" + }, + { + "name": "material-ui", + "title": "material-ui", + "description": "ui компоненты", + "sector": "lang", + "status": "hold" + }, + { + "name": "tailwindcss", + "title": "tailwindcss", + "description": "CSS framework", + "sector": "lang", + "status": "hold" + }, + { + "name": "react-bootstrap", + "title": "react-bootstrap", + "description": "CSS framework", + "sector": "lang", + "status": "hold" + }, + { + "name": "styled-components", + "title": "styled-components", + "description": "CSS in JS", + "sector": "lang", + "status": "hold" + }, + { + "name": "radium", + "title": "radium", + "description": "inline styles on React elements", + "sector": "lang", + "status": "hold" + }, + { + "name": "nodejs-18", + "title": "Nodejs 18", + "description": "Nodejs 18", + "sector": "platforms", + "status": "adopt" + }, + { + "name": "nodejs-20", + "title": "Nodejs 20", + "description": "Nodejs 20", + "sector": "platforms", + "status": "trial" + }, + { + "name": "kubernetes", + "title": "Kubernetes", + "description": "https://kubernetes.io/", + "sector": "platforms", + "status": "adopt" + }, + { + "name": "pijma", + "title": "Pijma", + "description": "QIWI UI Kit (react 18)", + "sector": "platforms", + "status": "adopt" + }, + { + "name": "yarn-classic", + "title": "Yarn classic", + "description": "Пакетный менеджер вместо npm", + "sector": "platforms", + "status": "adopt" + }, + { + "name": "yarn-4", + "title": "Yarn 4", + "description": "yarn 4", + "sector": "platforms", + "status": "adopt" + }, + { + "name": "qiwi-nestjs-enterprise", + "title": "qiwi/nestjs-enterprise", + "description": "Платформа модулей для работы с Nest js https://github.com/qiwi/nestjs-enterprise", + "sector": "platforms", + "status": "adopt" + }, + { + "name": "eslint", + "title": "eslint", + "description": "Инструмент", + "sector": "tools", + "status": "adopt" + }, + { + "name": "prettier", + "title": "prettier", + "description": "Code Formatter", + "sector": "tools", + "status": "adopt" + }, + { + "name": "flp", + "title": "flp", + "description": "Провайдер клиентских событий", + "sector": "tools", + "status": "adopt" + }, + { + "name": "codeclimate", + "title": "codeclimate", + "description": "Статический анализатор кода https://github.com/codeclimate/codeclimate", + "sector": "tools", + "status": "adopt" + }, + { + "name": "zx-bulk-release", + "title": "zx-bulk-release", + "description": "zx-based alternative for multi-semantic-release", + "sector": "tools", + "status": "adopt" + }, + { + "name": "githubactions", + "title": "GithubActions", + "description": "GitHub Actions makes it easy to automate all your software workflows", + "sector": "tools", + "status": "adopt" + }, + { + "name": "teamcity", + "title": "Teamcity", + "description": "TeamCity — мощный инструмент непрерывной интеграции и развертывания для разработчиков и DevOps-инженеров", + "sector": "tools", + "status": "adopt" + }, + { + "name": "sonar", + "title": "sonar", + "description": "Статический анализатор кода", + "sector": "tools", + "status": "adopt" + }, + { + "name": "zx-semrel", + "title": "zx-semrel", + "description": "Провайдер семантических релизов", + "sector": "tools", + "status": "trial" + }, + { + "name": "zx", + "title": "zx", + "description": "Замена bash", + "sector": "tools", + "status": "trial" + }, + { + "name": "storybook", + "title": "Storybook", + "description": "https://storybook.js.org/", + "sector": "tools", + "status": "assess" + }, + { + "name": "semantic-release", + "title": "semantic-release", + "description": "Движение к CD", + "sector": "tools", + "status": "hold" + }, + { + "name": "multi-semantic-release", + "title": "multi-semantic-release", + "description": "Враппер semrel для совместимости с монорепами. Меняем на zx-bulk-release", + "sector": "tools", + "status": "hold" + }, + { + "name": "travis-ci", + "title": "Travis-ci", + "description": "CI для OSS. GH победил. Выпиливаем. И Appveyor тоже", + "sector": "tools", + "status": "hold" + }, + { + "name": "react-styleguidist", + "title": "React Styleguidist", + "description": "https://react-styleguidist.js.org/", + "sector": "tools", + "status": "hold" + }, + { + "name": "tslint", + "title": "tslint", + "description": "линтер", + "sector": "tools", + "status": "hold" + }, + { + "name": "stylelint", + "title": "stylelint", + "description": "css линтер", + "sector": "tools", + "status": "hold" + }, + { + "name": "standard", + "title": "standard", + "description": "линтер", + "sector": "tools", + "status": "hold" + }, + { + "name": "jshint", + "title": "jshint", + "description": "линтер", + "sector": "tools", + "status": "hold" + }, + { + "name": "monorepo", + "title": "Monorepo", + "description": "Обобщение кодовой базы на уровне домена продукта", + "sector": "tech", + "status": "adopt" + }, + { + "name": "oss", + "title": "OSS", + "description": "Публичная разработка https://github.com/qiwi", + "sector": "tech", + "status": "adopt" + }, + { + "name": "typeorm", + "title": "Typeorm", + "description": "ORM", + "sector": "lang", + "status": "assess" + }, + { + "name": "sequelize", + "title": "Sequelize", + "description": "ORM", + "sector": "lang", + "status": "assess" + }, + { + "name": "prisma", + "title": "Prisma", + "description": "ORM", + "sector": "lang", + "status": "assess" + }, + { + "name": "redux", + "title": "Redux", + "description": "State manager. Too much boilerplate. We use wrappers instead", + "sector": "lang", + "status": "hold" + }, + { + "name": "rematch", + "title": "Rematch", + "description": "Wrapper for redux. Hasn't been updated since 2021", + "sector": "lang", + "status": "hold" + }, + { + "name": "react-query", + "title": "React-query", + "description": "State and query manager", + "sector": "lang", + "status": "assess" + }, + { + "name": "zustand", + "title": "Zustand", + "description": "State manager", + "sector": "lang", + "status": "assess" + }, + { + "name": "reduxjs-toolkit", + "title": "@reduxjs/toolkit", + "description": "Official wrapper for redux", + "sector": "lang", + "status": "assess" + }, + { + "name": "mobx", + "title": "Mobx", + "description": "State manager", + "sector": "lang", + "status": "assess" + } + ] +} diff --git a/src/main/radar/radar.json b/src/main/radar/radar.json new file mode 100644 index 00000000..02069d78 --- /dev/null +++ b/src/main/radar/radar.json @@ -0,0 +1,70 @@ +{ + "$schema": "../resources/radar-schema.json", + "type": "scopes", + "title": "QIWI Tech Radars", + "scopes": [ + { + "name": "js", + "title": "JS", + "description": "js", + "radar": { + "type": "path", + "path": "radar.js.json" + } + }, + { + "name": "backend", + "title": "Backend", + "description": "backend", + "radar": { + "type": "path", + "path": "radar.backend.json" + } + }, + { + "name": "android", + "title": "Android", + "description": "android", + "radar": { + "type": "path", + "path": "radar.android.json" + } + }, + { + "name": "ios", + "title": "iOS", + "description": "ios", + "radar": { + "type": "path", + "path": "radar.ios.json" + } + }, + { + "name": "qa", + "title": "QA", + "description": "qa", + "radar": { + "type": "path", + "path": "radar.qa.json" + } + }, + { + "name": "ops", + "title": "OPS", + "description": "ops", + "radar": { + "type": "path", + "path": "radar.ops.json" + } + }, + { + "name": "isec", + "title": "ISEC", + "description": "isec", + "radar": { + "type": "path", + "path": "radar.isec.json" + } + } + ] +} diff --git a/src/main/radar/radar.ops.json b/src/main/radar/radar.ops.json new file mode 100644 index 00000000..6a09aa38 --- /dev/null +++ b/src/main/radar/radar.ops.json @@ -0,0 +1,584 @@ +{ + "$schema": "../resources/radar-schema.json", + "type": "sectors", + "title": "QIWI OPS Tech Radar", + "statuses": [ + { + "name": "adopt", + "title": "Adopt", + "description": "", + "size": 150, + "thick": 8 + }, + { + "name": "trial", + "title": "Trial", + "description": "", + "size": 50, + "thick": 4 + }, + { + "name": "assess", + "title": "Assess", + "description": "", + "size": 50, + "thick": 2 + }, + { + "name": "hold", + "title": "Hold", + "description": "", + "size": 50, + "thick": 1 + } + ], + "sectors": [ + { + "name": "langlib", + "title": "Languages and frameworks", + "color": "#F2A25C" + }, + { + "name": "data", + "title": "Data management", + "color": "#84BFA4" + }, + { + "name": "infra", + "title": "Infrastructure", + "color": "#248EA6" + }, + { + "name": "techtools", + "title": "Tools and Techniques", + "color": "#F25244" + } + ], + "items": [ + { + "name": "java", + "title": "Java", + "description": "Обычная Java", + "sector": "langlib", + "status": "adopt" + }, + { + "name": "golang", + "title": "GoLang", + "description": "Системный язык программирования", + "sector": "langlib", + "status": "assess" + }, + { + "name": "python-3", + "title": "Python 3", + "description": "Python", + "sector": "langlib", + "status": "adopt" + }, + { + "name": "flask", + "title": "Flask", + "description": "", + "sector": "langlib", + "status": "adopt" + }, + { + "name": "fastapi", + "title": "FastApi", + "description": "", + "sector": "langlib", + "status": "trial" + }, + { + "name": "logback", + "title": "Logback", + "description": "Библиотека для логирования", + "sector": "langlib", + "status": "adopt" + }, + { + "name": "log4j", + "title": "Log4j", + "description": "Библиотека для логирования", + "sector": "langlib", + "status": "hold" + }, + { + "name": "net-core-6-lts", + "title": ".NET Core 6 LTS", + "description": ".NET", + "sector": "langlib", + "status": "adopt" + }, + { + "name": "net-core-5", + "title": ".NET Core 5", + "description": ".NET", + "sector": "langlib", + "status": "hold" + }, + { + "name": "asp-net", + "title": "ASP.NET", + "description": "Web-фреймворк", + "sector": "langlib", + "status": "adopt" + }, + { + "name": "mstest2", + "title": "MSTest2", + "description": "Фреймворк для тестов .NET", + "sector": "langlib", + "status": "adopt" + }, + { + "name": "app-metrics", + "title": "App.Metrics", + "description": "Измерение и отправка метрик .NET", + "sector": "langlib", + "status": "adopt" + }, + { + "name": "lua", + "title": "Lua", + "description": "", + "sector": "langlib", + "status": "adopt" + }, + { + "name": "oracledb", + "title": "OracleDB", + "description": "Одна из основных баз данных", + "sector": "data", + "status": "adopt" + }, + { + "name": "mssql", + "title": "MsSQL", + "description": "SQL база данных", + "sector": "data", + "status": "adopt" + }, + { + "name": "postgresql", + "title": "PostgreSQL", + "description": "Основная база данных", + "sector": "data", + "status": "adopt" + }, + { + "name": "patroni", + "title": "Patroni", + "description": "PostgreSQL в кластере", + "sector": "data", + "status": "adopt" + }, + { + "name": "cockroachdb", + "title": "CockroachDB", + "description": "Распределенная SQL-база данных", + "sector": "data", + "status": "assess" + }, + { + "name": "clickhouse", + "title": "Clickhouse", + "description": "Колоночная база данных", + "sector": "data", + "status": "adopt" + }, + { + "name": "elasticsearch", + "title": "Elasticsearch", + "description": "", + "sector": "data", + "status": "adopt" + }, + { + "name": "hazelcast", + "title": "Hazelcast", + "description": "In-Memory распределенная база данных", + "sector": "data", + "status": "assess" + }, + { + "name": "mongodb", + "title": "MongoDB", + "description": "Документоориентированная база данных", + "sector": "data", + "status": "assess" + }, + { + "name": "kafka", + "title": "Kafka", + "description": "Распределенная шина для поточно обработки данных", + "sector": "data", + "status": "adopt" + }, + { + "name": "cassandra", + "title": "Cassandra", + "description": "Масштабируемая распределенная база данных", + "sector": "data", + "status": "adopt" + }, + { + "name": "victoriametrics", + "title": "Victoriametrics", + "description": "", + "sector": "data", + "status": "adopt" + }, + { + "name": "sonarqube", + "title": "SonarQube", + "description": "", + "sector": "techtools", + "status": "adopt" + }, + { + "name": "graphite", + "title": "Graphite", + "description": "", + "sector": "techtools", + "status": "adopt" + }, + { + "name": "asterisk", + "title": "Asterisk", + "description": "", + "sector": "techtools", + "status": "adopt" + }, + { + "name": "freeswitch", + "title": "Freeswitch", + "description": "", + "sector": "techtools", + "status": "adopt" + }, + { + "name": "proxysql", + "title": "Proxysql", + "description": "", + "sector": "techtools", + "status": "adopt" + }, + { + "name": "metabase", + "title": "Metabase", + "description": "", + "sector": "techtools", + "status": "adopt" + }, + { + "name": "vuejs", + "title": "VueJS", + "description": "", + "sector": "techtools", + "status": "trial" + }, + { + "name": "librenms", + "title": "Librenms", + "description": "", + "sector": "techtools", + "status": "adopt" + }, + { + "name": "nats", + "title": "Nats", + "description": "", + "sector": "techtools", + "status": "trial" + }, + { + "name": "stor2rrd", + "title": "Stor2rrd", + "description": "", + "sector": "techtools", + "status": "adopt" + }, + { + "name": "ibm-spectrum-control", + "title": "Ibm spectrum control", + "description": "", + "sector": "techtools", + "status": "trial" + }, + { + "name": "commvault-simpana", + "title": "Commvault Simpana", + "description": "", + "sector": "techtools", + "status": "adopt" + }, + { + "name": "graylog", + "title": "Graylog", + "description": "", + "sector": "techtools", + "status": "adopt" + }, + { + "name": "noction-netflow", + "title": "Noction netflow", + "description": "", + "sector": "techtools", + "status": "assess" + }, + { + "name": "sccm", + "title": "SCCM", + "description": "", + "sector": "techtools", + "status": "adopt" + }, + { + "name": "azure-arc", + "title": "Azure ARC", + "description": "", + "sector": "techtools", + "status": "access" + }, + { + "name": "adfs", + "title": "ADFS", + "description": "", + "sector": "techtools", + "status": "adopt" + }, + { + "name": "azuread", + "title": "AzureAD", + "description": "", + "sector": "techtools", + "status": "adopt" + }, + { + "name": "ad", + "title": "AD", + "description": "", + "sector": "techtools", + "status": "adopt" + }, + { + "name": "kubernetes", + "title": "Kubernetes", + "description": "Основная платформа для запуска приложений", + "sector": "infra", + "status": "adopt" + }, + { + "name": "consul", + "title": "Consul", + "description": "Сервис-дискавери", + "sector": "infra", + "status": "adopt" + }, + { + "name": "vault", + "title": "Vault", + "description": "Хранилище секретов", + "sector": "infra", + "status": "adopt" + }, + { + "name": "hiera", + "title": "Hiera", + "description": "Хранилище секретов", + "sector": "infra", + "status": "hold" + }, + { + "name": "puppet", + "title": "Puppet", + "description": "Управление конфигурациями VM", + "sector": "infra", + "status": "adopt" + }, + { + "name": "docker", + "title": "Docker", + "description": "Контейренизация", + "sector": "infra", + "status": "adopt" + }, + { + "name": "teamcity", + "title": "TeamCity", + "description": "CI/CD инструмент", + "sector": "infra", + "status": "adopt" + }, + { + "name": "argocd", + "title": "ArgoCD", + "description": "CD и IaC для Kubernetes", + "sector": "infra", + "status": "trial" + }, + { + "name": "grafana", + "title": "Grafana", + "description": "", + "sector": "infra", + "status": "adopt" + }, + { + "name": "kibana", + "title": "Kibana", + "description": "", + "sector": "infra", + "status": "adopt" + }, + { + "name": "zabbix", + "title": "Zabbix", + "description": "", + "sector": "infra", + "status": "adopt" + }, + { + "name": "prometheus", + "title": "Prometheus", + "description": "", + "sector": "infra", + "status": "adopt" + }, + { + "name": "zipkin", + "title": "Zipkin", + "description": "", + "sector": "infra", + "status": "trial" + }, + { + "name": "clickhouse", + "title": "Clickhouse", + "description": "", + "sector": "infra", + "status": "adopt" + }, + { + "name": "telegraf", + "title": "Telegraf", + "description": "", + "sector": "infra", + "status": "adopt" + }, + { + "name": "jitsi", + "title": "Jitsi", + "description": "", + "sector": "infra", + "status": "assess" + }, + { + "name": "vmware", + "title": "VMware", + "description": "", + "sector": "infra", + "status": "adopt" + }, + { + "name": "kamailio", + "title": "Kamailio", + "description": "", + "sector": "infra", + "status": "trial" + }, + { + "name": "cisco-call-manager", + "title": "Cisco Call Manager", + "description": "", + "sector": "infra", + "status": "hold" + }, + { + "name": "cisco-contact-center", + "title": "Cisco Contact Center", + "description": "", + "sector": "infra", + "status": "hold" + }, + { + "name": "janus", + "title": "Janus", + "description": "", + "sector": "infra", + "status": "trial" + }, + { + "name": "sentry", + "title": "Sentry", + "description": "", + "sector": "infra", + "status": "assess" + }, + { + "name": "ms-teams", + "title": "MS Teams", + "description": "", + "sector": "infra", + "status": "trial" + }, + { + "name": "apple-business-manager", + "title": "Apple Business Manager", + "description": "", + "sector": "infra", + "status": "trial" + }, + { + "name": "onedrive-for-business", + "title": "Onedrive for business", + "description": "", + "sector": "infra", + "status": "adopt" + }, + { + "name": "sharepoint-online", + "title": "Sharepoint Online", + "description": "", + "sector": "infra", + "status": "trial" + }, + { + "name": "microsoft-teams", + "title": "Microsoft Teams", + "description": "", + "sector": "infra", + "status": "adopt" + }, + { + "name": "office-365", + "title": "Office 365", + "description": "", + "sector": "infra", + "status": "adopt" + }, + { + "name": "windows-365", + "title": "Windows 365", + "description": "", + "sector": "infra", + "status": "access" + }, + { + "name": "exchange-2019", + "title": "Exchange 2019", + "description": "", + "sector": "infra", + "status": "adopt" + }, + { + "name": "exchange-2016", + "title": "Exchange 2016", + "description": "", + "sector": "infra", + "status": "hold" + } + ] +} diff --git a/src/main/radar/radar.qa.json b/src/main/radar/radar.qa.json new file mode 100644 index 00000000..95eb4545 --- /dev/null +++ b/src/main/radar/radar.qa.json @@ -0,0 +1,451 @@ +{ + "$schema": "../resources/radar-schema.json", + "type": "sectors", + "title": "QIWI QA Tech Radar", + "statuses": [ + { + "name": "adopt", + "title": "Adopt", + "description": "", + "size": 150, + "thick": 8 + }, + { + "name": "trial", + "title": "Trial", + "description": "", + "size": 50, + "thick": 4 + }, + { + "name": "assess", + "title": "Assess", + "description": "", + "size": 50, + "thick": 2 + }, + { + "name": "hold", + "title": "Hold", + "description": "", + "size": 50, + "thick": 1 + } + ], + "sectors": [ + { + "name": "lang", + "title": "Languages and frameworks", + "color": "#F2A25C" + }, + { + "name": "platforms", + "title": "Platforms and infrastructure", + "color": "#84BFA4" + }, + { + "name": "tools", + "title": "Tools", + "color": "#248EA6" + }, + { + "name": "tech", + "title": "Techniques", + "color": "#F25244" + } + ], + "items": [ + { + "name": "java-8", + "title": "Java 8", + "description": "Обычная Java", + "sector": "lang", + "status": "hold" + }, + { + "name": "java-11", + "title": "Java 11", + "description": "Актуальная LTS Java", + "sector": "lang", + "status": "adopt" + }, + { + "name": "kotlin", + "title": "Kotlin", + "description": "Статически типизированный", + "sector": "lang", + "status": "adopt" + }, + { + "name": "typescript", + "title": "TypeScript", + "description": "TypeScript — язык программирования", + "sector": "lang", + "status": "adopt" + }, + { + "name": "go", + "title": "Go", + "description": "Компилируемый многопоточный язык программирования", + "sector": "lang", + "status": "adopt" + }, + { + "name": "jest", + "title": "jest", + "description": "Фреймворк для unit автотестов", + "sector": "lang", + "status": "adopt" + }, + { + "name": "cypress", + "title": "Cypress", + "description": "Фреймворк для e2e тестов", + "sector": "lang", + "status": "hold" + }, + { + "name": "c-dash", + "title": "C#", + "description": "язык программирования", + "sector": "lang", + "status": "hold" + }, + { + "name": "groovy", + "title": "Groovy", + "description": "Объектно-ориентированный язык программирования", + "sector": "lang", + "status": "adopt" + }, + { + "name": "kubernetes", + "title": "Kubernetes", + "description": "Основная платформа для запуска приложений", + "sector": "platforms", + "status": "adopt" + }, + { + "name": "docker", + "title": "Docker", + "description": "Контейренизация", + "sector": "platforms", + "status": "adopt" + }, + { + "name": "teamcity", + "title": "TeamCity", + "description": "CI/CD инструмент", + "sector": "platforms", + "status": "adopt" + }, + { + "name": "tekton", + "title": "Tekton", + "description": "Легковесный CI инструмент", + "sector": "platforms", + "status": "access" + }, + { + "name": "sonarqube", + "title": "SonarQube", + "description": "Платформа с открытым исходным кодом для непрерывного анализа и измерения качества программного кода", + "sector": "platforms", + "status": "adopt" + }, + { + "name": "moon", + "title": "Moon", + "description": "Организация ручного и автоматизированного тестирования веб-приложений в настольных и мобильных браузерах на основе протокола Selenium WebDriver", + "sector": "tools", + "status": "adopt" + }, + { + "name": "appium", + "title": "Appium", + "description": "Tool for automation UI tests", + "sector": "tools", + "status": "hold" + }, + { + "name": "cucumber", + "title": "Cucumber", + "description": "Tool for automation UI tests", + "sector": "tools", + "status": "hold" + }, + { + "name": "playwright", + "title": "PlayWright", + "description": "Tool for automation UI tests", + "sector": "tools", + "status": "adopt" + }, + { + "name": "selenium", + "title": "Selenium", + "description": "Tool for automation UI tests", + "sector": "tools", + "status": "adopt" + }, + { + "name": "junit", + "title": "JUnit", + "description": "Среда тестирования", + "sector": "tools", + "status": "adopt" + }, + { + "name": "apidoc", + "title": "apiDoc", + "description": "Встроенная документация для вебинтерфейса Restful", + "sector": "tools", + "status": "adopt" + }, + { + "name": "testng", + "title": "TestNG", + "description": "Среда тестирования", + "sector": "tools", + "status": "adopt" + }, + { + "name": "nunit", + "title": "NUnit", + "description": "Среда тестирования", + "sector": "tools", + "status": "adopt" + }, + { + "name": "confluence", + "title": "Confluence", + "description": "Wiki", + "sector": "tools", + "status": "adopt" + }, + { + "name": "swagger", + "title": "Swagger", + "description": "Фреймворк описания API", + "sector": "tools", + "status": "adopt" + }, + { + "name": "miro", + "title": "Miro", + "description": "Wiki", + "sector": "tools", + "status": "adopt" + }, + { + "name": "github", + "title": "Github", + "description": "Система контроля версий исползуемая в основном frontend'ового кода", + "sector": "tools", + "status": "hold" + }, + { + "name": "gerrit", + "title": "Gerrit", + "description": "Система контроля версий.", + "sector": "tools", + "status": "adopt" + }, + { + "name": "intellij-idea", + "title": "Intellij idea", + "description": "IDE для разработки на Java/Kotlin", + "sector": "tools", + "status": "adopt" + }, + { + "name": "jira", + "title": "Jira", + "description": "Bug tracker", + "sector": "tools", + "status": "hold" + }, + { + "name": "kaiten", + "title": "Kaiten", + "description": "Система управления задачами", + "sector": "tools", + "status": "adopt" + }, + { + "name": "kibana", + "title": "Kibana", + "description": "Визуализация логов", + "sector": "tools", + "status": "adopt" + }, + { + "name": "teamcity", + "title": "TeamCity", + "description": "Сервер для CI/CD", + "sector": "tools", + "status": "adopt" + }, + { + "name": "testflight", + "title": "TestFlight", + "description": "Share test builds for testers", + "sector": "tools", + "status": "adopt" + }, + { + "name": "grafana", + "title": "Grafana", + "description": "Решение для построения дашбордов и мониторинга", + "sector": "tools", + "status": "adopt" + }, + { + "name": "testrail", + "title": "Testrail", + "description": "Управление тест-кейсами для команд QA", + "sector": "tools", + "status": "hold" + }, + { + "name": "postman", + "title": "Postman", + "description": "Инструмент для тестирования API", + "sector": "tools", + "status": "adopt" + }, + { + "name": "browserstack", + "title": "Browserstack", + "description": "Облачная платформа для веб-тестирования и тестирования мобильных устройств", + "sector": "tools", + "status": "adopt" + }, + { + "name": "codenarc", + "title": "CodeNarc", + "description": "инструмент статического анализа исходного кода Groovy", + "sector": "tools", + "status": "adopt" + }, + { + "name": "fets", + "title": "Fets", + "description": "Bug tracker", + "sector": "tools", + "status": "adopt" + }, + { + "name": "gatling", + "title": "Gatling", + "description": "Инструмент для тестирования нагрузки и производительности с открытым исходным кодом", + "sector": "tools", + "status": "adopt" + }, + { + "name": "gradle", + "title": "Gradle", + "description": "Система автоматической сборки", + "sector": "tools", + "status": "adopt" + }, + { + "name": "charles", + "title": "Charles", + "description": "Кроссплатформенное приложение прокси-сервера отладки HTTP", + "sector": "tools", + "status": "adopt" + }, + { + "name": "continuous-delivery", + "title": "Continuous delivery", + "description": "С помощью teamcity и прохождения автоматических автотестов", + "sector": "tech", + "status": "adopt" + }, + { + "name": "native-api-tests", + "title": "Native API tests", + "description": "Нативное тестирование API", + "sector": "tech", + "status": "adopt" + }, + { + "name": "native-ui-tests", + "title": "Native UI tests", + "description": "Нативное тестирования для UI тестов", + "sector": "tech", + "status": "adopt" + }, + { + "name": "bdd", + "title": "BDD", + "description": "Методология разработки ПО", + "sector": "tech", + "status": "adopt" + }, + { + "name": "continuous-integration", + "title": "Continuous integration", + "description": "Каждый пулл реквест проверяется автоматическими чеками", + "sector": "tech", + "status": "adopt" + }, + { + "name": "continuous-deployment", + "title": "Continuous deployment", + "description": "Практика автоматизации всего процесса релиза ПО", + "sector": "tech", + "status": "adopt" + }, + { + "name": "rest", + "title": "REST", + "description": "Архитектурный стиль взаимодействия компонентов распределённого приложения в сети.", + "sector": "tech", + "status": "adopt" + }, + { + "name": "soa", + "title": "SOA", + "description": "Service-oriented architecture", + "sector": "tech", + "status": "adopt" + }, + { + "name": "solid", + "title": "SOLID", + "description": "Мнемонический акроним для 5 основных принципов объектно-ориентированного программирования и проектирования.", + "sector": "tech", + "status": "adopt" + }, + { + "name": "ui-tests", + "title": "UI tests", + "description": "фича покрывается UI тестами", + "sector": "tech", + "status": "adopt" + }, + { + "name": "unit-tests", + "title": "Unit tests", + "description": "фича покрывается unit тестами", + "sector": "tech", + "status": "adopt" + }, + { + "name": "integration-tests", + "title": "Integration tests", + "description": "фича покрывается интеграционными тестами", + "sector": "tech", + "status": "adopt" + }, + { + "name": "acceptance-tests", + "title": "Acceptance tests", + "description": "фича покрывается приемочными тестами", + "sector": "tech", + "status": "adopt" + } + ] +} diff --git a/src/main/resources/radar-schema.json b/src/main/resources/radar-schema.json new file mode 100644 index 00000000..f382c4bd --- /dev/null +++ b/src/main/resources/radar-schema.json @@ -0,0 +1,166 @@ +{ + "$schema": "http://json-schema.org/draft-07/schema", + "title": "Tech Radar Schema", + "definitions": { + "scope": { + "type": "object", + "required": ["name", "title", "radar"], + "properties": { + "name": { + "type": "string", + "pattern": "^[a-z0-9][a-z0-9-]*$" + }, + "title": { + "type": "string" + }, + "description": { + "type": "string" + }, + "radar": { + "$ref": "#/definitions/radar" + } + } + }, + "sector": { + "type": "object", + "required": ["name", "title"], + "properties": { + "name": { + "type": "string", + "pattern": "^[a-z0-9][a-z0-9-]*$" + }, + "title": { + "type": "string" + }, + "description": { + "type": "string" + }, + "color": { + "type": "string" + } + } + }, + "status": { + "type": "object", + "required": ["name", "title", "size", "thick"], + "properties": { + "name": { + "type": "string", + "pattern": "^[a-z0-9][a-z0-9-]*$" + }, + "title": { + "type": "string" + }, + "description": { + "type": "string" + }, + "size": { + "type": "number" + }, + "thick": { + "type": "number" + } + } + }, + "item": { + "type": "object", + "required": ["name", "title", "status", "sector"], + "properties": { + "name": { + "type": "string", + "pattern": "^[a-z0-9█][a-z0-9-█]*$" + }, + "title": { + "type": "string" + }, + "description": { + "type": "string" + }, + "status": { + "type": "string" + }, + "sector": { + "type": "string" + } + } + }, + "radar": { + "type": "object", + "oneOf": [ + { + "$ref": "#/definitions/path-radar" + }, + { + "$ref": "#/definitions/sectors-radar" + }, + { + "$ref": "#/definitions/scope-radar" + } + ] + }, + "path-radar": { + "type": "object", + "required": ["type", "path"], + "properties": { + "type": { + "type": "string", + "enum": ["path"] + }, + "path": { + "type": "string" + } + } + }, + "scope-radar": { + "type": "object", + "required": ["type", "title", "scopes"], + "properties": { + "type": { + "type": "string", + "enum": ["scopes"] + }, + "title": { + "type": "string" + }, + "scopes": { + "type": "array", + "items": { + "$ref": "#/definitions/scope" + } + } + } + }, + "sectors-radar": { + "type": "object", + "required": ["title", "type", "items"], + "properties": { + "type": { + "type": "string", + "enum": ["sectors"] + }, + "title": { + "type": "string" + }, + "statuses": { + "type": "array", + "items": { + "$ref": "#/definitions/status" + } + }, + "sectors": { + "type": "array", + "items": { + "$ref": "#/definitions/sector" + } + }, + "items": { + "type": "array", + "items": { + "$ref": "#/definitions/item" + } + } + } + } + }, + "$ref": "#/definitions/radar" +} diff --git a/src/main/resources/webapp/next-env.d.ts b/src/main/resources/webapp/next-env.d.ts new file mode 100644 index 00000000..4f11a03d --- /dev/null +++ b/src/main/resources/webapp/next-env.d.ts @@ -0,0 +1,5 @@ +/// +/// + +// NOTE: This file should not be edited +// see https://nextjs.org/docs/basic-features/typescript for more information. diff --git a/src/main/resources/webapp/next.config.js b/src/main/resources/webapp/next.config.js new file mode 100644 index 00000000..5f54e66e --- /dev/null +++ b/src/main/resources/webapp/next.config.js @@ -0,0 +1,12 @@ +/** @type {import('next').NextConfig} */ +const nextConfig = { + output: 'export', + distDir: 'build', + pageExtensions: ['ts', 'tsx', 'mjs', 'cjs'], + trailingSlash: true, + eslint: { + ignoreDuringBuilds: true, + }, +} + +export default nextConfig diff --git a/src/main/resources/webapp/package.json b/src/main/resources/webapp/package.json new file mode 100644 index 00000000..beeb24b7 --- /dev/null +++ b/src/main/resources/webapp/package.json @@ -0,0 +1,21 @@ +{ + "name": "tech-radar", + "description": "tech-radar", + "version": "0.0.0", + "type": "module", + "scripts": { + "build": "next build", + "dev": "next dev" + }, + "dependencies": { + "@types/node": "20.8.9", + "@types/react": "18.2.33", + "@types/react-dom": "18.2.14", + "d3": "7.8.5", + "next": "13.4.19", + "query-string": "8.1.0", + "react": "18.2.0", + "react-dom": "18.2.0", + "typescript": "4.9.5" + } +} diff --git a/src/main/resources/webapp/src/app/[...name]/page.tsx b/src/main/resources/webapp/src/app/[...name]/page.tsx new file mode 100644 index 00000000..2d5332c7 --- /dev/null +++ b/src/main/resources/webapp/src/app/[...name]/page.tsx @@ -0,0 +1,136 @@ +import { api, types } from '@qiwi/tech-radar' + +import { notFound } from 'next/navigation' +import qs from 'query-string' + +import { Scopes, Sectors } from '../../ui' +import { Item } from '../../ui' + +export const generateMetadata = async (props: NamePageProps) => { + const result = await findRadar(props) + if (result === undefined) { + return + } + if (result.type === 'scope') { + const scope = result.data + if (scope === undefined || scope.radar === undefined) { + return + } + if (scope.radar.type === 'sectors' || scope.radar.type === 'scopes') { + return { + title: scope.radar.title, + } + } + } + if (result.type === 'item') { + return { + title: result.data.title, + } + } +} + +export const generateStaticParams = async () => { + const radar = await api.getRadar() + return getNames(radar).map((name) => ({ name })) +} + +const getNames = (radar: types.Radar): string[][] => { + if (radar.type === 'scopes') { + return radar.scopes.reduce( + (names, scope) => [ + ...names, + [scope.name], + ...getNames(scope.radar).map((names) => [scope.name, ...names]), + ], + [] as string[][], + ) + } + if (radar.type === 'sectors') { + return radar.items.map((item) => [item.name]) + } + return [] +} + +const findByName = ( + radar: types.Radar, + names: string[], +): + | undefined + | { type: 'scope'; data: types.Scope } + | { type: 'item'; data: types.Item } => { + if (radar.type === 'scopes') { + const scope = radar.scopes.find((scope) => names[0] === scope.name) + if (!scope) { + return + } + if (names.length > 1) { + return findByName(scope.radar, names.slice(1)) + } + return { + type: 'scope', + data: scope, + } + } + if (radar.type === 'sectors') { + if (names.length > 1) { + return + } + const item = radar.items.find((item) => names[0] === item.name) + if (!item) { + return + } + return { + type: 'item', + data: item, + } + } +} + +const findRadar = async ({ params }: NamePageProps) => { + return findByName( + await api.getRadar(), + params.name.map((name) => qs.parse(`name=${name}`).name) as string[], + ) +} + +interface NamePageProps { + params: { + name: string[] + } +} + +const NamePage = async (props: NamePageProps) => { + const result = await findRadar(props) + if (result === undefined) { + return notFound() + } + if (result.type === 'scope') { + const scope = result.data + if (scope === undefined || scope.radar === undefined) { + return notFound() + } + if (scope.radar.type === 'sectors') { + return ( + + ) + } + if (scope.radar.type === 'scopes') { + return ( + + ) + } + } + if (result.type === 'item') { + const item = result.data + return + } + return notFound() +} + +export default NamePage diff --git a/src/main/resources/webapp/src/app/globals.css b/src/main/resources/webapp/src/app/globals.css new file mode 100644 index 00000000..073c90fb --- /dev/null +++ b/src/main/resources/webapp/src/app/globals.css @@ -0,0 +1,107 @@ +:root { + --max-width: 1200px; + --border-radius: 12px; + --font-mono: ui-monospace, Menlo, Monaco, 'Cascadia Mono', 'Segoe UI Mono', + 'Roboto Mono', 'Oxygen Mono', 'Ubuntu Monospace', 'Source Code Pro', + 'Fira Mono', 'Droid Sans Mono', 'Courier New', monospace; + + --foreground-rgb: 0, 0, 0; + --background-start-rgb: 214, 219, 220; + --background-end-rgb: 255, 255, 255; + + --primary-glow: conic-gradient( + from 180deg at 50% 50%, + #16abff33 0deg, + #0885ff33 55deg, + #54d6ff33 120deg, + #0071ff33 160deg, + transparent 360deg + ); + --secondary-glow: radial-gradient( + rgba(255, 255, 255, 1), + rgba(255, 255, 255, 0) + ); + + --tile-start-rgb: 239, 245, 249; + --tile-end-rgb: 228, 232, 233; + --tile-border: conic-gradient( + #00000080, + #00000040, + #00000030, + #00000020, + #00000010, + #00000010, + #00000080 + ); + + --callout-rgb: 238, 240, 241; + --callout-border-rgb: 172, 175, 176; + --card-rgb: 180, 185, 188; + --card-border-rgb: 131, 134, 135; +} + +@media (prefers-color-scheme: dark) { + :root { + --foreground-rgb: 255, 255, 255; + --background-start-rgb: 0, 0, 0; + --background-end-rgb: 0, 0, 0; + + --primary-glow: radial-gradient(rgba(1, 65, 255, 0.4), rgba(1, 65, 255, 0)); + --secondary-glow: linear-gradient( + to bottom right, + rgba(1, 65, 255, 0), + rgba(1, 65, 255, 0), + rgba(1, 65, 255, 0.3) + ); + + --tile-start-rgb: 2, 13, 46; + --tile-end-rgb: 2, 5, 19; + --tile-border: conic-gradient( + #ffffff80, + #ffffff40, + #ffffff30, + #ffffff20, + #ffffff10, + #ffffff10, + #ffffff80 + ); + + --callout-rgb: 20, 20, 20; + --callout-border-rgb: 108, 108, 108; + --card-rgb: 100, 100, 100; + --card-border-rgb: 200, 200, 200; + } +} + +* { + box-sizing: border-box; + padding: 0; + margin: 0; +} + +html, +body { + max-width: 100vw; + overflow-x: hidden; +} + +body { + color: rgb(var(--foreground-rgb)); + background: linear-gradient( + to bottom, + transparent, + rgb(var(--background-end-rgb)) + ) + rgb(var(--background-start-rgb)); +} + +a { + color: inherit; + text-decoration: none; +} + +@media (prefers-color-scheme: dark) { + html { + color-scheme: dark; + } +} diff --git a/src/main/resources/webapp/src/app/layout.tsx b/src/main/resources/webapp/src/app/layout.tsx new file mode 100644 index 00000000..24e31439 --- /dev/null +++ b/src/main/resources/webapp/src/app/layout.tsx @@ -0,0 +1,15 @@ +import { ReactNode } from 'react' + +import { JetBrains_Mono } from 'next/font/google' + +import './globals.css' + +const roboto = JetBrains_Mono({ subsets: ['cyrillic'] }) + +const Layout = ({ children }: { children: ReactNode }) => ( + + {children} + +) + +export default Layout diff --git a/src/main/resources/webapp/src/app/page.tsx b/src/main/resources/webapp/src/app/page.tsx new file mode 100644 index 00000000..be92fd14 --- /dev/null +++ b/src/main/resources/webapp/src/app/page.tsx @@ -0,0 +1,26 @@ +import { api } from '@qiwi/tech-radar' + +import { notFound } from 'next/navigation' + +import { Scopes, Sectors } from '../ui' + +export const generateMetadata = async () => { + const radar = await api.getRadar() + return { + title: + radar.type === 'scopes' || radar.type === 'sectors' ? radar.title : '', + } +} + +const Home = async () => { + const radar = await api.getRadar() + if (radar.type === 'sectors') { + return + } + if (radar.type === 'scopes') { + return + } + return notFound() +} + +export default Home diff --git a/src/main/resources/webapp/src/ui/index.ts b/src/main/resources/webapp/src/ui/index.ts new file mode 100644 index 00000000..5c3a25cd --- /dev/null +++ b/src/main/resources/webapp/src/ui/index.ts @@ -0,0 +1,3 @@ +export * from './item' +export * from './scopes' +export * from './sectors' diff --git a/src/main/resources/webapp/src/ui/item/Item.tsx b/src/main/resources/webapp/src/ui/item/Item.tsx new file mode 100644 index 00000000..6ccab5c7 --- /dev/null +++ b/src/main/resources/webapp/src/ui/item/Item.tsx @@ -0,0 +1,20 @@ +import { types } from '@qiwi/tech-radar' + +import Link from 'next/link' + +import styles from './item.module.css' + +export interface ItemProps { + item: types.Item +} + +export const Item = ({ item }: ItemProps) => { + return ( +